【发布时间】:2012-01-16 13:38:39
【问题描述】:
我之前做过几次,但不知何故这次我被卡住了。我有一个可执行文件“myapp”和一个自己的共享库“mylib”。在我的 cmakelists 中,我有以下内容:
ADD_LIBRARY(mylib SHARED ${SOURCES_LIB})
INSTALL(TARGETS mylib DESTINATION .)
ADD_EXECUTABLE(myapp ${SOURCES_APP})
TARGET_LINK_LIBRARIES(myapp ${QT_LIBRARIES} mylib)
INSTALL(TARGETS myapp DESTINATION .)
一切都正确编译和链接,但是当我启动 myapp 时,我收到以下错误:
error while loading shared libraries: libmylib.so: cannot open shared object file: No such file or directory
lib 和可执行文件存在于安装目录中。当我通过将上述 cmakelists 的第一行更改为:
ADD_LIBRARY(mylib STATIC ${SOURCES_LIB})
然后一切正常 100%。
有谁知道我做错了什么?
【问题讨论】:
标签: static cmake libraries shared