2010-08-27 98 views
4

我使用CMAKE为需要构建的库创建Visual Studios C++项目,然后使用VC++构建库。然而,现在是为cygwin重建相同的库的时候了,以便我可以通过GNU工具链(g ++ make gdb)链接到它。我一直在试图弄清楚如何配置CMAKE来为cygwin构建,但我并没有走得太远。我检查了CMAKE网站的帮助(我将继续在那里搜索),但我几乎没有掌握CMAKE的真实含义,所以我无法找到答案。任何人都可以将我指向更好的方向吗? (谢谢,全部)用于cygwin的CMAKE构建

回答

6

CMake是一个构建系统。它的目的是让你编写一个单一的跨平台的构建描述,然后它从该构建设置创建平台特定的构建文件(比如GNU工具链的makefile)。为了使它在Cygwin下工作,只需安装Cygwin的cmake软件包(使用Cygwin的setup.exe),然后运行与以下类似的命令即可:(因为您将为Cygwin运行CMake,所以您不需要做任何事情来为GNU工具链配置它)。

mkdir my-project-build 
cd my-project-build 
cmake /path/to/my-project 
make 
+2

请务必为您的g ++和visual studio构建使用单独的构建目录。另外一个方便的提示是,如果您使用代码块生成器,则可以使用qtcreator进行编辑和编译。 – RobertJMaynard 2010-08-27 16:49:59

+0

这听起来很有希望,但运行cmake后,我收到以下错误: CMake错误/usr/share/cmake2.6.4/Modules/CMakeTestCCompiler.cmake:32(MESSAGE): C编译器“/ usr/bin/gcc.exe“不能编译一个简单的测试程序。它失败,出现以下输出:更改目录:/ cygdrive/c/tmp/HyDE_Source/build/CMakeFiles/CMakeTmp 此错误消息没有意义,“哪个gcc”提供了预期结果,并且我可以编译并运行一个基本的helloWorld.c我会保持这个更新,因为我了解更多。谢谢! – JnBrymn 2010-08-27 17:48:50

+1

看起来cmake在输入或写入测试c文件到该目录时遇到用户权限问题。我也会推荐升级到CMake 2.8 – RobertJMaynard 2010-08-27 18:13:06