ubuntu14.10 怎么设置交叉编译器的环境变量

lr2131 2015-03-23 02:50:25
之前在网上找个一些帖子,确认有多种方法,但似乎没解决我的问题。

我的系统是ubuntu14.10 64位的。
我在/etc/profile 中加了export PATH=$PATH:/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin

rk3288@ubuntu:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin

可以看得出,在普通用户模式下是没问题的,编译代码确实也可以。

root@ubuntu:~# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

但是在root下却不行,不知道为什么。

怎么样设置,才能让交叉编译器的环境变量设置在各个模式下都生效。
...全文
757 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
lr2131 2016-01-20
  • 打赏
  • 举报
回复
引用 12 楼 qq_27725389 的回复:
哪个有64位机的arm交叉编译器
64位?感觉你问的问题都是个问题。 你是需要64位的编译环境,还是要编译出64位ARM程序的编译器。 如果是64位的编译环境,装个64位的ubuntu不就完了吗,现在做ARM开发,几乎都是应该用64位的linux系统做编译环境。 毕竟64位可以兼容32,但反过来就不行。 如果是需要编译出64位arm程序的编译器,那你的ARM是v8的吗?搞v8的一般是消费类的,安卓系统那些。 原厂应该会把相应的编译环境搭建文档给你。
qq_27725389 2016-01-17
  • 打赏
  • 举报
回复
哪个有64位机的arm交叉编译器
lr2131 2015-03-25
  • 打赏
  • 举报
回复
引用 9 楼 Hacker_NO_1 的回复:
我在我电脑上试了一下,发现用户模式下的/etc./profile 和root模式的/etc/profile竟然不同,你应该是在root模式修改过你普通用户模式下/etc/profile文件的访问权限,这样导致在root模式下不能起作用(具体什么原因我也不大清楚).直接root模式在/etc/profile添加路径,我测试后这样是可以的。相反,在普通用户模式下添加路径就会出现你遇到的问题,我玩linux时间也不长,你自己多动手实践验证下
我把/etc/env.....下面还原了,在sudo -s模式下把/etc/profile中加上了交叉编译器路径,发现在普通用户模式下是有用的,但是root下不行。重启过发现还是这样。算了,就这样吧。
lr2131 2015-03-24
  • 打赏
  • 举报
回复
引用 9 楼 Hacker_NO_1 的回复:
我在我电脑上试了一下,发现用户模式下的/etc./profile 和root模式的/etc/profile竟然不同,你应该是在root模式修改过你普通用户模式下/etc/profile文件的访问权限,这样导致在root模式下不能起作用(具体什么原因我也不大清楚).直接root模式在/etc/profile添加路径,我测试后这样是可以的。相反,在普通用户模式下添加路径就会出现你遇到的问题,我玩linux时间也不长,你自己多动手实践验证下
你说的有可能哦,明天上班我再试试。
Hacker_NO_1 2015-03-24
  • 打赏
  • 举报
回复
我在我电脑上试了一下,发现用户模式下的/etc./profile 和root模式的/etc/profile竟然不同,你应该是在root模式修改过你普通用户模式下/etc/profile文件的访问权限,这样导致在root模式下不能起作用(具体什么原因我也不大清楚).直接root模式在/etc/profile添加路径,我测试后这样是可以的。相反,在普通用户模式下添加路径就会出现你遇到的问题,我玩linux时间也不长,你自己多动手实践验证下
zhxianbin 2015-03-24
  • 打赏
  • 举报
回复
没必要 root 的地方就不要使用 root
lr2131 2015-03-24
  • 打赏
  • 举报
回复
引用 6 楼 Hacker_NO_1 的回复:
命令'export'只能改变当前终端及以后运行的终端里的变量。对于已经运行的终端没有作用。 为 了将目录永久添加到$PATH ,只要将'export'的那行添加到您的'.bash_profile'文件中. #vi ~/.bash_profile
没看明白,你什么设置的,你是说把export单独放一行,类似这样的吗: PATH=$PATH:/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin export PATH
Hacker_NO_1 2015-03-23
  • 打赏
  • 举报
回复
命令'export'只能改变当前终端及以后运行的终端里的变量。对于已经运行的终端没有作用。 为 了将目录永久添加到$PATH ,只要将'export'的那行添加到您的'.bash_profile'文件中. #vi ~/.bash_profile
Hacker_NO_1 2015-03-23
  • 打赏
  • 举报
回复
为神马我的可以,普通用户模式下在/etc/profile 添加pathmunge xxxx,在root模式也可以
lr2131 2015-03-23
  • 打赏
  • 举报
回复
再不行,我就在启动脚本里面加source xxx 算了
lr2131 2015-03-23
  • 打赏
  • 举报
回复
引用 1 楼 Hacker_NO_1 的回复:
修改了/etc/profile 后执行source /etc/profile命令,让修改立即生效,这样在各个模式下就都可以了吧
其实我现在也就是这样干的,换成修改/etc/env....,也是一样,不是全部都生效,每次都要source
lr2131 2015-03-23
  • 打赏
  • 举报
回复
引用 1 楼 Hacker_NO_1 的回复:
修改了/etc/profile 后执行source /etc/profile命令,让修改立即生效,这样在各个模式下就都可以了吧
我知道,这样的话,每次都需要手动source下
Hacker_NO_1 2015-03-23
  • 打赏
  • 举报
回复
修改了/etc/profile 后执行source /etc/profile命令,让修改立即生效,这样在各个模式下就都可以了吧

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