mac上编译 arm linux gnueabi交叉编译工具链toolchain

crosstool-ng 编译和安装
交叉编译工具下载:

git clone git@github.com:secularbird/crosstool-ng.git

切换到mac编译分支

git checkout origin/macporting -b macporting

该分支对编译中出现的一些编译error,进行了修正,并对mulitlib的编译进行了一定程度的修正编译和安装

cd crosstool-ng

指定安装路径(默认安装在/usr/local下).,和mac下的一些ports工具,如gobjcopy,这些可以通过mac-ports 安装

./bootstrap 
./configure --prefix=${install_path} --with-objcopy=/opt/local/bin/gobjcopy --with-objdump=/opt/local/bin/gobjdump --with-libtool=/opt/local/bin/glibtool --with-readelf=/opt/local/bin/greadelf --witibtoolize=/opt/local/bin/glibtoolize 
make
make install

使用crosstool-ng编译arm工具链

ct-ng menuconfig

由于mac有些限制,有些地方需要特别设定下具体步骤如下:make version 3.82在编译glibc时有问题,打开EXPERIMENTAL feature以便使用自带的make

Paths and misc options  ---> [*] Try features marked as EXPERIMENTAL

打开debug功能,以便可以进行单个step的编译,而不是每次都重新编译所有的

Paths and misc options  ---> [*] Debug crosstool-NG 
                                             ---> Debug crosstool-NG  
                                                     ---> gzip saved states (NEW)
Paths and misc options  ---> Maximum log level to see: (INFO)

根据自己的需要定制cpu

Target options  --->   Target Architecture (arm)
Target options  --->   (armv6k) Architecture level
Target options  --->   (arm1176jzf-s) Tune for CPU
Target options  --->   (vfp) Use specific FPU
Operating System  --->  Target OS (linux) 
Operating System  --->  Linux kernel version (2.6.32.60 (longterm))
C compiler  ---> C compiler (gcc) 
C compiler  ---> [*] Show Linaro versions
C compiler  ---> gcc version (linaro-4.6-2013.04)
C compiler  ---> [*] C++

apple gcc不支持静态链接,关闭静态链接

C compiler  ---> [ ] Link libstdc++ statically into the gcc binary

这里使用glibc 2.13

C-library  --->  C library (glib) 
C-library  --->  glibc version (2.13)

使用4.3.2的GMP,5.0+的存在编译问题

Companion libraries  ---> GMP version (4.3.2)

编译自定义的make,

Companion tools  --->  [*] Build some companion tools 
Companion tools  --->  [*]   make

Esc Esc 保存并退出设定界面编译工具链

ct-ng build

编译完成后,工具链默认存放在在~/x-tools/下原文链接: https://www.cnblogs.com/zelos/p/3163205.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/93955

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月10日 上午2:24
下一篇 2023年2月10日 上午2:24

相关推荐