linux使用源码安装软件

在日常使用linux服务器的时候, 难免会遇到非root用户但需要安装软件的情况. 这时就需要我们使用源码安装了.

这篇文章将大概流程介绍的挺好: https://blog.csdn.net/bobobe/article/details/109144385

但细节部分仍可以进行补充.
下面我将以源码安装unzip软件作为模板来介绍非root用户如何使用源码安装软件.

1. 找到源码

基本上所有的软件源码安装包都可以在清华镜像(https://mirrors.tuna.tsinghua.edu.cn/)中找到

清华镜像中软件包的寻找方法:
这次要找linux中Ubuntu系统的unzip软件

  • 我们在首页的镜像列表找即可(按字典序排序)找到了Ubuntu目录,鼠标放上面可以看到介绍(流行的软件安装包仓库),
  • 点进去看到一些目录(看目录名字应该能大致猜出意思), 因此去/pool目录下的/main目录中寻找即可.
  • 清华镜像为了方便我们查找, 特地按字典序建立了子目录, 非常方便, 我们要找unzip软件, 去/u目录下找即可.
  • /u目录下可以看到了很多的软件包了, 直接网页内搜索unzip(当然一个一个找也行)就能找到unzip软件包所在的目录(找不到的话就另行他法吧, 毕竟这里只是常见的软件包)
  • 进入unzip目录后, 就可以看到非常多的版本, 找源版本下载即可(看英文.orig的应该就是源版本了)

下载的话, 直接windows下载然后发送到远程服务器, 或者通过wget filesrc命令直接在linux中下载也可以.

2. 解压

将下载下来的软件源码安装包解压出来即可
通过tar -zxvf filename即可解压

3. 找到并修改makefile文件

要将默认的root安装目录修改为当前非root安装目录

首先找到linux的makefile文件,

  • 打开解压后的文件, 如果能在第一层直接找到Makefile文件的话, 就不用再找了.
  • 如果第一层找不到的话, 找/unix目录下的Makefile文件(看这些目录名就明显猜到含义了,这里有macos, windows, linux各种操作系统的Makefile文件)
    /unix目录下的Makefile文件复制出来即可

然后就是修改Makefile文件,

  • 通过'/'+'关键字'的方式可以在vim打开的文件中搜索关键字, 回车后通过N来遍历搜索结果
  • 如果对文件不了解的话, 几个常见的路径关键字PATH, DIR等可以都试试, 这里直接通过DIR就可以找到路径了
  • 可以看到, 里面的一些参数(下面的内容是节选自Makefile文件中的内容, 对prefix参数进行了修改)
manext = 1
prefix = /home/这里填非root用户的用户名/usr/local
# prefix = /usr/local
BINDIR = $(prefix)/bin#                 where to install executables
MANDIR = $(prefix)/man/man$(manext)#    where to install man pages
INSTALLEDBIN = $(BINDIR)/funzip$E $(BINDIR)/unzip$E $(BINDIR)/unzipsfx$E \
        $(BINDIR)/zipgrep$E $(BINDIR)/zipinfo$E
INSTALLEDMAN = $(MANDIR)/funzip.$(manext) $(MANDIR)/unzip.$(manext) \
        $(MANDIR)/unzipsfx.$(manext) $(MANDIR)/zipgrep.$(manext) \
        $(MANDIR)/zipinfo.$(manext)

其实还是比较清楚的, prefix参数就是软件要安装的目录了, 后面的是对bin, man等目录的定义, 所以我们只需要修改prefix参数的内容即可, 为了尽量保持和root用户的参数对齐, 我就在/usr/local前面添加了当前用户/home/当前用户的用户名, 这样, 该软件就会安装在当前目录下的~/usr/local目录下了.
wq保存vim的修改即可.

4. 使用Makefile安装软件

修改完的Makefile可以让我们将软件安装在当前用户下的目录了, 执行make && make install即可进行安装.
只要没报错就算安装成功.

5. 添加环境变量, 激活配置文件

这时候我们已经安装好软件了, 可以直接在安装目录中使用了(~/usr/local/bin), 但想要方便的使用还是需要将软件添加到环境变量中的(毕竟, 你也不想你每次用软件的时候都敲一大堆目录的事情被别人知道吧~~)

打开~/.bashrc文件, 在下面追加export PATH="~/usr/local/bin:$PATH", 这里记得用双引号, 单引号无法引用PATH.
wq保存后通过命令激活该配置文件即可source ~/.bashrc

6. 验证软件是否安装成功

在终端中输入unzip发现可以使用了, 软件安装成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值