【问题标题】:As a project user, what do I need to do to make a project with Cmake?作为项目用户,我需要做什么才能使用 Cmake 制作项目?
【发布时间】:2015-06-06 20:51:40
【问题描述】:

我正在处理一个 [曾经] 支持 Autotools 和 Cmake 的项目。过去,我会:

cd project/build
...
../llvm/configure --enable-optimized --enable-cxx11 $OTHER_OPTIONS --prefix=/usr/local
make -j2
sudo make install

该项目已经放弃了对 Autotools 的支持,所以我现在必须使用 Cmake。使用 Cmake 进行配置似乎应该相对容易。

不幸的是,Mac OS X 缺少 Cmake 的手册页,所以我不能 RTFM。我发现的搜索结果讨论了如何构建 Cmake 包(以及包维护者会做的其他事情),而不是如何将其用作愚蠢的项目用户。

我尝试简单地使用 Cmake 代替 Configure,但它不起作用:

$ cd project/build
$ OTHER_OPTIONS=" --enable-libcpp"; cmake ../llvm --enable-optimized --enable-cxx11 "$OTHER_OPTIONS" --prefix=/usr/local
CMake Error: The source directory ".../clang-3.6/build/--prefix=/usr/local" does not exist.

为什么 Cmake 将配置选项视为目录 (--prefix=/usr/local)?

我如何配置和构建一个使用 Cmake 作为哑项目用户的项目?

【问题讨论】:

    标签: configuration cmake


    【解决方案1】:

    您正在尝试像配置自动工具一样配置 CMake 项目。该命令的语法是;

    cmake -Doptions -Dmore_options src_dir
    

    src 目录是最后一个参数,这就是它以这种方式处理 --prefix 的原因。不过,您需要知道可用参数的名称。如果您是 CMake 新手,最好的办法是运行 Qt gui 或 curses gui( ccmake /path/to/src 而你在构建目录中)。这些 gui 工具将让您选择选项,配置然后生成。然后你只需要输入 make ....

    注意

    cmake --help
    

    即使您的手册页没有安装,它也会提供信息。此外,如果您可以访问谷歌和互联网,搜索“cmake 手册页”应该可以让您访问您丢失的手册页。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-03
      • 2019-02-26
      • 2021-07-22
      • 2019-03-11
      • 2016-11-03
      • 2012-07-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多