最佳答案
我有一个小项目与 Makefile,我试图转换到 CMake,主要是为了获得经验与 CMake。对于这个示例,项目包含一个源文件(C + + ,尽管我不认为该语言是特别相关的)和一个静态库文件,我已经从其他地方复制了这个文件。出于参数的考虑,假设库的源代码不可用; 我只有。一个文件和相应的头。
My handmade Makefile contains this build rule:
main: main.o libbingitup.a
g++ -o main main.o libbingitup.a
效果不错。我怎么告诉 CMake 复制这个?当然,不是字面上的这个 makefile,而是包含一个等效的链接命令。我试过很明显但很天真的方法
add_executable(main main.cpp libbingitup.a)
或者
add_executable(main main.cpp)
target_link_libraries(main libbingitup.a)
以及各种与 link_directories(.)
或 add_library(bingitup STATIC IMPORTED)
等,但没有到目前为止,导致一个成功的连锁。我应该做什么?
版本详细信息: Linux 上的 CMake 2.8.7(Kubuntu 12.04)和 GCC 4.6.3