我正在尝试在我的 AMD64 Ubuntu 操作系统上为 ARM64 平台构建一个 debian 软件包。我执行以下命令
debuild -us -uc --host-arch arm64
但收到警告
dpkg-architecture: warning: specified GNU system type aarch64-linux-gnu does not match CC system type x86_64-linux-gnu, try setting a correct CC environment variable
因此想知道如何设置 CC 环境变量,正如警告所建议的那样。对于我的目标操作系统,我通常会使用
/opt/l4t-gcc-toolchain-64-bit-32.1/install/bin/aarch64-linux-gnu-gcc
谢谢。
答案1
我不确定从长远来看缺少什么,因为 OP 没有提到有关目标包的任何信息,也不知道我这边是否有解决方案。很高兴听到您对类似案例的反馈。
该消息是关于 C 编译器 (CC) 环境变量不适用于所请求的目标体系结构。尝试一下,dpkg-cross
这可能会帮助您设置所有 ENV 变量。
debuild
是一个使用dpkg-buildpackage
安装
dpkg-cross
包sudo apt install dpkg-cross build-essential
在构建之前设置交叉编译配置变量和帮助标志
set CONFIG_SITE=/etc/dpkg-cross/cross-config.arm64 set DEB_BUILD_OPTIONS=nocheck
尝试再次构建
如果不起作用,请尝试通过debuild
的交叉编译选项dpkg-buildpackage
。所有步骤记录在Debian Wiki:使用 dpkg-buildpackage 进行构建。
笔记:
如果你正在构建自己的软件包,最好阅读如何使你的软件包 Debian 交叉编译友好:交叉构建友好包指南