gpt4 book ai didi

c++ - ld:版本3无效(最大0)-添加符号错误:值错误

转载 作者:行者123 更新时间:2023-12-02 10:04:45 24 4
gpt4 key购买 nike

我正在使用g++ 9.2.1和binutils 2.34。我正在使用Linux内核5.4.23-1运行Manjaro 19.0.2。一切都出自我刚安装的Manjaro的全新安装,以为它可以解决问题。

在编译以下 super 简单程序时:

#include <iostream>

int main()
{
std::cout << "Hello" << std::endl;

return 0;
}

如果我运行 g++ main.cpp -o program,一切都很好,并且执行./program时会收到Hello。

但是,当我运行g++ main.cpp -o main.o时,它可以工作,但是当我运行g++ main.o -o程序时,出现以下错误:
/usr/bin/ld: main.o: _ZSt4cout: invalid version 3 (max 0)
/usr/bin/ld : main.o : error adding symbols: bad value
collect2: error: ld return 1 exit status

我完全不知道它可能来自哪里。

最佳答案

g++ main.cpp -o main.o不会产生可重定位的目标文件。输出是一个可执行文件。这样的文件不能用于进一步的链接。

要生成目标文件,请改用g++ -c main.cpp -o main.o-c标志指示GCC不要链接最终的可执行文件。

关于c++ - ld:版本3无效(最大0)-添加符号错误:值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60814225/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com