我目前正在将我的一个项目更改为可移植的 cmake。在项目目录中,我有一个文件夹,其中包含一个名为"boclib"的外部库,该库由常规 makefile 构建。我需要将我的可执行文件链接到"ProjectDir"/boclib/bin/libboc.a。我目前的尝试如下所示:
FIND_LIBRARY(BOCLIB boc ${PROJECT_BINARY_DIR}/boclib/bin)
Message(${BOCLIB})
TARGET_LINK_LIBRARIES(prod ${BOCLIB})
Meassage 输出产生正确的库:
"AbsulutePathToProjectDir"/boclib/bin/libboc.a
链接时输出:
g++ -lm -ldl CMakeFiles/prod.dir/src/BocData.cpp.o CMakeFiles/prod.dir/src/delay.cpp.o CMakeFiles/prod.dir/src/leoni.cpp.o CMakeFiles/prod.dir/src/main.cpp.o CMakeFiles/prod.dir/src/scope.cpp.o CMakeFiles/prod.dir/src/SerialCom.cpp.o CMakeFiles/prod.dir/src/tester.cpp.o CMakeFiles/prod.dir/src/Utils.cpp.o -o prod boclib/bin/libboc.a -lboost_program_options -lboost_system -lboost_filesystem -lboost_serialization -lboc
boclib 没有-L 选项。我究竟做错了什么?
任何帮助将不胜感激。