.deb 是 ubuntu 、debian 的格式; ;.rpm 是 redhat 、fedora 、suse 的格式。它们不通用。
yum
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum的一切配置信息都储存在一个叫yum.conf的配置文件中,通常位于/etc目 录下。
yum install 软件包 //下载并安装指定的软件包
yum search 关键字 //搜索匹配的安装包
apt-get
apt-get install 软件包 //下载并安装指定的软件包,如 apt-get install codeblocks
源码安装
GNU项目的程序,安装起来是很有规律的。
1. ./configure
是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。
有一些软件还可以加上 –with、–enable、–without、–disable 等等参数对编译加以控制,你可以通过允许 ./configure –help 察看详细的说明帮助。
2. make
是用来编译的,它从Makefile中读取指令,然后编译。
如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。
3. make install
是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
这一步一般需要你有 root 权限(因为要向系统写入文件)。
4. make clean
删除临时文件。
1. ./configure
是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。
有一些软件还可以加上 –with、–enable、–without、–disable 等等参数对编译加以控制,你可以通过允许 ./configure –help 察看详细的说明帮助。
2. make
是用来编译的,它从Makefile中读取指令,然后编译。
如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行),然后你可以向开发者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系统少了一些依赖库等,这些需要自己仔细研究错误代码。
3. make install
是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
这一步一般需要你有 root 权限(因为要向系统写入文件)。
4. make clean
删除临时文件。
环境变量
echo PATH//查看当前的环境变量exportPATH=PATH:XXX/bin/ //增加环境变量
export PATH=PATH1:PATH2:PARH3:etc //修改环境变量
在命令行中运行export指令所做的修改,只对该用户的当前会话有效。若想永久有效,需要编辑 /etc/profile ,在最后加上一行export PATH=$PATH:XXX/bin/,保存退出。 为了立即生效,再执行 source /etc/profile即可。
export PATH=PATH1:PATH2:PARH3:etc //修改环境变量
在命令行中运行export指令所做的修改,只对该用户的当前会话有效。若想永久有效,需要编辑 /etc/profile ,在最后加上一行export PATH=$PATH:XXX/bin/,保存退出。 为了立即生效,再执行 source /etc/profile即可。
静态、动态链接
动态链接库的好处在于,一旦动态库中的函数发生变化,对于可执行程序来说是透明的,可执行程序无需重新编译。这对于程序的发布、维护、更新起到了积极的作用。对于静态链接的程序来说,函数库中一个小小的改动需要整个程序的重新编译、发布,对于程序的维护产生了比较大的工作量。
动态链接库为so文件,通常程序引用的是一个符号链接,它又指向真正的so文件。