【问题标题】:Building Apache QPID on Windows missing setup.py在 Windows 上构建 Apache QPID 缺少 setup.py
【发布时间】:2012-10-23 07:48:42
【问题描述】:

我是 Apache Qpid、Cmake 和 Python 的新手。我已经在 Debian 上成功构建了 Qpid 并运行了一些测试。我现在正在尝试在 Windows 上构建 Qpid,以便我可以编写 C# 客户端,但似乎有些问题。当我运行 cmake 命令时,它最终会给我以下输出:

Please wait while cmake processes CMakeLists.txt files....

C:/Program Files (x86)/Python330/python.exe: can't open file 'setup.py': [Errno 2] No such file or directory

Variable Name: BUILD_ACL 
Description: Build ACL enforcement broker plugin
Current Value: ON
New Value (Enter to keep current value):

我试图了解 setup.py 应该何时生成/下载。我找不到它,也找不到任何描述它应该何时生成或安装的文档。另外,有点跑题了,为什么 cmake 进程开始提示我输入 BUILD_ACL 和其他配置?

我使用以下命令为 VS 2008 和 2010 运行了 cmake,并且都产生了相同的输出:

cmake -i -G "Visual Studio 9 2008" .
cmake -i -G "Visual Studio 2010" .

我正在使用来自 Apache 的以下文件来构建 Qpid: qpid-cpp-0.18.tar.gz

从上面的日志语句可以看出,我使用的是 Python 3.3.0。

我了解 setup.py 是 Python 用于安装组件的文件。似乎 cmake 脚本正在尝试根据我通过搜索 setup.py 找到的 cmake 脚本的一部分在测试目录中安装一些东西。我认为这要么是在 Qpid tarball 中提供,要么是作为这个 cmake 过程的一部分生成的。

话虽如此,我最终还是按住了 enter 键,接受了 cmake 的所有默认值,它生成了解决方案文件和项目文件。我能够在 VS2008 中打开生成的 Qpid 解决方案并构建一些项目。那么,这就提出了一个问题,为什么需要 setup.py?

【问题讨论】:

    标签: c# python windows apache qpid


    【解决方案1】:

    在 users@qpid.apache.org 询问 Qpid 用户问题时,得到了很好的回应 qpid 开发人员对邮件列表的响应相当迅速。

    cmake -i 进行交互式配置。这就是它要求所有变量值的原因。没有-icmake 使用默认值。可以对系统应为“n”的变量回答“y”,从而生成无法正常工作的构建环境。尝试不使用 -i 以开始操作。

    使用两个不同的生成器在同一目录中运行两次 cmake 通常是一种不好的做法。在您的情况下,它将为 VS2008 生成一个 .sln 文件和 .vcproj 文件,并将生成一个 .sln 文件和 .vcxproj 文件用于 VS2010。如果您进行源内构建,文件可能看起来相同,但实际上并非如此。在您运行两个 cmake 命令后,文件将继续保持相同的外观。

    再次解压源代码压缩包并尝试使用源外构建的cmake

    mkdir b32-vs2010
    cd b32-vs2010
    cmake -G "Visual Studio 2010" ..\qpidc-0.18
    

    目录b32-vs2010 将包含您的 2010 解决方案和项目文件,以及所有生成的源文件。它使源目录保持干净并且没有生成的文件。

    这应该在没有关于 setup.py 的投诉的情况下运行。如果您仍然遇到问题,请利用用户邮件列表。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-23
      • 1970-01-01
      • 1970-01-01
      • 2014-01-30
      • 2015-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多