Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.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
C++ “什么会导致?”;can';t链接到主可执行文件";共享图书馆?_C++_Macos_Linker - Fatal编程技术网

C++ “什么会导致?”;can';t链接到主可执行文件";共享图书馆?

C++ “什么会导致?”;can';t链接到主可执行文件";共享图书馆?,c++,macos,linker,C++,Macos,Linker,当我在编译时试图将预编译库链接到主文件时,会得到一个“无法链接到主可执行文件” hostname:folder user$ g++ -o add testadd.cc -ladd -lmultiply -L. ld: in ./libmultiply.dylib, can't link with a main executable collect2: ld returned 1 exit status hostname:folder user$ 以前编译过的lib(add和multiply)

当我在编译时试图将预编译库链接到主文件时,会得到一个“无法链接到主可执行文件”

hostname:folder user$ g++ -o add testadd.cc -ladd -lmultiply -L.
ld: in ./libmultiply.dylib, can't link with a main executable
collect2: ld returned 1 exit status
hostname:folder user$ 
以前编译过的lib(add和multiply)和都位于同一目录中

谁能给我一个提示是什么导致了这个错误

塔克斯


PS:OSX 10.6.4和g++-4.2.1看起来有人有过类似的问题:

看起来有人有过类似的问题:

我在周围摆弄了一下,显然我已经修复了它

在用编译共享库之前

g++ -o libmultiply.dylib libmultiply.cc -dynamiclib
并收到了提到的错误。现在我重新编译了lib,使用

g++ -o libmultiply.dylib libmultiply.cc -dynamiclib -undefined dynamic_lookup
现在它似乎起作用了。(至少是编译和链接。) 但是我仍然需要检查lib是否真的做了它所要做的事情

到目前为止,我不知道为什么现在的链接没有报告错误,但也许其他人可以通过这些信息来说明这一点。=)


就我的两个ct。

我拨弄了一下,显然我把它修好了

在用编译共享库之前

g++ -o libmultiply.dylib libmultiply.cc -dynamiclib
并收到了提到的错误。现在我重新编译了lib,使用

g++ -o libmultiply.dylib libmultiply.cc -dynamiclib -undefined dynamic_lookup
现在它似乎起作用了。(至少是编译和链接。) 但是我仍然需要检查lib是否真的做了它所要做的事情

到目前为止,我不知道为什么现在的链接没有报告错误,但也许其他人可以通过这些信息来说明这一点。=)

仅限我的2个ct。

供参考:

当使用编译器开关-dynamiclib时,会出现上述错误, 请尝试使用-dynamiclib-undefined dynamic_lookup进行编译

对我来说,这很有效。:)

供参考:

当使用编译器开关-dynamiclib时,会出现上述错误, 请尝试使用-dynamiclib-undefined dynamic_lookup进行编译


对我来说,这很有效。:)

请向我们展示您如何构建库—编译和链接命令。您是否在其中一个库中定义了main()函数?请向我们展示您如何构建库—编译和链接命令。您是否在其中一个库中定义了main()函数?