Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/142.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ld:找不到-lgcc_ext.10.5的库 我试图编译一个基本的C++程序,当我尝试从MAC终端(107.6)运行它时,我得到了这个消息: ld: library not found for -lgcc_ext.10.5 collect2: error: ld returned 1 exit status_C++_Gcc - Fatal编程技术网

ld:找不到-lgcc_ext.10.5的库 我试图编译一个基本的C++程序,当我尝试从MAC终端(107.6)运行它时,我得到了这个消息: ld: library not found for -lgcc_ext.10.5 collect2: error: ld returned 1 exit status

ld:找不到-lgcc_ext.10.5的库 我试图编译一个基本的C++程序,当我尝试从MAC终端(107.6)运行它时,我得到了这个消息: ld: library not found for -lgcc_ext.10.5 collect2: error: ld returned 1 exit status,c++,gcc,C++,Gcc,我肯定在正确的目录中,并且安装了XCode命令行工具。这是我的命令提示符: g++ -o chapter_2 hello_world.cpp 这是我的基本C++程序。 #include <iostream> using namespace std; int main(){ cout << "Hello world" << endl; } #包括 使用名称空间std; int main(){ cout我不是mac迷,但我认识到问题是链接器找不到库

我肯定在正确的目录中,并且安装了XCode命令行工具。这是我的命令提示符:

g++ -o chapter_2 hello_world.cpp

这是我的基本C++程序。

#include <iostream>

using namespace std;

int main(){

  cout << "Hello world" << endl;

}
#包括
使用名称空间std;
int main(){

cout我不是mac迷,但我认识到问题是链接器找不到库(libgcc_ext.10.5)因为您的开发环境设置不正确。我希望它位于/usr/lib或/usr/local/lib或类似的位置。您可以尝试执行
ld--help
,看看是否可以找到链接器搜索路径是如何指定的。(ld是进行链接的程序,编译完成后g++会调用它。)然后在您的计算机上找到库并将该路径添加到ld搜索路径。

正如Judd指出的,问题是链接器找不到libgcc_ext.10.5。虽然我没有一个理想的解决方案,但对我有效的方法是使用新的gcc安装gcc-4.8

brew install gcc48

我相信现在甚至还有gcc49。使用它,我可以毫无问题地编译(不过请注意,我必须在控制台中使用
$gcc-4.8…
,因为
$gcc…
仍然指向较旧的gcc版本(除非您明确更改该版本).

我在OS X 10.8上遇到了同样的问题,当前的XCode和gcc都是由自制软件安装的

当我检查
$g++
时,它给出了
/usr/local/bin/g++

因此,我在
.bash\u profile
中对该路径进行了注释:

#PATH="/usr/local/bin:${PATH}"

现在
$g++
给出的
/usr/bin/g++
及其版本表明它来自XCode,并且没有
ld:library not found for-lgcc_ext.10.5
错误。

系统上是否存在libgcc_ext.10.5.*我遇到了类似的问题,这对我有效。请记住在.bash_配置文件中取消注释该行r你完成了,否则你将无法访问你用自制软件安装的任何东西。为我工作。C编译问题永远不会过时。你可以通过了解C编译器而不是编写C代码谋生:(