关于Linux下源码安装

   先来说下为什么要源码安装:

拿CentOS操作系统举例,它本身自带很多rpm包,我们可以通过yum命令关联依赖包来安装应用软件,但由于是自带的,软件的版本不会改变,假设我们要升级应用软件或者要使用rpm包之外的软件(第三方软件),我们就不能通过yum命令安装,只好通过源码安装。

首先下载源码包,可以使用wget+源码包网址的命令下载,之后再解压缩

1.若解压缩的文件里面有Makefile文件

1.1为当前客户机使用

1.1.1若升级软件

make

sudo make install   

1.1.2若安装第三方软件

make

make --prefix=安装路径 install      //如果不指定安装路径,则可执行文件默认安装到/usr/bin/,动态库文件则会安装到/usr/lib/,假设第三方软件动态库的某个文件名和本机动态库的某个文件名一样,这样就会替换,导致本机动态库发生改变,会造成不良影响,严重的直接崩溃,所以安装第三方软件一定要指定安装路径,个人喜欢指定为/usr/local/xx

1.2 为ARM开发板使用

修改Makefile,添加交叉编译工具链arm-linux-

make

make install是不必要的,直接将生成的所需要文件移植到开发板即可,因为是提供给ARM使用,安装在本机上有何用?我们要有灵性!


2.若解压缩的文件里面有configure文件

2.1 为当前客户机使用

2.1.1若升级软件

./configure              //为了生成Makefile

make

sudo make install

2.1.2若安装第三方软件

./configure --prefix=安装路径       //道理和上面类似

make

make install

2.2 为ARM开发板使用

./configure CC=arm-linux-gcc LD=arm-linux-ld --host=arm-linux --prefix=安装路径

make

/*

假设make之后报错,一般是缺少了某个交叉编译工具链,我们通过报错信息将需要的添加进去,比如少了ranlib,我们就要添加并指定RAMLIB=arm-linux-ranlib,注意要大写,接下来我们先make distclean,再

./configure CC=arm-linux-gcc LD=arm-linux-ld RAMLIB=arm-linux-ranlib --host=arm-linux --prefix=安装路径

make

*/

##

如果设值了环境变量,则CC=arm-linux-gcc即可,若没设置,则要写绝对路径,例如:CC=/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-gcc,LD同理

##

make install不必要,直接将生成的所需要文件移植到开发板即可,至于所需要的文件,可以在解压缩目录下

find -iname "所需要文件名"

找到之后还可以用file命令查看文件是否符合ARM



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值