makefiles中几个特殊的符号

阅读数:81 评论数:0

跳转到新版页面

分类

Linux

正文

$@ 目标的名字
$^ 构造所需文件列表所有文件的名字
$< 构造所需文件列表的第一个文件的名字
$? 构造所需文件列表中更新过的文件

(1)-

make 在执行命令的时候,如果遇到 error,会退出执行。加上减号的目的是即便此命令行执行出错,那么也不要管,继续执行 make。

.PHONY : clean
clean :
	-rm $(objects)

(2)@

通常 makefile 会将其执行的命令行在执行前输出到屏幕上。如果将 @ 添加到命令行前,这个命令将不被 make 回显出来,即不显示命令本身而只显示结果。

(3)+

使用加号修饰符让命令始终执行。命令行执行时不受到 make 的 -n -t -q 三个参数的影响,忽略这三个参数。
如果 make 执行时,使用 -n--just-print。该参数显示命令,不会执行命令。这个功能有利于调试 Makefile,方便查看执行的命令形式和顺序。

(4)$

美元符号 $,扩展打开 makefile 中定义的变量。

(5)$$

$$ 符号,扩展打开 makefile 中定义的 shell 变量。




相关推荐

一、概述 makefile文件包含一些规则,告诉make工具编译哪些文件以及怎样编译这些文件。 配置文件.config 是在进行内核配置后生成的中间产物。 是通过make menuconfi

一、概述 在linux进行c\c++的开发时,常会用到两个库: libc.so  这是标准C库(ANSI C) libstdc++.so  标准C++库(包含STL) 1、libc 它是Linux下原

一、概述 machinfo命令在Linux系统上通常不可用,它更常见于HP-UX系统。在HP-UX系统上,machinfo命令用于显示机器的硬件和操作系统信息。 如果您在Linux系统上想要获取类似的

一、概述 1、ssh的安全验证 (1)基于账号和密码来验证登录。 (2)基于密钥 2、sshd的配置 sshd的配置文件是/etc/ssh/sshd_config port 22 默认的sshd

以centos7为例 ,以 修改为阿里的yum源 1. 备份本地yum源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Ba

一、安装内核源码 如果你安装全部的sources,把内核tarball放在你有权限的目录下,解压缩,不要使用/usr/src/linux这个目录,因为这是linux系统使用的目录。 xz -cd li

[root@VM_167_46_centos etc]# free -h total used free shared buff/cache available Mem: 993M 253M 334

一、configure       这一步一般用来生成Makefile,为下一步的编译做准备。       你可以通过在configure后加上参数来对安装进行控制,比如代码: ./configure

一、概述 cmake是一个跨平台的编译自动配置工具,它并不直接构建最终的软件,它只是通过读取CMakeLists.txt配置文件,然后按配置输出定义式的Makefile或project文件。 二、变量

1. 下载cmake.tar.gz文件 2.安装依赖 yum install zlib-devel o