让我的程序在windows和linux上编译,我该怎么办?

时间:2011-09-07 17:15:30

标签: cmake

我正在使用CMake生成我的makefile和VC解决方案。我的程序在linux上运行就好了。我正在使用一堆库,例如Lua中。在我的Linux计算机上,我只是链接到它们,并确保包括标题。所有.so文件都在某个标准位置。在Windows上,虽然我不知道该怎么做。我应该将整个Lua项目包含到我自己的存储库中并链接到它吗?我是否将Lua安装到c:\ program files \ lua5.1这样的标准位置并链接到那个?还有别的吗?

2 个答案:

答案 0 :(得分:1)

你的图书馆可以在任何地方,你只需要说 - 他们在哪里。

在运行cmake之前,先用.bat文件设置所有extern库的pathes:

set LIBRARYPATH =path\to\your\library\
set include=%include%;%LIBRARYPATH%\include
set lib=%lib%;%LIBRARYPATH%\lib

启动cmd,运行此.bat,然后cmake应找到所有

答案 1 :(得分:1)

我将为ccmake提供用户可以或必须指定的配置字段/变量。

mark_as_advanced可用于使自定义变量仅出现在高级模式中。如果您有一个标准路径(因为您主要在Windows上),这将是合适的。然而,如果需要,它仍然允许用户指定值。

或者您可以使用'set'命令设置变量,如果您不希望它在高级中。

只需确保检查用户是否输入了有效值。