我有一个静态库libmylib,依赖于数学库。CMake:使用gcc正确链接系统库
如果我第一个链接mylib中的数学,然后到我的可执行程序,它的工作原理:
add_executable(myapp main.c)
target_link_libraries(mylib m)
target_link_libraries(myapp mylib)
但是,如果我做了与它直接使用gcc失败时可执行文件链接
(铿锵它的作品!)add_executable(myapp main.c)
target_link_libraries(myapp m mylib)
为什么这有什么区别?
我认为无论如何不可能将库链接在一起?
我认为你是对的 - gcc似乎在链接期间放弃库,如果它们没有在二进制之后提供。 如果我将命令更改为'target_link_libraries(myapp mylib m)',它可以工作! – mirkokiefer 2013-03-03 14:16:54
您是否在clang中使用make VERBOSE = 1? – 2013-03-03 18:11:06
是的,我试了一下 - 看到我的答案。谢谢你的帮助! – mirkokiefer 2013-03-03 20:05:20