linux 源码包解压编译安装

解包      tar -jxvf

  如 :tar -jxvf  源代码包名.tar.bz2   -C  解压存放的目录路径  

   //解压系统应用程序存放的目录一般放在/usr/src/软件名-版本号/

配置     ./configure 

使用源码目录中的 configure 脚本   即先需要切换到源码所在的目录       ./configure  --prefix=软件安装目录   如果没有设置任何配置选项,  安装一般情况 默认的目录为:/usr/local    ,如安装valgrind

/usr/local/bin valgrind相关可执行程序
/usr/local/include/valgrind
/usr/local/lib/valgrind
/usr/local/libexec/valgrind

执行configure,生成Makefile文件(在解压的目录路径)

编译   执行 make 命令   

此时make会读取Makefile文件,将源码编译成二进制文件(如目标文件、可执行文件),并存放在当前目录下(在解压的目录路径)。另外make clean 为清除上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件

安装      执行 make install 命令 

  将编译成功的可执行文件安装到系统目录中即是第二步骤中配置 的prefix=软件安装目录

延伸:

1.解压或者压缩用到tar 命令

下面的参数是根据需要在压缩或解压档案时可选的:

-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出 

-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

以上5个是独立的命令,压缩解压都要用到其中1个

-f: 使用档案名字,这个参数要放在最后,后面只能接档案名(文件名)

2.Makefile

Makefile 文件描述了整个工程的编译、连接等规则。其中包括:工程中的哪些源文件需要编译以及如何编译、需要创建哪些库文件以及如何创建这些库文件、如何最后产生我们想要的可执行文件。尽管看起来可能是很复杂的事情,但是为工程编写Makefile 的好处是能够使用一行命令来完成“自动化编译”,一旦提供一个(通常对于一个工程来说会是多个)正确的 Makefile。编译整个工程你所要做的事就是在shell 提示符下输入make命令。整个工程完全自动编译,极大提高了效率。

目录

/bin

存放二进制可执行文件(ls,cat,mkdir等),常用命令一般都在这里。

/etc

存放系统管理和配置文件

/home

存放所有用户文件的根目录,是用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示

/usr

用于存放系统应用程序,比较重要的目/usr/local 本地系统管理员软件安装目录(安装系统级的应用)。这是最庞大的目录,要用到的应用程序和文件几乎都在这个目录。

/usr/x11r6 存放x window的目录

/usr/bin 众多的应用程序  

/usr/sbin 超级用户的一些管理程序  

/usr/doc linux文档  

/usr/include linux下开发和编译应用程序所需要的头文件  

/usr/lib 常用的动态链接库和软件包的配置文件  

/usr/man 帮助文档  

/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里  

/usr/local/bin 本地增加的命令  

/usr/local/lib 本地增加的库

/opt

额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。

/proc

虚拟文件系统目录,是系统内存的映射。可直接访问这个目录来获取系统信息。

/root

超级用户(系统管理员)的主目录(特权阶级^o^)

/sbin

存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理命令和程序。如ifconfig等。

/dev

用于存放设备文件。

/mnt

系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。

/boot

存放用于系统引导时使用的各种文件

/lib

存放跟文件系统中的程序运行所需要的共享库及内核模块。共享库又叫动态链接共享库,作用类似windows里的.dll文件,存放了根文件系统程序运行所需的共享文件。

/tmp

用于存放各种临时文件,是公用的临时文件存储点。

/var

用于存放运行时需要改变数据的文件,也是某些大文件的溢出区,比方说各种服务的日志文件(系统启动日志等。)等。

/lost+found

这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里

/opt 

opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录,是用户级的程序目录,默认是空的。/opt目录则没有在PATH环境变量中。
这里常用于放置额外的大型软件,比如你安装一个 ORACLE 数据库、qt就可以放到这个目录下。

可理解为:自定义目录 D:/Software

/usr 
  • usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的系统级目录,系统的很多应用程序和文件都放在这个目录下。其中 /usr/src 是系统的源码存放目录。
  • 此目录一般由软件包管理器(yum、apt)安装的软件
  • 可理解为C:Windows/
/usr/local 
  • /usr/local 是 /usr 下的一个用户级的程序目录,用户自己安装的软件一般选择安装到这个目录下。/usr/local命令下面的一些子目录往往都是被加入到PATH环境变量中的。
  • 此目录一般由用户自己管理。
  • 主要存放那些手动安装的软件,即不是通过“新立得”或apt-get安装的软件。可理解为C:/Program Files/
/usr/lib

可理解为C:/Windows/System32 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值