CentOS下安装Ice-3.5.1

来源:互联网 发布:linux删除空行 编辑:程序博客网 时间:2024/06/10 23:25

设置Linux环境变量

功能说明:设置或显示环境变量。
语  法:export [-fnp][变量名称]=[变量设置值]
补充说明:在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。
参  数:
 -f  代表[变量名称]中为函数名称。
 -n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
 -p  列出所有的shell赋予程序的环境变量。

要想永久生效,需要系统环境变量文件。有两个文件可 选:“/etc/profile”和用户主目录下的“.bash_profile”,“/etc/profile”对系统里所有用户都有效,用户主目录下 的“.bash_profile”只对这个用户有效。
修改profile文件:
export PATH=”$PATH:/opt/Ice-3.5.1/bin
后两种方法一般需要重新注销系统才能生效,最后可以通过echo命令测试一下。

Linux共享库路径配置

默认的linux共享库搜索路径为/lib和/usr/lib两个目录(不包含子目录),若共享库不在这两个路径(最典型的就是/usr/local/lib),不能被自动动态链接到,解决方法有四种:
*1,链接时使用静态库(.a文件)。在g++命令上写入该.a文件的完整路径。
2,修改LD_LIBRARY_PATH环境变量。
3,将库文件复制到可以搜索到的路径里面,这样比较狠,但是可能导致一些后即问题。
4,添加搜索路径,使用ldconfig命令(下面详细介绍)。

添加搜索路径方法步骤

1,先到官网下载对应的源码版本编译安装软件包(make install)。
2,使用locate命令找到该库的被默认安装的路径,使用方法是先用updatedb更新一下locate命令的索引库,然后“locate libnet.so”查找就可以了,在这里我发现,自动编译安装的库文件被放在了/usr/local/lib目录。
3,修改/etc/ld.so.conf,添加路径。在CentOS 6.3下我看到这个文件实际上是包含了/etc/ld.so.conf.d/这个目录下的所有.conf文件,因此我们可以在这个路径下面创建一个新的文件,其中写上诸如“/usr/local/lib”、“/usr/local/mysql/lib”的路径,保存退出。
4,切记一定要主动执行命令:ldconfig,它会更新记录了系统中有哪些so文件的缓存文件(/etc /ld.so.cache)

gcc 编译器命令

gcc 在编译时寻找所需要的头文件 :搜寻会从-I开始

c++ -I/opt/Ice-3.5.1/include -I../ice -c Printer.cpp Server.cpp

gcc 在链接时寻找所需要的库文件 :搜寻会从-L开始

c++ -o server Printer.o Server.o  -L/opt/Ice-3.5.1/lib -lIce -lIceUtil
0 0
原创粉丝点击