libpython2.7.a缺less许多引用

我试图用-static编译一个cython模块,但是我在libpython2.7.a得到了很多关于缺less引用的错误。 例如:

  /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上find的一个解决scheme。

我的工作stream程是:

 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我仍然得到一些未定义的引用。

当你的软件包管理器会显示你时,zlib的库是libz.so ,因此你必须传递-lz

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