我在使用模块的 HPC 系统上使用 CMake。这些模块通常设置LIBRARY_PATH
and CPATH
因此,人们可以简单地包含标头并链接到库,而无需额外的操作-L
or -I
.
但是,当使用 CMake 时,CMake 必须找到这些库。我希望,那LIBRARY_PATH
and CPATH
由 CMake 自动考虑并在例如中捕获CMAKE_SYSTEM_LIBRARY_PATH
and CMAKE_SYSTEM_INCLUDE_PATH
但他们不是。
这样做(不)有什么理由吗?
附加不是一个好主意(现在手动,稍后由 CMake 自动)LIBRARY_PATH
to CMAKE_SYSTEM_LIBRARY_PATH
and CPATH
to CMAKE_SYSTEM_INCLUDE_PATH
?
这样做(不)有什么理由吗?
附加不是一个好主意(现在手动,稍后由 CMake 自动)LIBRARY_PATH
to CMAKE_SYSTEM_LIBRARY_PATH
and CPATH
to CMAKE_SYSTEM_INCLUDE_PATH
?
还有另一种观点认为,让构建依赖于环境变量会导致构建不可靠。来自 GNU Make 手册:
makefile 的功能依赖于其控制范围之外的环境变量设置是不明智的,因为这会导致不同的用户从同一 makefile 中获得不同的结果。这违背了大多数 makefile 的全部目的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)