首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux工具入门:make工具与Makefile文件

1. make工具 利用make工具可以自动完成编译工作,这些工作包括: 如果修改了某几个源文件,则只重新编译这几个源文件 如果某个头文件被修改了,则重新编译所有包含该头文件的源文件 利用这种自动编译可以大大简化开发工作...make工具通过一个称为Makefile的文件来完成并自动维护编译工作,Makefile文件描述了整个工程的编译、连接规则。 回到顶部 2....如果此时再次输入make,会看到: $ make make: 'main' is up to date. make的编译规则是根据时间来进行判断,一旦依赖列表中某个文件的更新时间比目标文件晚,则会重新生成目标...也可以生成指定的目标: $ make add.o 【指定只生成add.o文件】 Makefile文件的名字不一定得命名为“Makefile”或"makefile",使用其他名字也是可以的。...来看三个常用make内嵌函数。 $(wildcard PATTERN) 作用是在当前目录下匹配模式的文件

3K40

Linux工具入门:make工具与Makefile文件

1. make工具 利用make工具可以自动完成编译工作,这些工作包括: 如果修改了某几个源文件,则只重新编译这几个源文件 如果某个头文件被修改了,则重新编译所有包含该头文件的源文件 利用这种自动编译可以大大简化开发工作...make工具通过一个称为Makefile的文件来完成并自动维护编译工作,Makefile文件描述了整个工程的编译、连接规则。 2. Makefile文件 Makefile描述了整个工程的编译连接规则。...如果此时再次输入make,会看到: $ make make: 'main' is up to date. make的编译规则是根据时间来进行判断,一旦依赖列表中某个文件的更新时间比目标文件晚,则会重新生成目标...也可以生成指定的目标: $ make add.o 【指定只生成add.o文件】 Makefile文件的名字不一定得命名为“Makefile”或"makefile",使用其他名字也是可以的。...来看三个常用make内嵌函数。 $(wildcard PATTERN) 作用是在当前目录下匹配模式的文件

