我正在尝试交叉编译最新的 pycurl 包,但该问题也可能适用于早期版本。我的谷歌搜索显示这个包不太适合交叉编译。
首先,我使用buildroot和buildroot工具链(uclibc最新版本)进行交叉编译。
该包使用 gentargets 来构建,因为它不是为自动目标编写的。构建命令只需调用 setup.py:
define PYCURL_BUILD_CMDS
(cd $(@D);\
CC="$(TARGET_CC)"\
LD="$(TARGET_LD)"\
$(HOST_DIR)/usr/bin/python setup.py build\
--curl-config=$(STAGING_DIR)/usr/bin/curl-config)
endef
问题是,在构建目标文件后,构建脚本决定使用目标编译器中的主机编译器:
构建目标文件:
/media/N/svn_main/buildroot/output/host/usr/bin/ccache/media/N/svn_main/buildroot/output/host/usr/bin/x86_64-unknown-linux-uclibc-gcc -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I/media/N/svn_main/buildroot/output/host/usr/x86_64 -unknown-linux-uclibc/sysroot/usr/include -I/media/N/svn_main/buildroot/output/host/usr/x86_64-unknown-linux-uclibc/sysroot/lib -fPIC -DPYCURL_VERSION="7.19.5.1"-DHAVE_CURL_OPENSSL=1 -DHAVE_CURL_SSL=1 -I/media/N/svn_main/buildroot/output/host/usr/include/python2.7 -c src/stringcompat.c -o build/temp.linux-x86_64-2.7/src/stringcompat.o
链接库: /media/N/svn_main/buildroot/output/host/usr/bin/ccache /usr/bin/gcc -pthread -shared -L/media/N/svn_main/buildroot/output/host/usr/x86_64-unknown-linux-uclibc/sysroot/-L/media/N/svn_main/buildroot/output/host/usr/x86_64-unknown-linux-uclibc/sysroot/lib --sysroot=/media/N/svn_main/buildroot/output/host/usr/x86_64-unknown-linux-uclibc/sysroot build/temp.linux-x86_64-2.7/src/docstrings.o build/temp.linux-x86_64-2.7/src/easy.o build/temp.linux-x86_64-2.7/src/module.o build/temp.linux- x86_64-2.7/src/multi.o build/temp.linux-x86_64-2.7/src/oscompat.o build/temp.linux-x86_64-2.7/src/pythoncompat.o build/temp.linux-x86_64-2.7/src/share.o build/temp.linux-x86_64-2.7/src/stringcompat.o build/temp.linux-x8 6_64-2.7/src/threadsupport.o -L/media/N/svn_main/buildroot/output/host/usr/x86_64-unknown-linux-uclibc/sysroot/usr/lib -lcurl -lcrypto -o build/lib.linux-x86_64-2.7/pycurl.so
如果您曾经交叉编译过这个包或者对我面临的问题有任何想法,我将不胜感激。
最佳答案
您应该使用 python-package 基础结构在 Buildroot 中打包 pycurl。它将使用 pycurl 源中提供的基于 distutils 的 setup.py。
关于linux - 交叉编译pycurl-7.19.5.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32720463/