Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1069217
  • 博文数量: 264
  • 博客积分: 7225
  • 博客等级: 少将
  • 技术积分: 5096
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-17 08:53
文章分类

全部博文(264)

文章存档

2011年(33)

2010年(52)

2009年(152)

2008年(27)

我的朋友

分类: LINUX

2009-01-01 10:32:49

Linux下开发环境路径设置

注:本文系根据redream 11月7日发起的如何设置路径的讨论整理而成,
以icc等软件的安装设置为例对路径设置做了简要说明,结合uid为4151的一位网友的回复和
曾遇到过的一些情况做了一些补充。

Linux下的路径设置是以环境变量的形式出现的,
可分为全局路径和用户路径,
对于红帽系的linux,全局路径的设置通过在/etc/profile.d中增加一个sh文件即可实现,
全局路径设置后,所有用户均可在系统的任意位置使用全局变量中的定义,
而用户路径则是通过修改/home/username/.bash_profile来实现,
只有用户名为username的用户登录才能在任意目录使用相关文件。
通常设置的环境变量有表示命令路径的PATH,表示库文件路径的LD_LIBRARY_PATH和DYLD_LIBRARY_PATH,
以及表示帮助文件路径的MANPATH,
以icc为例,假设icc安装到/home/realasking/intel文件夹,
采用全局设置,我们可以增加一个icc.sh文件到/etc/profile.d中,
文件内容如下:
PATH=$PATH:/home/realasking/intel/icc/10.1.015/bin
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/realasking/intel/icc/10.1.015/lib
MANPATH=$MANPATH:/home/realasking/intel/icc/10.1.015/man
DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/home/realasking/intel/icc/10.1.015/lib
其中10.1.015是版本号。
如采用用户设置,则只要在/home/username/.bash_profile文件的最后添加这几行即可。
注意每一行的环境变量均在前面加$号,然后重复了一次,
这表示读出系统中已有的环境变量值,其后的:表示将后面的内容添加到已有的值之中,
如果定义时写成PATH=/home/realasking/intel/icc/10.1.015/bin
那系统能搜索的路径将只剩下icc的目录,很多命令都不能使用了,
因此$PATH:是必须添加的。
另外,在修改完这些文件之后,需要source /etc/profile.d/icc.sh,
这样才能使改动实时生效。
不过有的网友在这样操作后,
编译某些软件的时候还是会遇到找不到库文件的问题,
这个时候有一个办法,
可以先找到这个文件的安装位置,
假设是/opt/compiler/lib.so,
那么我们只需要在/usr/lib中建立一个链接即可,
做法是:
ln -s /usr/lib/lib.so /opt/compiler/lib.so
这已经可以解决大多数问题。
编译中还可能出现找不到头文件的问题,
最简单的做法是将已知的头文件拷贝到安装文件的源码目录,
当然也可以修改源代码的Makefile文件,
把路径改为绝对路径即可。

先写这么多,大家请多多补充,指教~
阅读(2164) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~