我们正在尝试在 Linux 上将MITK库与 Qt 一起使用。
不幸的是,MITK 没有安装功能,它还依赖于 ITK 和 VTK。所以我们最终得到了分散在许多目录中的头文件。
我们想在环境变量中指定要添加到包含路径中的目录列表,如下所示:INCPATH+=$MITK_INCLUDE_PATH。但这似乎不起作用。
我们怎样才能做到这一点?有没有更好的办法?
我们正在尝试在 Linux 上将MITK库与 Qt 一起使用。
不幸的是,MITK 没有安装功能,它还依赖于 ITK 和 VTK。所以我们最终得到了分散在许多目录中的头文件。
我们想在环境变量中指定要添加到包含路径中的目录列表,如下所示:INCPATH+=$MITK_INCLUDE_PATH。但这似乎不起作用。
我们怎样才能做到这一点?有没有更好的办法?
刚刚自己找到了解决方案。虽然我给了 Aidos 和 cjhuit 一个分数,因为他们的回答让我走上了正轨,并为我节省了宝贵的时间。特别感谢 qmake 文档的链接。
第一点是我应该修改 .pro 文件,而不是摆弄扩展的构建参数。
要在处理 qmake 时获取环境变量的内容,应使用以下语法
INCLUDEPATH += $$(MITK_INCLUDE_PATH)
请注意,要在处理 make 时获取环境变量的内容,应使用以下语法
INCLUDEPATH += $(MITK_INCLUDE_PATH)
但是如果环境变量包含多个路径,这将不会产生相同的效果。那么第一种形式是优选的。
环境变量中的路径必须用空格分隔,因为 ; 不被识别。
如果路径包含空格,请在其周围加上引号。引号之间出现的空格将被替换为“\”。
您是否尝试过添加:
INCLUDEPATH += <the path to the MITK headers>
在您项目的 .pro 文件中?
并且可能您还需要编辑 LIBS 和 DEPENDPATH。
请参阅QMake 手册
我认为有一种更清洁的方法可以做到这一点,但我不记得了。无论如何,您可以使用该system
指令:
INCLUDEPATH += $$system( echo $MITK_INCLUDE_PATH )
您可能还想将其添加到依赖路径:
DEPENDPATH += $$system( echo $MITK_INCLUDE_PATH )
我不知道,但也许你可以试着写
INCPATH+=%MITK_INCLUDE_PATH%
在windows中,一般是这样的..
但我没有尝试。