一般而言,源码的安装共三个步骤:配置(configure)、编译(make)、安装(make install)。

https://blog.csdn.net/m0_37599645/article/details/116021781
https://blog.csdn.net/weixin_44498318/article/details/111414759
https://zhuanlan.zhihu.com/p/466365720
https://www.cnblogs.com/johnnyzen/p/13789760.html
https://blog.csdn.net/LK_whq/article/details/80012571

各个文件详解

https://blog.csdn.net/qq_35243382/article/details/132804995

可能会出现的问题

更新配置文件:

wget -O config.guess 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD'
wget -O config.sub 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD'
  • 其它问题
    千万不要把一个已经用autoconf处理过的工程,再放到另外一个环境中重新编译,否则会有各种稀奇古怪的问题。

configure脚本常见的配置参数

http://t.zoukankan.com/lifexy-p-7866453.html(最常用)
https://blog.csdn.net/sinat_24143931/article/details/50819699(全)

  • --prefix
    prefix的作用其它是指定安装目录,

    如果指定了,它将安装在指定的目录中。

    如果不指定prefix,则可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/etc。其它的资源文件放在/usr /local/share。

    区别在于如果要删除这个程序时候的麻烦程序,可以在原来的make目录下用一次make uninstall(前提是make文件指定过uninstall),要么去上述目录里面把相关的文件一个个手工删掉。

    如果指定了prefix,只要删除指定的文件夹就可以了。

    --prefix=$(pwd)/build-arm,$(pwd)表示当前目录。

  • --host
    --host=aarch64-linux-gnu--host=arm-linux的区别:

    #当编译器是arm-linux-gnueabihf时,host为编译器前两个词arm-linux
    ./configure --host=arm-linux CC=arm-linux-gnueabihd-gcc CXX=arm-linux-gnueabihf-g++
    #当编译器是aarch64-linux-gnu-时,host为编译器前两个词aarch64-linux
    ./configure --host=aarch64-linux CC=aarch64-linux-gnu-gcc CXX=aarch-linux-gnu-g++
    #若需要指定安装路径,请使用--prefix= 注意路径要使用局对路径
    ./configure --host=aarch64-linux CC=aarch64-linux-gnu-gcc CXX=aarch-linux-gnu-g++ --prefix=/home/root/build
分类: autotools

0 条评论

发表回复

您的电子邮箱地址不会被公开。