交叉编译器环境相关问题(持续性更新)_linux

一、   修改环境配置文件指令:     如果你下载了,环境没设置,照样找不到

    ①用户级:只影响当前用户。每次启动新的Bash shell时,会运行这个文件。

vi ~/.bashrc

    ②系统级:是一个系统级的配置文件,它会影响所有用户。用户登录系统时,系统都会运行这个文件。


sudo vi /etc/profile

二、保存修改环境配置文件指令: 你修改了 不保存 也没用,注意你重启后就失效了,需要再source下哦


source ~/.bashrc


三、配置文件修改指令:   按照你安装的来哦  一般都在opt下:

export LD_LIBRARY_PATH=/opt//sysroots/aarch64-poky-linux/usr/lib:$LD_LIBRARY_PATH

   修改格式:export LD_LIBRARY_PATH=lib的路径:$LD_LIBRARY_PATH


四、查看是否配置成功:  检验手段


echo $LD_LIBRARY_PATH


五、which g++-aarch64-linux-gnu没有反应,但是我已经安装了

      第一种原因:平台命名差异, Yocto 项目中,交叉编译器通常命名为 aarch64-poky-linux-g++ 。

      第二种原因:就是你没有将其路径未添加到环境变量PATH中,因此which命令无法找到它。有的时候你查版本也是需要加入到环境变量的哦


六、为啥要进行上述一到五?:不然你每次开机后,都要用下面代码设置下环境。{一到五其实就是一个 自动source的脚本}

ource /opt/ReMi/remi_sdk/environment*


七、两种环境变量区分


echo $PATH  

echo $LD_LIBRARY_PATH
  • PATH:编译和构建过程中,系统会优先使用指定目录中的工具和可执行文件,如交叉编译器,强调工具:
  • LD_LIBRARY_PATH:环境变量用于指定动态链接库的搜索路径。运行时链接器会根据 $LD_LIBRARY_PATH 中定义的目录顺序搜索需要加载的共享库(即 .so 文件),强调说明书。


八、快速设置方法

echo 'export LD_PRELOAD=//v4l1compat.so' >> ~/.bashrc



九、设置自动运行:你只需要将脚本.sh的路径放在里面,每次启动就会自动运行啦



十、问题:无法让别的环境有效,除非取消这个环境变量设置。那就取消呗.

交叉编译器环境相关问题(持续性更新)_linux_02