x64架构Ubuntu下为64位ARM A-53交叉编译PTPD2的配置问题
PTPD 64位ARM架构交叉编译配置方案
你之前使用的--target参数是编译交叉工具链时才需要指定的参数,编译普通应用程序进行交叉编译需要使用--host参数,同时需要显式声明交叉编译器路径,正确配置步骤如下:
- 先安装交叉编译基础依赖(若已安装可跳过)
sudo apt update sudo apt install libc6-dev-arm64-cross libpcap-dev:arm64
- 执行正确的configure配置命令
./configure --host=aarch64-linux-gnu \ CC=aarch64-linux-gnu-gcc \ CXX=aarch64-linux-gnu-g++ \ AR=aarch64-linux-gnu-ar \ RANLIB=aarch64-linux-gnu-ranlib \ --prefix=/opt/ptpd-aarch64
参数说明:
- --host:指定编译生成的二进制文件运行的目标平台,是Autotools体系下交叉编译的核心参数
- CC/CXX/AR/RANLIB:显式指定对应架构的编译工具,避免configure自动调用宿主机x86架构的编译工具
- --prefix:指定后续执行make install时输出文件的存放目录,方便后续打包移植到ARM设备
- 配置完成后先检查configure的终端输出,确认Host类型已识别为aarch64-linux-gnu、C编译器路径为你安装的
aarch64-linux-gnu-gcc,确认无误后执行编译安装即可:
make -j$(nproc) make install
编译完成后,所有生成的文件都会存放在你指定的/opt/ptpd-aarch64目录下,直接拷贝到ARM设备对应路径即可运行。
内容的提问来源于stack exchange,提问作者Pirowe
相关产品推荐
相关产品推荐

