私はうるう動作のmakefileからcmakelistファイルを作成しようとしています。特定のディレクトリでコンパイルできます。私は/ include /と/ lib/x64/directoriesをコピーする必要があります。私は次のようにcmakelistファイルを構築しようとしていCMAKEListの跳躍の動き
LEAP_LIBRARY := ./lib/x64/libLeap.so -Wl,-rpath,./lib/x64
Sample: Sample.cpp
$(CXX) -Wall -g -I include Sample.cpp -o Sample $(LEAP_LIBRARY)
::メイクファイルは以下です
cmake_minimum_required(VERSION 2.8)
project(Sample)
INCLUDE_DIRECTORIES(/include/)
LINK_DIRECTORIES(/lib/x64/)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -g -I /include/ -Wl,-rpath,./lib/x64")
add_executable(Sample Sample.cpp)
target_link_libraries(Sample libLeap.so)
しかし、私はいつも同じエラーを取得:
Linking CXX executable Sample
/usr/bin/ld: can't find -lLeap
collect2: error: ld returned 1 exit status
make[2]: *** [Sample] Error 1
make[1]: *** [CMakeFiles/Sample.dir/all] Error 2
make: *** [all] Error 2
おかげで、よろしく。
ライブラリへのフルパス*を知っているなら、* target_link_libraries *呼び出しでそれを使用してください: 'target_link_libraries(Sample /lib/x64/libLeap.so)'。このコマンドについては、[documentation](https://cmake.org/cmake/help/v3.5/command/target_link_libraries.html)も参照してください。 * CMAKE_CXX_FLAGS *変数のすべてを列挙しないでください。 '-I/include'指示文はすでに' include_directories'コマンドに変換されています。 RPATHディレクティブについては、[CMAKE RPATH handling wiki](https://cmake.org/Wiki/CMake_RPATH_handling)を参照してください。 – Tsyvarev
ご協力ありがとうございます。解決済み。 – user3704922