新手上路
- 积分
- 42
- 金钱
- 42
- 注册时间
- 2016-2-15
- 在线时间
- 8 小时
|
1、首先需要安装arm-linux-gcc,我安装的是arm-linux-gcc-4.3.2(1)、window下下载arm-linux-gcc-4.3.2 ( http://pan.baidu.com/s/1eSnWKHc 下载地址),通过samba(samba配置百度有教程)传到虚拟机的linux下。建议将安装包移动到 / (根目录下)(如果以及安装但是有问题需要重新安装,需要删除旧版本 rm -rf /opt/arm)
(2)、将arm-linux-gcc-4.3.2.tgz解压 命令:tar xvzf arm-linux-gcc-4.3.2.tgz -C /
(3)、3.执行命令:vi/etc/profile 在path murge的语句断后添加 pathmunge /usr/local/arm/4.3.2/bin
命令: pathmurge/usr/local/arm/4.3.2/bin
修改:# Path manipulation
if [ "$EUID" = "0" ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
pathmunge /usr/local/arm/4.3.2/bin (添加此行)
fi (4)、执行:# source /etc/profile
(5)、进入/usr/local/arm/4.3.2/bin目录,查看是否有该目录生成
命令 :cd /usr/local/arm/4.3.2/bin
(6)、将目录/usr/local/arm/4.3.2/bin添加到环境变量PATH中
修改/root/.bashrc
命令: #vi /root/.bashrc
修改下面
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
export PATH=$PATH:/usr/local/arm/4.3.2/bin
(7).先关闭终端再打开终端
命令:arm-
多按几下Table键
出现如下界面则成功
[root@localhost hugh]# arm-
arm-linux-addr2line arm-none-linux-gnueabi-addr2line
arm-linux-ar arm-none-linux-gnueabi-ar
arm-linux-as arm-none-linux-gnueabi-as
arm-linux-c++ arm-none-linux-gnueabi-c++
arm-linux-c++filt arm-none-linux-gnueabi-c++filt
arm-linux-cpp arm-none-linux-gnueabi-cpp
arm-linux-g++ arm-none-linux-gnueabi-g++
arm-linux-gcc arm-none-linux-gnueabi-gcc
arm-linux-gcc-4.3.2 arm-none-linux-gnueabi-gcc-4.3.2
arm-linux-gcov arm-none-linux-gnueabi-gcov
arm-linux-gdb arm-none-linux-gnueabi-gdb
(8)、安装完成后重新启动虚拟机
此时已经安装完成,但是编译汇编程序时,提示出错 GLIBCXX_3.4.9' not found
1、于是执行命令 strings /usr/lib/libstdc++.so.6 | grep GLIBC
返回结果GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBC_2.0
GLIBC_2.3
GLIBC_2.4
GLIBC_2.3.4
GLIBC_2.1
GLIBC_2.1.3
GLIBC_2.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
没有GLIBCXX_3.4.9
2、执行 ls -l /usr/lib/libstdc++.so.6
发现/usr/lib/libstdc++.so.6 -> /usr/lib/libstdc++.so.6.0.8
上网查找资料后发现这里需要使用libstdc++.so.6.0.10
下载这个文件后,然后删除软链接/usr/lib/libstdc++.so.6 -> /usr/lib/libstdc++.so.6.0.8,
命令 :rm -f /usr/lib/libstdc++.so.6
重新做 命令 ln -s /usr/lib/libstdc++.so.6.0.10 /usr/lib/libstdc++.so.6即可
此时编译汇编文件即可通过。。
|
-
|