【问题标题】:libpython2.7.a missing many referenceslibpython2.7.a 缺少许多引用
【发布时间】:2014-04-20 00:45:23
【问题描述】:

我正在尝试用-static 编译cython 模块,但是我收到很多关于libpython2.7.a 中缺少引用的错误。例如:

    /usr/lib/x86_64-linux-gnu/libpython2.7.a(complexobject.o): In function `_Py_c_pow':
    (.text.unlikely+0x507): undefined reference to `pow'

我已经安装了 build-essential 包,这是我在 Google 上找到的一种解决方案。

我的工作流程是:

cython --embed hi.py
gcc hi.c -lpython2.7 -I /usr/include/python2.7 -static

为了能够静态链接此文件,我缺少什么?

编辑:添加了额外的链接器选项 gcc hi.c -lpython2.7 -lm -pthread -lzlib -I /usr/include/python2.7 -static

所有对未定义函数的引用都消失了,但 ld 说它找不到 lzlib 所以编译仍然失败。如果没有-lzlib,我仍然会得到一些未定义的引用。

【问题讨论】:

    标签: python ubuntu gcc cython


    【解决方案1】:

    你的包管理器会告诉你,zlib 的库是libz.so,因此你必须通过-lz

    由问题所有者添加: 供其他人参考所需的所有链接器选项-lpython2.7 -lm -ldl -lutil -lz -pthread

    【讨论】:

      猜你喜欢
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-23
      • 2014-03-02
      • 2018-08-14
      • 1970-01-01
      相关资源
      最近更新 更多