【问题标题】:CMake compile -s -mt version of rabbitmq-cCMake compile -s -mt 版本的rabbitmq -c
【发布时间】:2016-11-25 12:19:28
【问题描述】:

我在命令提示符下运行 cmake:

mkdir build && cd build
.. cmake

但是现在,我在构建构建 realease static 的命令时遇到问题。 我试过了:

C:\Users\Kuba\Downloads\rabbitmq-c>cmake --build  build --BUILD_STATIC_LIBS=ON

产生错误:

Unknown argument --BUILD_STATIC_LIBS=ON

如何纠正这个问题?谢谢!

【问题讨论】:

  • 您也可以使用 cmake-gui 在 GUI 中设置这些变量。您可能需要删除构建文件夹并重试。由于您的上一条评论中有问题。 ALL_BUILD 应始终存在于 Visual Studio CMake 生成的项目中。
  • @drescherjm 谢谢,我会试试

标签: c++ cmake rabbitmq rabbitmq-c


【解决方案1】:

您应该使用-D 选项定义变量:

cmake --build  build -DBUILD_STATIC_LIBS=ON

read the documentation了解更多信息。

【讨论】:

  • 要产生任何效果,必须在生成时指定,而不是在构建时指定。
  • 现在我尝试: C:\Users\Kuba\Downloads\rabbitmq-c\build>cmake --build 。 Microsoft (R) Build Engine 版本 14.0.25420.1 版权所有 (C) Microsoft Corporation。版权所有。 MSBUILD:错误 MSB1009:项目文件不存在。开关:ALL_BUILD.vcxproj
【解决方案2】:

配置构建与构建它是一个单独的步骤。

从源目录创建一个二进制目录:

mkdir build && cd build

然后配置构建(这是您可以添加其他构建标志的地方):

cmake -DBUILD_STATIC_LIBS=ON ..

然后构建它:

cmake --build .

【讨论】:

  • @alanxyz 我在版本“-s-mt”中编译 rabbit-c,现在当我尝试使用包装器 SimpleAmqpClient 进行静态编译时,我在链接 c 库时遇到了一些错误,你能帮帮我吗?我不知道...pastebin.com/DqNiaUVz
  • @JakubJańczak-Zarycki - SimpleAmqpClient 目前无法在 Win32 上静态构建。
  • @alanxyz ,未来?
  • @JakubJańczak-Zarycki 也许吧。
猜你喜欢
  • 1970-01-01
  • 2011-08-26
  • 2011-11-27
  • 1970-01-01
  • 2010-10-17
  • 2022-12-21
  • 1970-01-01
  • 1970-01-01
  • 2012-01-17
相关资源
最近更新 更多