【问题标题】:Link library in ParaView plugin CMakeLists.txtParaView 插件 CMakeLists.txt 中的链接库
【发布时间】:2016-06-28 13:24:37
【问题描述】:

最近我一直在尝试为 ParaView 编写一个插件,但在尝试链接外部库时遇到了问题。首先,我必须说编译运行良好,但在运行时出现错误,说可怕的话:“符号查找错误..未定义的符号”。

在我加载到 ParaView 的文件上使用 ldd 时,没有列出此插件所需的 vxl 库文件。 ParaView 有它自己在 CmakeLists.txt 文件中定义插件的奇怪方式,这就是为什么我很难找到有关如何正确链接该库的信息的原因。

我的 CMakeLists.txt 现在如下所示:

cmake_minimum_required(VERSION 2.8)
IF (ParaView_SOURCE_DIR)
  INCLUDE_DIRECTORIES(
    ${VTK_INCLUDE_DIRS}
  )
ELSE (ParaView_SOURCE_DIR)
  FIND_PACKAGE(ParaView REQUIRED)
  INCLUDE(${PARAVIEW_USE_FILE})
ENDIF (ParaView_SOURCE_DIR)

FIND_PACKAGE(VXL)

IF(VXL_FOUND)
  INCLUDE(${VXL_CMAKE_DIR}/UseVXL.cmake)
ENDIF(VXL_FOUND)

INCLUDE_DIRECTORIES(${VXLCORE_INCLUDE_DIR})

ADD_PARAVIEW_PLUGIN(Main "0.0"
  SERVER_MANAGER_XML Main.xml
SERVER_MANAGER_SOURCES Main.cxx LSModelFit.cxx 
)

【问题讨论】:

    标签: c++ cmake paraview


    【解决方案1】:

    这不是很明显,但您应该可以将一个库添加到add_paraview_plugin 定义的Main 目标

    target_link_libraries(Main vxl)

    或任何库名称。

    【讨论】:

    • 我现在找到了它,但对于任何想知道的人来说,这正是解决它的方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-24
    • 1970-01-01
    • 1970-01-01
    • 2016-07-25
    • 2014-03-10
    相关资源
    最近更新 更多