首页 > 代码库 > makefile里的一些常用函数
makefile里的一些常用函数
$(shell find $(SRC_DIR) -name ‘*.h‘) #寻找SRC_DIR所代表目录下的所有名字后缀为.h的头文件
$(sort $(foreach i, $(INC_DIR), -I$(i))) #对INC_DIR所代表的头文件进行排序
$(shell find $(SRC_DIR) -name ‘*.cpp‘) #寻找SRC_DIR所代表目录下的所有名字后缀为.cpp的头文件
$(patsubst %.cpp, %.o, $(SRCS)): 模式匹配替换SRCS所代表的字符串中后缀为.cpp的替换为.o
$(subst FROM, TO, TEXT),即将字符串TEXT中的子串FROM变为TO。 ------subst 是全字符串替换,patsubst 是模式替换
ifeq ($(origin DEFINES), undefined) --判断是否相等。。 origin函数判断DEFINES的出生情况,如果DEFINES未定义过那么$(origin DEFINES)返回undefined 这个if判断为真
g++ 后面跟的参数: -lm -m32 -ldl -rdynamic
-lm: 显示连接数学库
-m32: 编译为32位代码
-ldl: 表示生成的对象模块需要使用共享库
-rdynamic: 用来通知链接器将所有符号添加到动态符号表中
(目的是能够通过使用 dlopen 来实现向后跟踪)
选项 -Wall 开启编译器几乎所有常用的警告──强烈建议你始终使用该选项。编译器有很多其他的警告选项,但 -Wall 是最常用的。默认情况下GCC 不会产生任何警告信息。
makefile里的一些常用函数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。