软件编译安装小结

IDE) 都有这个命令,比如:Delphi 的 make,Visual C++的 nmake ,Linux 下 GNU 的 make。可见,makefile 都成为了一种在软件工程方面的编译方法。

利用 configure/cmake 所产生的 Makefile 文件,有以下几个预设的目标可供使用,其中几个重要的简述如下:

make#根据Makefile文件编译软件工程,并生成目标文件以及最终的二进制文件makeinstall#根据Makefile文件将软件工程(比如nginx、mysql)部署到指定的安装目录,包括相关目录的建立和二进制文件、配置文件的复制makeall#与make效果类似,不过它会输出所有的调试信息,包括make构造依赖关系链、重建目标过程等输出信息makeclean#清除编译产生的可执行文件及目标文件(objectfile,*.o)makedistclean#与makeclean效果类似,但同时也将configure产生的文件全部删除掉,,包括Makefile文件makedist#产生发布软件包文件(即distributionpackage),它会将可执行文件及相关文件打包成一个名字类似”PACKAGE-VERSION.tar.gz”的压缩文件用来作为发布软件的软件包。其中,PACKAGE和VERSION是我们在configure.in中定义的AM_INIT_AUTOMAKE(PACKAGE,VERSION)。makedistcheck#与makedist效果类似,增加了检查包装后的压缩文件是否正常的功能。这个目标除了把程序和相关文件包装成以tar.gz后缀结尾的文件以外,还会自动把这个压缩文件解开,然后执行configure,并且进行makeall的动作,确认编译无误后,会显示这个tar.gz文件可供发布了。这个检查非常有用,检查过关的包,基本上可以给任何一个具备GNU开发环境-的人去重新编译

重新配置配置编译参数时,需要清除哪些文件?

一、如果你使用 configure 去生成 Makefile 文件

makecleanmakedistclean

#catmake_file.sh#!/bin/bash#clearcmakefileshellecho”deletecmakecachebegin…”rm-rf./cmake_install.cmakerm-rf./CMakeFilesrm-rf./Makefilerm-rf./CMakeCache.txtecho”deletecmakecacheend…”

在实际环境中,我们执行cmake之后,会在源码的根目录产生9个新文件 和 1个目录文件 CMakeFiles,更新更新了若干目录的时间戳!

-rw-r–r–.1rootroot88Jun322:09VERSION.dep-rw-r–r–.1rootroot5827Jun322:09make_dist.cmake-rw-r–r–.1rootroot5815Jun322:09info_macros.cmake-rw-r–r–.1rootroot4795Jun322:09CPackConfig.cmake-rw-r–r–.1rootroot5724Jun322:09CPackSourceConfig.cmake-rw-r–r–.1rootroot48488Jun322:09CMakeCache.txt-rw-r–r–.1rootroot53439Jun322:09Makefile-rw-r–r–.1rootroot6528Jun322:09cmake_install.cmake-rw-r–r–.1rootroot1279Jun322:09CTestTestfile.cmakedrwxr-xr-x.11rootroot4096Jun322:09CMakeFiles

以上就是本文的内容!希望对大家有所帮助,如果哪里有问题,请及时告知!

本文出自 “Not Only Linux” 博客,请务必保留此出处

会让你的心态更平和更坦然,也会让你心无旁骛,更会让你的心灵得到解脱和抚慰。

软件编译安装小结

相关文章:

你感兴趣的文章:

标签云: