ほとんどの場合、CMake の経験を積むためだけに、CMake に変換しようとしている Makefile を含む小さなプロジェクトがあります。この例では、プロジェクトにはソース ファイル (C++ ですが、言語は特に関係ないと思います) と、別の場所からコピーした静的ライブラリ ファイルが含まれています。議論のために、ライブラリのソース コードが利用できないと仮定します。.a ファイルと対応するヘッダーしかありません。
私の手作りの Makefile には、次のビルド ルールが含まれています。
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(.)
orなどのさまざまなことも同様add_library(bingitup STATIC IMPORTED)
ですが、これまでのところ、リンクが成功するものはありません。私は何をすべきですか?
バージョンの詳細: GCC 4.6.3 を使用する Linux (Kubuntu 12.04) 上の CMake 2.8.7