10

我正在尝试浏览Firebreath 教程,但我无法让 Cmake 工作。Cmake 不会在Generators列表下注册任何版本的 Visual Studio。这是运行时的列表cmake --help

Generators

The following generators are available on this platform:
  Unix Makefiles              = Generates standard UNIX makefiles.
  Ninja                       = Generates build.ninja files (experimental).
  CodeBlocks - Ninja          = Generates CodeBlocks project files.
  CodeBlocks - Unix Makefiles = Generates CodeBlocks project files.
  Eclipse CDT4 - Ninja        = Generates Eclipse CDT 4.0 project files.
  Eclipse CDT4 - Unix Makefiles
                              = Generates Eclipse CDT 4.0 project files.
  KDevelop3                   = Generates KDevelop 3 project files.
  KDevelop3 - Unix Makefiles  = Generates KDevelop 3 project files.
  Sublime Text 2 - Ninja      = Generates Sublime Text 2 project files.
  Sublime Text 2 - Unix Makefiles
                              = Generates Sublime Text 2 project files.

我已经重新安装了 CMake,安装了 Visual Studios 2010 和 2012(Express 和 Professional 版本),甚至卸载并重新安装了 .NET 4.0 到 4.5(从这里开始)。它在我的个人计算机上运行良好,因为我第一次运行它。但是,我的工作笔记本电脑只是没有注册 Visual Studios。

我在 Windows 7 Enterprise SP1 上都运行它。任何帮助表示赞赏。

这是我得到的确切错误:

C:\code\tutorial2\TutorialTestPlugin>firebreath\prep2012.cmd . build
A subdirectory or file build already exists.
Using projects in: "C:\code\tutorial2\TutorialTestPlugin"
Generating build files in: "C:\code\tutorial2\TutorialTestPlugin\build"
NOTE: The build files in "C:\code\tutorial2\TutorialTestPlugin\build" should *NE
VER* be modified directly.
When needed, make project changes in cmake files and re-run this script.
  Project-specific cmake files are found in [plugin dir]\CMakeLists.txt and
  [plugin dir]\Win\projectDef.cmake.
Note that parameters for cmake should be enclosed in double quotes, e.g. "-DVERB
OSE=1"
CMAKE parameters:

C:\code\tutorial2\TutorialTestPlugin\build>cmake -G "Visual Studio 11" -DFB_PROJ
ECTS_DIR="C:\code\tutorial2\TutorialTestPlugin"  "C:\code\tutorial2\TutorialTest
Plugin\firebreath"
CMake Error: Could not create named generator Visual Studio 11
cygwin warning:
  MS-DOS style path detected: C:\code\tutorial2\TutorialTestPlugin\firebreath
  Preferred POSIX equivalent is: /cygdrive/c/code/tutorial2/TutorialTestPlugin/f
irebreath
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
4

1 回答 1

14

问题是您使用的是 cygwin 中包含的 cmake 而不是 windows 版本的 cmake。似乎当前的 cygwin 版本是在没有 Visual Studio 生成器的情况下编译的,而 Windows 版本有这些。

在您的情况下,让 Windows 使用 Windows 版本的 cmake 的一种简单方法是卸载 cygwin cmake,因为无论如何您似乎都不需要它。

另一种方法是调整系统路径,使 c:\cygwin\bin 在 C:\Program Files (x86)\CMake 2.8\bin 之后。

于 2013-11-13T22:16:48.750 回答