0

これは、C++ プログラム内から SimpleITK を使用しているすべての人への質問です。

SimpleITK コードをダウンロードし、SimpleITK の.sln指示 (Superbuild) に従って CMake を使用して VS2008 ファイルを生成しました。

で、SimpleITK-build\lib\Debugいくつかの SimpleITK ライブラリを取得しますSimpleITKCommon-0.8.libSimpleITK-build\ITK-build\lib\Debug私は多くの ITK ライブラリを取得します。ITKCommon-4.5.lib

コードでは、次を使用します。#include "SimpleITK.h"

質問: 何にリンクすればよいですか?

linker/input/additional dependenciesすべての SimpleITK ライブラリに 1 つずつ追加できます。次にunresolved external symbols、ITK ライブラリにリンクしていないため、取得します (50 ほどあります)。追加の依存関係に 50 ~ 60 のライブラリを追加する必要があるとは信じられません。

ここで何が欠けていますか?C++ からの SimpleITK へのリンクに関するドキュメントが見つかりません。

感謝と乾杯

アリ

4

1 に答える 1

3

CMake を使用することをお勧めします。手動で行う場合、これらすべてのライブラリを追加する必要があることは正しいです。

SimpleITK/Examples/CMakeLists.txt ファイルから、CMake を使用してプロジェクトを作成する方法を次に示します。

find_package(SimpleITK REQUIRED)
include(${SimpleITK_USE_FILE})

# Add compiler flags needed to use SimpleITK.
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SimpleITK_REQUIRED_C_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SimpleITK_REQUIRED_CXX_FLAGS}")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${SimpleITK_REQUIRED_LINK_FLAGS}")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${SimpleITK_REQUIRED_LINK_FLAGS}")
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${SimpleITK_REQUIRED_LINK_FLAGS}")

add_executable ( SimpleGaussian SimpleGaussian.cxx )
target_link_libraries ( SimpleGaussian ${SimpleITK_LIBRARIES} )
于 2014-09-19T13:29:01.413 に答える