3.4K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux——.configure && make && make install命令解析

    当我们在Linux上安装相关的软件源码包时,一般会涉及到以下三个步骤,分别是 ..../configure、makemake install ———————————————————————————————————————————————————— 第一步 ....该脚本会中止执行,软件安装失败 如:它会检测是否安装了gcc (用于编译各种源代码的软件),如果未安装,该脚本会中止执行 当该脚本执行完成之后,它会根据之前检查的结果,生产一个 Makefile 文件...,该文件规定了用什么编译器、编译参数等信息 ,描述了文件编译的相互依赖关系 第二步 make 该步骤主要用来编译源代码,make指令会从 Makefile 文件中读取相关指令,然后进行编译...,编译完成之后会生成可执行文件 第三步 make install 该步骤主要用来安装软件,make install命令会从 Makefile 文件中读取相关指令,然后将软件安装到指定位置

    7.2K20

    Linux下解决.configure ,makemake install的报错

    Linux下从源代码下编译安装一个软件有时候会报错,遇到一些麻烦。有些情况即使你用了很多方法去尝试解决,但问题依然存在,那怎么办呢?...本教程教你怎么解决Linux软件编译时遇到的问题 注意:编译安装一个软件不会被系统的包管理系统记录信息,这对于卸载和记录软件的行为都是不利的,建议您尽量使用打包好的包(.rpm .deb) 我们分3类错.../configure 错误 make 错误 make install 错误 识别这些错误应该是很简单的:....如果您不知道怎么办,待回看一下下Make install错误的第一点 记:如果您没有修改ld.conf文件的权限,您还可以将库文件路径添加到LD_LIBRARY_PATH变量中。...这通常是由于make install将每个东西都安装在了/usr/local或者/opt/.检查一下make install 将文件复制到了哪里。

    27.2K21

    make命令和makefile文件

    大家好,又见面了,我是全栈君   make命令和makefile文件的结合提供了一个在项目管理领域十分强大的工具,它不仅常被用于控制源代码的编译,而且还用于手册页的编写以及将应用程序安装到目标目录。   ...1. make命令的选项和参数   make程序本身有许多选项,其中最常用的三个选项如下所示: (1)-k:让make命令在发现错误时仍然继续执行 (2)-n:让make命令输出将要执行的操作步骤,而不真正执行这些操作...,规则所在的行必须以制表符开头,用空格是不行的,如果makefile文件中的某行以空格结尾,也可能导致make命令执行失败。...  -   告诉make命令忽略所有的错误   @   告诉make在执行命令前不要将该命令显示在标准输出上@echo   $(@D) 目标文件的目录名部分   $(@F) 目标文件文件名部分...-rm:rm命令以减号开头是让make命令忽略rm命令的执行结果 1.4 内置规则   可以通过make -p来打印make的所有内置规则,比如: OUTPUT_OPTION=-o ¥@ COMPILE.c

    2.6K40

    linux编写同步文件的脚本

    搭集群最麻烦的就是修改配置文件,如果只用修改一个机器上的配置文件,然后用一个脚本就可以把配置文件同步到其他机器上,岂不快哉!...编写一个名为xsync的脚本文件: 作用: 将当前机器的文件,同步到集群所有机器的相同路径下!...hadoop102:/A/a , 执行脚本后,将此文件同步到集群中所有机器的 /A/a 用户在使用xsync时,只需要传入要同步的文件即可 xysnc a 不管a是一个相对路径还是绝对路径,都需要将...文件的绝对路径=父路径+文件名: 父路径: dirpath=$(cd dirname /home/atguigu/hi; pwd -P) 文件名: filename=basename hi...exit; fi #获取分发文件的绝对路径 dirpath=$(cd `dirname $1`; pwd -P) filename=`basename $1` echo 要分发的文件的路径是:$dirpath

    2.3K10

    linux学习指南】linux指令与实践文件编写

    前言 本节阿森将和你一起深入浅出的学习简单几条指令,快速上手在linux写代码,同时更好的理解指令记忆 linux目录结构 在linux系统中,磁盘上的文件和目录被组成一个树,每个节点都是目录或文件,...如图所示: 以上只是展示目录的结构是目录树的结构,以下是 Linux 文件目录结构的主要组成部分: 根目录 (/) 这是整个文件系统的顶级目录,所有其他目录和文件都是从根目录开始的。...这是在Xshell中我新建的目录,更好的展示树状结构,如图: 我们接着看~ linux命令介绍 pwd命令 pwd:显示用户当前所在的目录 这里pwd显示是/root,因为linux用户分为两类...linux实践代码 在linux写代码我最开始可以先用nano来写, nano 是一个简单易用的文本编辑器,在 Linux 和 Unix 系统中广泛使用。...cp指令:复制文件或目录,如cp [选项] 源文件或目录 目标文件或目录 man指令:查看指定命令的手册页如 man man nano test.c 记事本编写 感谢你的收看,如果文章有错误

    10310

    Linux中的configure,make,make install到底在做些什么

    http://www.sohu.com/a/191735643_505857 在Linux下经常要安装部署一些软件包或者工具,拿到安装包之后一看,简单,configure,make, make install...有时候我就在想,这个configure,make ,make install是什么意思呢,configure是测试存在的特性,然后make开始编译,make install生成相应的可执行文件。...m4 的计算能力与任何一种编程语言等同,区别只体现在编程效率以及所编写的程序的运行效率方面。...bin_PROGRAMS定义了要产生的执行文件名,这里我们定义为helloworld file_SOURCES定义file这个执行程序的依赖文件,其中“file_SOURCES”中的前部分“file”要改写成可执行文件名...[root@oel64 c]# strings helloworld /lib64/ld-linux-x86-64.so.2 __gmon_start__ libc.so.6 puts __libc_start_main

    3.2K40

    Linux中的configure,make,make install到底在做些什么

    Linux下经常要安装部署一些软件包或者工具,拿到安装包之后一看,简单,configure,make, make install即可搞定。...有时候我就在想,这个configure,make ,make install是什么意思呢,configure是测试存在的特性,然后make开始编译,make install生成相应的可执行文件。...m4 的计算能力与任何一种编程语言等同,区别只体现在编程效率以及所编写的程序的运行效率方面。...bin_PROGRAMS定义了要产生的执行文件名,这里我们定义为helloworld file_SOURCES定义file这个执行程序的依赖文件,其中“file_SOURCES”中的前部分“file”要改写成可执行文件名...[root@oel64 c]# strings helloworld /lib64/ld-linux-x86-64.so.2 __gmon_start__ libc.so.6 puts __libc_start_main

    3.9K30

    Linuxmake和makefile及其拓展

    makefile带来的好处就是自动化编译,一旦写好这个文件,只需要一条make命令,整个工程就能自动完成编译,极大的提高了效率。...make是一个命令,makefile是一个文件 make/makefile的使用 系统本身并没有makefile,需要我们自己创建makefile文件(也可以叫Makefile)。...该文件中主要写依赖关系和依赖方法: 注意: 有了makefile文件make命令才能派上用场,保存退出makefile文件后在终端输入make命令就能完成自动编译 这个时候你可能有一个疑问:...文件进行过修改,也就需要重新编译,此时就可以再次执行make 拓展 Access是访问时间,Modify是文件内容更改时间,Change是文件属性更改时间。...在make推导的时候会根据依赖关系而推导,从上到下,当依赖文件列表不存在会继续根据依赖文件列表所对应的项而继续。但这样是将简单的过程复杂化了,平时没必要这样写,这里也只是做讲解用。

    3.8K00

    Linux 下的make命令与Makefile

    概述 博客内容包含linuxmake命令的使用与makefile的书写规则等,希望通过本文档使读者对make命令makefile文件有进一步了解,由于鄙人经验学识有限文档中会有描述不准确以及理解偏差,...fythons@sina.com 从一只猫说起hello kitty linux系统中的make命令与makefile文件 make与makefile 在linux系统中make是一个非常重要的编译命令...Make的工作原理 当make 命令被执行时,它会扫描当前目录下Makefile或makefile文件找到目标以及其依赖。...make命令隐藏了什么 linux 编译hello_kitty 只需要简单的make hello_kitty 上述过程可分解为四部分,预处理(Propressing),编译(Compilation),...例如,把.c文件编译成.o文件这一规则,你根本就不用写出来,make会自动推导出这种规则,并生成我们需要的.o 文件

    10.2K20

    编写sudoers文件

    sudo为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机。它默认的存放位置是/etc/sudoers。 sudo使用时间戳文件来完成类似“检票”的系统。...二、实操 我们可以直接以root用户vi /etc/sudoers文件或者执行visudo命令 我们添加一个用户来实验,u001 useradd u002 passwd u002 我们切换到u002用户...我们可以通过root用户设置sudoers文件,让u002可以通过sudo命令具有root用户权限。...我们编辑/etc/sudoers文件 第一个ALL是指网络中的主机,我们后面把它改成了主机名,它指明foobar可以在此主机上执行后面的命令。...在实际项目中,一般编辑sudoers文件,几乎不用ALL权限,而是根据实际需要进行定制。

    61010

    Linux】————Makefile编写

    从vim中退出来,编写一个简单的test.c文件: 此时目录下会有两个我们刚才创建的文件:Makefile和test.c 我们直接执行make命令: 我们发现执行命令之后,有了我们想要的mytest...退出vim,执行make clean 我们发现mytest文件被删除了. 还有一个作用就是总是被执行. 什么叫总是被执行呢?先来看如果我们一直make会发生什么呢?...为了验证,我们可以交换一下两个的顺序: 退出vim, 此时我们执行make,发现执行的语句成为了rm 想要编译,需要自己手动输入:make mytest. 此时便编译完成,生成了一个可执行文件....我们如果修改源文件,此时源文件的时间就一定会比可执行文件新,这个时候再次可以执行gcc便可以编译了. 如果有多个文件,我们该如何使用Makefile编写呢?...在编写Makefile时,我们习惯于把依赖文件写成.o的形式.而.o又需要.c来编译。所以Makefile会自动向下寻找这些编译语句,我们只要写上编译的语句即可.

    6010

    linuxmake命令的使用方法

    Make 如何工作的 对于不知道背后机理的人来说,make 命令像命令行参数一样接收目标。这些目标通常存放在以 “Makefile” 来命名的特殊文件中,同时文件也包含与目标相对应的操作。...现在,假设你对某个源文件进行了修改,你再次执行 make 命令,它将只编译与该源文件相关的目标文件,因此,编译完最终的可执行文件节省了大量的时间。...test.c anotherTest.o: anotherTest.c gcc -c -Wall anotherTest.c clean: rm -rf *.o test 现在我们来看 Linux...make 命令不会编译任何文件,然而 make -B 会强制编译所有的目标文件以及最终的执行文件。...This program built for x86_64-pc-linux-gnu Reading makefiles… Reading makefile `Makefile'… Updating makefiles

    3.4K20
    领券