aarch64 gcc 10.3.1 源码编译 qemu-4.2.0

yum install -y  flex
yum install -y  bison
yum install -y  texinfo
yum install -y  perl-podlators
yum install -y  kernel
yum install -y  chrpath
yum install -y  gettext
yum install -y  python-sphinx
yum install -y  zlib-devel
yum install -y  gtk3-devel
yum install -y  gnutls-devel
yum install -y  numactl-devel
yum install -y  device-mapper-multipath-devel
yum install -y  rdma-core-devel
yum install -y  libcap-devel
yum install -y  libcap-ng-devel
yum install -y  cyrus-sasl-devel
yum install -y  libaio-devel
yum install -y  usbredir-devel >= 0.5.2
yum install -y  libseccomp-devel >= 2.3.0
yum install -y  systemd-devel
yum install -y  libiscsi-devel
yum install -y  snappy-devel
yum install -y  lzo-devel
yum install -y  ncurses-devel
yum install -y  libattr-devel
yum install -y  libcurl-devel
yum install -y  libjpeg-devel
yum install -y  libpng-devel
yum install -y  brlapi-devel
yum install -y  pixman-devel
yum install -y  libusbx-devel
yum install -y  bzip2-devel
yum install -y  libepoxy-devel
yum install -y  libtasn1-devel
yum install -y  libxml2-devel
yum install -y  libudev-devel
yum install -y  pam-devel
yum install -y  perl-Test-Harness
yum install -y  python3-devel
yum install -y  librbd-devel
yum install -y  krb5-devel
yum install -y  libssh-devel
yum install -y  glib2
yum install -y  libfdt-devel
yum install -y  virglrenderer-devel

export CFLAGS="-fPIE -DPIE -fPIC -Wno-array-bounds"
export LDFLAGS="-Wl,--build-id -pie -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack"


./configure \
    --prefix=/usr/local   \
    --target-list=aarch64-softmmu     \
    --extra-cflags="-fPIE -DPIE -fPIC"    \
    --extra-ldflags="-Wl,--build-id -pie -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack" \
    --python=/usr/bin/python3 \
    --disable-strip \
    --disable-slirp  \
    --enable-gtk \
    --enable-docs \
    --enable-guest-agent \
    --enable-pie \
    --enable-numa \
    --enable-mpath \
    --disable-libnfs \
    --disable-bzip2 \
    --enable-kvm \
    --enable-tcg \
    --enable-rdma \
    --enable-linux-aio \
    --enable-cap-ng \
    --enable-vhost-user \
    --enable-modules \
    --enable-libssh \
    --enable-fdt \
    --enable-virglrenderer \
    --enable-cap-ng \
    --enable-libusb \
    --disable-bluez \
    --disable-dmg \
    --disable-qcow1 \
    --disable-vdi \
    --disable-vvfat \
    --disable-qed \
    --disable-parallels \
    --disable-sheepdog \
    --disable-capstone \
    --disable-smartcard
    
    
numactl -N 0-3 make -j64    

make install
 

<think>好的,我现在需要解决用户关于在aarch64架构下缺失aarch64-linux-gnu-gcc编译器的问题。首先,我得回忆一下之前学过的相关知识和处理类似问题的经验。 用户提到他们参考了引用[1]中的步骤,但可能遇到了问题,或者需要更详细的指导。我需要先理解引用中的内容。根据描述,步骤包括修改/etc/profile文件,添加PATH环境变量,然后source使配置生效,最后验证安装。但用户可能没有正确安装交叉编译器,或者路径配置有问题。 接下来,我应该考虑用户的具体情况。他们可能是在x86_64的主机上尝试为aarch64架构交叉编译程序,但发现缺少对应的编译器。常见的解决方案包括通过包管理器安装预编译的交叉编译器,或者从源码编译。不同的Linux发行版有不同的包管理工具,比如Debian/Ubuntu用apt,CentOS/Fedora用yum或dnf。 我需要分步骤说明如何安装。首先检查是否已安装,使用命令`aarch64-linux-gnu-gcc -v`,如果找不到命令,说明需要安装。然后根据不同的系统推荐相应的安装命令。例如,Ubuntu下安装gcc-aarch64-linux-gnu,CentOS下安装交叉编译器包。如果包管理器中没有,可能需要从ARM官网下载工具链,并设置环境变量,如引用[1]所述。 另外,用户可能遇到路径配置的问题,安装后编译器不在PATH中,需要手动添加,或者需要source配置文件。还可能存在版本兼容性问题,需要确认安装的编译器版本是否支持目标架构。 最后,生成相关问题,帮助用户进一步解决可能遇到的后续问题,比如验证安装、交叉编译示例、处理动态链接库缺失等。</think>### 解决aarch64架构缺失aarch64-linux-gnu-gcc编译器的方案 #### 1. 确认系统架构与需求 首先需要明确当前系统架构(使用`uname -m`命令)和编译目标架构。若要在x86_64主机上为aarch64架构交叉编译程序,需安装对应的交叉编译器工具链[^1]。 #### 2. 通过包管理器安装(推荐) 不同Linux发行版安装命令如下: - **Ubuntu/Debian**: ```bash sudo apt update sudo apt install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu ``` - **CentOS/RHEL**: ```bash sudo yum install gcc-aarch64-linux-gnu ``` #### 3. 验证安装结果 安装完成后执行: ```bash aarch64-linux-gnu-gcc -v ``` 若显示版本信息(如gcc version 9.x.x),则表示安装成功。 #### 4. 手动安装工具链(备用方案) 若包管理器不可用,可从ARM官方下载工具链: ```bash wget https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz tar -xf gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz echo "export PATH=$PATH:$(pwd)/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin" >> ~/.bashrc source ~/.bashrc ``` #### 5. 环境变量配置要点 - 路径添加位置:建议优先修改用户级配置文件(如`~/.bashrc`) - 路径优先级:交叉编译工具链路径应置于系统路径之前 - 配置生效:执行`source ~/.bashrc`或重新登录终端
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值