赞
踩
软件编译过程中用到指定路径的头文件、链接指定路径的库,软件运行过程中需要在该指定路径下寻找相应资源。如gcc指定在/usr/include目录查找头文件,binutils中提供的ld命令从/lib、/usr/lib、LD_LIBRARY_PATH、/etc/ld.so.conf等指定路径进行共享库和静态库连接。交叉编译时需要在本地系统进行编译,而编译出的软件在目标系统运行,这就存在编译时指定的路径和运行时的路径不一致的矛盾。DESTDIR和sysroot配合用于解决这个问题。
1、sysroot用于交叉编译工具的制作
sysroot仅在交叉编译工具链用到的工具中使用,如binutils、gcc。
2、DESTDIR、prefix用于目标系统软件的安装
DESTDIR添加在prefix前,指定软件的安装位置。
3、关于prefix在交叉编译工具制作中的说明
交叉编译工具制作中,在配置时应用的prefix选项是指定生成的交叉编译工具安装在本机的路径,于后序使用交叉编译工具编辑目标系统的软件的安装路径无关。
本文在阅读clfs、孙海勇《手把手教你制作自己的Linux系统》以及网络上相关文献的基础上写出。未完,待完善。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。