【问题标题】:Where do I find my -I/usr/local directory?我在哪里可以找到我的 -I/usr/local 目录?
【发布时间】:2013-05-06 12:34:01
【问题描述】:

我正在尝试运行此代码示例以在 Ubuntu 12.04 上测试 swig。我的系统上安装了 python 2.7.3。此代码似乎适用于联网机器。如何找到我的 python 的安装位置以及我应该用什么替换这些目录路径?

cc -c example.c example_wrap.c \
-I/usr/local/include/python1.5 \
-I/usr/local/lib/python1.5/config

【问题讨论】:

    标签: python ubuntu swig filepath


    【解决方案1】:

    您可以用python-config --includes 替换这些行,它会自动为编译器和您安装的python 版本创建正确的语句。 python-config 本身是通过python-dev 安装的,如果您还没有安装它,您将需要它。

    所以在命令行调用编译器:

    cc -c example.c example_wrap.c $(python-config --cflags) -fPIC
    

    还有,python1.5?你在哪里找到这个例子的?

    【讨论】:

    • 谢谢。这是 1998 年的 swig 教程。实际上我已经替换了 python-dev 工具,但示例中的地址中仍然没有 python.h。现在我也收到以下错误:example_wrap.c:2952:21:致命错误:headers.h:没有此类文件或目录编译终止。
    • swig.org/tutorial.html 有一个稍微更新的教程。仍然是 python2.1 ;) 使用我稍微编辑过的命令行,那里的示例对我有用。如果你想和python的c-code交互,也可以看看cffi.readthedocs.org/en/latest/index.html
    • 非常感谢。 :) 这对我来说很好。实际上我正在尝试这样做:stackoverflow.com/questions/16504795/… 我想将 C++ 库与 Python 集成。关于如何完成的任何想法?
    【解决方案2】:

    /usr/local 是任何 Posix 操作系统的标准,请参阅Filesystem Hierarchy Standard (FHS)。你用apt-get得到你需要的python版本(我认为命令是sudo apt-get install python1.5但我现在不在ubuntu系统上所以我不能尝试),它会把它放在标准的地方,很可能是/usr/local

    要回答您问题的另一部分,您可以使用which python 找到您的python 的安装位置。 python 可能是指向python2.7 的符号链接,因此您可能必须显式运行python1.5,如果已安装,您可以使用which python1.5 找到它。

    Python 1.5 是一个非常非常古老的 Python 版本。您从哪里获得代码示例?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-01
      • 1970-01-01
      • 2013-12-29
      • 2014-07-16
      • 2012-05-30
      • 2013-07-13
      • 2012-06-05
      • 2011-04-24
      相关资源
      最近更新 更多