linux - 交叉编译pycurl-7.19.5.1

标签 linux cross-platform cross-compiling pycurl buildroot

我正在尝试交叉编译最新的 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/

相关文章:

linux - 如何打包供 Linux 使用的 Haskell 项目

linux - 我的模式匹配出了什么问题?

linux - 在系统启动时启动的文件中的日期函数 - bash

security - 移动应用程序的基于 Web 或 SOAP 的集成

android - Calabash-android执行iphone模拟器

c++ - 在 C++ 中实现计时器/自动收报机类需要帮助

linux - 为 Raspberry Pi 交叉编译 Linux 内核

c++ - 什么是工具链和交叉编译器?

带有 shell 脚本的 Java

c++ - 将 bash 脚本的输出返回到调用 C++ 函数