私は非常に単純ですCMakeLists.txt
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
FIND_PACKAGE(VTK REQUIRED)
PROJECT(test CXX)
それは本当に何もしません。パッケージVTKは。の下に正しくあります/usr/lib/vtk-5.8/VTKConfig.cmake
。このファイルには、次のタイプのステートメントが多数含まれています
ADD_LIBRARY(foobar SHARED IMPORTED)
共有ライブラリlibfoobar.so
を実行可能ファイルにリンクする必要があることを示します。
ただし、上記のスクリプトを使用してMakefileを作成すると、CMakeは次のように文句を言います。
CMake Warning (dev) at /usr/lib/vtk-5.8/VTKTargets.cmake:244 (ADD_LIBRARY):
ADD_LIBRARY called with SHARED option but the target platform does not
support dynamic linking. Building a STATIC library instead. This may lead
to problems.
Call Stack (most recent call first):
/usr/lib/vtk-5.8/VTKConfig.cmake:200 (INCLUDE)
/usr/share/cmake-2.8/Modules/FindVTK.cmake:73 (FIND_PACKAGE)
CMakeLists.txt:4 (FIND_PACKAGE)
This warning is for project developers. Use -Wno-dev to suppress it
この警告は何を意味し、どのように対処されますか?
これはCMake2.8.9を搭載したLinuxシステムです。このエラーメッセージは、を含むすべてのパッケージに表示されますがADD_LIBRARY(foobar SHARED IMPORTED)
、ここでは例としてVTK-5.8を使用しています。