Cmake 如何为CustusX运行IDE设置以进行插件开发?

Cmake 如何为CustusX运行IDE设置以进行插件开发?,cmake,Cmake,我从主页上下载,并试着遵循。(最后一个命令是/cxInstaller.py--full--all-t RelWithDebInfo。这在Kubuntu 14.04上进行得很顺利 现在,所有的东西都已签出并在硬盘上可用,我尝试设置一个项目,这样我就可以在IDE中进行一些调试,例如qtcreator或eclipse。我搜索了文档,但没有在那里找到它 我尝试将cmake gui指向/[…]/custusx/CX/CX,选择Eclipse CDT4-Ninja并尝试进行配置。但它失败了,因为它找不到Fi

我从主页上下载,并试着遵循。(最后一个命令是
/cxInstaller.py--full--all-t RelWithDebInfo
。这在Kubuntu 14.04上进行得很顺利

现在,所有的东西都已签出并在硬盘上可用,我尝试设置一个项目,这样我就可以在IDE中进行一些调试,例如qtcreator或eclipse。我搜索了文档,但没有在那里找到它

我尝试将cmake gui指向/[…]/custusx/CX/CX,选择Eclipse CDT4-Ninja并尝试进行配置。但它失败了,因为它找不到FindEigen.cmake:

CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
  Could NOT find Eigen (missing: EIGEN_INCLUDE_DIR EIGEN_VERSION_OK)
  (Required is at least version "2.91.0")
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/findpackagehandlestandardardargs.cmake:315(_FPHSA_FAILURE_MESSAGE) CMake/FindEigen.CMake:76(查找包、手柄、标准参数) CMake/cxInitializeLibraries.CMake:273(查找包) source/CMakeLists.txt:11(cx\u initialize\u Eigen)`

我看到cmake目录中有一个
FindEigen.cmake
,但是设置
cmake\u模块\u路径也没有帮助

QtCreator也无法工作,因为当指向位于
custusx/CX/CX


因此,问题是如何在IDE Creator或eclipse中获得用于开发custusx插件的运行设置?

custusx是使用superbuild
cxInstaller.py来配置的。作为此构建的一部分,使用以下参数调用cmake:

cmake参数源文件夹

位于生成文件夹
/home/cas/cx/cx/build\u Release
中时的示例:

cmake-G“Eclipse CDT4-Ninja”-DCMAKE\u BUILD\u TYPE:STRING=Release-DEIGEN\u INCLUDE\u DIR:PATH=/home/cas/cx/eigen/eigen-DCTK\u DIR:PATH=/home/cas/cx/CTK/BUILD\u Release-DOpenCV\u DIR:PATH=/home/cas/cx/OpenCV/BUILD\u Release…省略更多参数…/home/cas/cx/cx/cx

通过查看
cxsinstaller.py
的控制台输出,可以在标题
==configure CustusX==
下找到此命令。超级构建运行一次后,您就可以开始使用cmake guiQtCreatorEclipse

使用cmake gui时,将“在何处生成二进制文件”设置到生成文件夹。这将自动导致加载现有的cmake配置。在您的情况下,cmake gui可能尝试从头开始配置,没有参数

使用QtCreator时,首先打开根CustusX
CMakeLists.txt
文件。这将引导您进入“配置项目”页面。必须手动添加cmake配置:设置生成文件夹的位置,然后进行配置,但配置失败。然后,在“项目->生成设置->cmake参数”中,粘贴superbuild(
cxInstaller.py
)发送给cmake的所有参数,即cmake命令行,不包括cmake和源文件夹。如果使用ninja,您可能还需要配置它

QtCreator的当前版本(3.0.1,Ubuntu 14.04)似乎没有读取项目的cmake配置,需要上述过程。Ubuntu 12.04附带的版本不需要这样做


当使用Eclipse时,使用“导入”,然后使用“常规->将现有项目导入工作区”,选择CX作为根目录,此时CustusX应显示为可直接导入的项目(注意:如果先前使用QtCreator配置,Eclipse项目文件将被删除。请再次运行superbuild)如何在Ubuntu14.04上为CustusX设置QtCreator 3.0.1(其他版本的QtCreator不需要):

获取CMake参数(具有最小输出):

在输出中搜索(长)行,以
cmake
开始,以
…cx/cx/cx
结束


粘贴在Projt>Bug设置中的这些参数> > CaseTrime< /P>我想创建一个CuStuxx标签,但是我没有足够的声誉。我认为这只是一个与这个软件包相关的问题,所以我很欣赏这样一个标签(这是按照这个思路:添加评论并请求创建)。似乎作者的意图是在这里提问(从他们的“在上发布问题,使用custusx标签”)关于QtCreator设置:如何检索superbuild应用的命令行参数序列?我已将此添加到我的答案中:查看

cxInstaller.py
的控制台输出。必须确保将相同(或否)-t参数传递给cxInstaller(在我的例子中是-t RelWithDebInfo)否则,可能会发生相应的库尚未提前构建的情况。此外,可以在qtcreator再次添加这些参数时操作参数的-G部分。是的,我同意,我正在更新我的帖子以匹配您的原始参数。我的回答还假设您已先安装其他库。
./install/cxInstaller.py --configure -t RelWithDebInfo CustusX