从源码到执行程序
makefile运行流程
@
:这个符号用于在执行的命令之前,通常会告诉make不要输出命令本身,只输出命令的结果。但是当它位于命令行的开头时,它通常会让Make静默执行该命令,即不在命令行中显示该命令,只显示命令的输出。#
:这个符号用于注释,Makefile中从#
开始到该行结束的内容都将被视为注释,不会被make解释或执行。-
:这个符号,当放在命令行的开头,会告诉make忽略该命令的错误。通常用在可能失败的命令前面,这样即便命令执行失败,make也会继续执行后续的命令。
make编译动态链接库
-
LDFLAGS:用于设置链接器的选项。特别是-L选项,它告诉链接器在哪些额外的目录中查找库文件。例如,如果你使用-L/usr/local/lib,链接器会在/usr/local/lib目录下查找库文件1。
-
CXXFLAGS:用于设置C++编译器的编译选项。-I选项用于指定编译器在哪些额外的目录中查找头文件。例如,使用-I/usr/local/include会让编译器在/usr/local/include目录下查找头文件2。