Linux ./configure sudo make && make install

make && make install 的意思就是
先执行 make
如果成功,就接着执行 make install




双与号 &&

双与号 && 在Linux Shell(bash) 中的作用是: 命令的短路与
命令1 && 命令2 : 命令1执行成功才执行命令2
也可以多个: 命令1 && 命令2 && 命令3 …

双或号 ||

双或号 || 在Linux Shell(bash) 中的作用是: 命令的短路或
命令1 II 命令2 : 命令1执行失败才执行命令2
也可以多个: 命令1 || 命令2 || 命令3 …

./configure 是编译和安装配置,建立Makefile文件

“configure”会在系统上测试特性(或者bug!)然后在当前目录建立Makefile文件来完成make!
./configure是执行当前文件夹的configure脚本 , 用于配置安装过程, 比如安装路径
例如 git 2.37.2 安装包中 configure 文件的开头示例

#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for git 2.37.2.
#
# Report bugs to <git@vger.kernel.org>.
#
#
# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
# Inc.
#
#
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
## -------------------- ##
## M4sh Initialization. ##
## -------------------- ##

# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
as_nop=:
if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
then :
......

“configure”脚本有大量的命令行选项,对不同的软件包来说,这些选项可能会有变化,但是许多基本的选项是不会改变的。而我们用的最多的也就是下面这条命令:
./configure --prefix=/软件要安装的路径
如果直接./configure而不指定路径,通常通过从源码包编译安装的默认路径都是/usr/local/

make 是编译

在编译的时候,gcc个版本之间存在着差异,所以有时候用不同版本的gcc去编译,有的版本能编译成功,有的就编译失败,这样的错误只是版本问题。
另外在make的时候会出现的另一个错就是比较难办的,遇到这样的问题就只能凭经验查找原因,比如说某个头文件没有找到,这个时候就要顺着出错的位置一行一行的往上找,比如显示xxxx.h………no such file or directory,说明缺少头文件,或者找到你觉得有价值的错误信息去搜索引擎里搜索,从这里可能会找到对你有用的信息,最重要的就是在安装之前仔细的去看README、INSTALL文件,这两个文件里会告诉你程序应该怎样去安装,需要什么依赖文件等等。
有的时候在编译时不知道是否编译成功,而在没有编译成功就去make install肯定会出错,这样就增加了问题的复杂性,俗话说的好“道高一尺魔高一丈”,这样我们可以在make结束的时候通过一条命令来检查是否成功编译:echo $? (查看上一次执行的返回值)
输入这条命令回车后,输出的结果是0,那么就说明成功编译,否则就是出错了,echo $?表示检查上一条命令的退出状态,程序正常退出返回0!
更自动的方法就是用上 命令短路与 make && make install

make install 是安装

从Makefile中读取指令,然后安装到指定的位置

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kfepiza

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值