当前位置: 首页 > news >正文

南昌做网站优化哪家好策划书模板

南昌做网站优化哪家好,策划书模板,精品简历模板网站,浙江+外贸网站建设项目集成过程中的makefile记录 文章目录 项目集成过程中的makefile记录1.基础概念注释打印赋值方式常用变量$ 伪目标函数wildcard 多目录、文件操作 2.思路梳理**需求分析**目录结构 3.可行示例 持续更新中1.基础概念 注释 # 示例#xff1a; # 项目名称打印 echo H…项目集成过程中的makefile记录 文章目录 项目集成过程中的makefile记录1.基础概念注释打印赋值方式常用变量$ 伪目标函数wildcard 多目录、文件操作 2.思路梳理**需求分析**目录结构 3.可行示例 持续更新中1.基础概念 注释 # 示例 # 项目名称打印 echo Hello, world! #仅打印信息echo Hello, world! #打印命令和信息赋值方式 使用 进行赋值时变量的值是延迟展开的即在使用变量时才进行展开计算。这意味着变量的值可以依赖于其他变量也可能受后续赋值操作的影响。例如SOURCES $(wildcard src/*.c) OBJS $(SOURCES:.c.o): : 是 Makefile 中用于静态变量赋值的一种方式它具有立即展开和避免递归展开的特点适合用于定义不依赖于其他变量的静态值。? 使用 ? 进行赋值时如果变量之前未被赋过值即为空则进行赋值如果变量已经有值则不重新赋值。这种方式通常用于设置默认值让用户可以在命令行或其他地方覆盖默认值。例如CC ? gcc使用 可以向变量追加新的值而不是覆盖原有的值。这在需要动态追加值的情况下非常有用。例如CFLAGS -Wall -O2常用变量 作用 符号通常用于控制命令的输出示例和讲解 print_message:echo Hello, world! 执行 make print_message 将只输出 Hello, world!而不会额外显示命令本身。如果不带 符号Make 工具将会输出命令本身以及命令执行结果。print_message:echo Hello, world! 执行 make print_message 将输出 echo Hello, world! 以及 Hello, world!。总之 符号可以控制命令的输出让你可以选择是显示命令本身还是只显示命令执行结果。$ 1.变量引用$ 后面跟着变量名可以引用该变量的值。 例如$(CC)、$(CFLAGS) 例如$(CC) -o output $(OBJS) 将会使用 CC 和 OBJS 的值来构建编译命令。2.命令替换$() 或 ${} 用于执行命令替换将命令的输出结果赋给变量。例如$(shell date %Y-%m-%d) 将会获取当前日期并赋给变量。3.特殊内建变量$ 表示规则中的目标文件名。 $^ 表示所有的依赖文件列表。 $ 表示规则中的第一个依赖文件名。 例如$(CC) -o $ $^ 表示将所有的依赖文件编译链接生成目标文件。伪目标 网上的一些介绍可以增加理解避免与同名文件冲突有时候当前目录中可能会存在与 Makefile 中定义的目标同名的文件如果这些目标不是伪目标那么 Make 命令会误以为这是一个文件依赖关系从而导致错误。通过使用伪目标可以避免这种冲突。明确指示任务通过使用伪目标你可以在 Makefile 中明确地定义一些任务比如默认编译任务、清理任务等使得其他人阅读代码时更容易理解 Makefile 的意图。确保每次执行由于伪目标并不对应真实文件因此无论是否存在同名文件Make 命令都会执行伪目标定义的任务这样可以确保每次执行都能按照预期执行相应的命令。但记住下面这个就可以了 当执行 make 命令时Make 工具会按照规则执行 all 或 clean 相应的命令而不会考虑是否存在同名文件示例 # 默认目标 all: $(TARGET)# 清理规则 clean:rm -rf $(BUILD_DIR) $(BIN_DIR).PHONY: all clean函数 wildcard 原型 $(wildcard pattern)pattern 是一个文件名模式可以包含通配符 * 和 ?。wildcard 函数会将满足模式的文件列表返回给调用者。作用 用于匹配文件名模式并返回匹配的文件列表示例 假设当前目录下有以下文件 src/main.c src/util.c include/header.h 我们可以使用 wildcard 函数来匹配以 .c 结尾的所有源文件 SRC_FILES : $(wildcard src/*.c) 这将返回 src/main.c 和 src/util.c并将其赋给 SRC_FILES 变量。wildcard 函数在 Makefile 中常用于收集源文件列表、头文件列表等以便在后续的编译或构建过程中使用。多目录、文件操作 不同makefile文件相互调用 # 主Makefile文件sub_mk : ./src//ctrl/sub_ctrl.mk# 默认目标 all: echo building ...$(MAKE) -f $(sub_mk) # 子Makefile文件.PHONY: SUB_CTRLSUB_CTRL:echo SUB_CTRL makefile test !! 现象 building ... make[1]: 进入目录“/home/psd/code_space/my_project_space/user_space/test/camera_usb/test” SUB_CTRL makefile test !! make[1]: 离开目录“/home/psd/code_space/my_project_space/user_space/test/camera_usb/test”2.思路梳理 需求分析 项目初期 建立测试目录进行模块化的基础功能使能那对于makefile的需求1.对涉及到的.c源文件进行编译2.将编译生成的中间文件以及目标文件存放到相应的目录里面3.顶层目录下执行make即可实现整个项目的编译作用4.make clean 可以清除中间文件和已生成的目标文件其他拓展需求1.目录结构 后续测试模块内容写完直接使用tree命令补充# 源文件目录 SRC_DIR : src# 头文件目录 INC_DIR : include# 目标文件目录 BUILD_DIR : build# 可执行文件输出目录 BIN_DIR : bin# 源文件 SRCS : $(wildcard $(SRC_DIR)/**/*.c)# 目标文件 OBJS : $(SRCS:$(SRC_DIR)/%.c$(BUILD_DIR)/%.o)# 可执行文件 TARGET : $(BIN_DIR)/$(PROJECT_NAME)3.可行示例 # 项目名称 PROJECT_NAME : USB_CAMERA# 编译器 CC : gcc# 编译选项 CFLAGS : -Wall -Wextra -g# 源文件目录 SRC_DIR : src# 头文件目录 INC_DIR : include# 目标文件目录 BUILD_DIR : build# 可执行文件输出目录 BIN_DIR : bin# 源文件 SRCS : $(wildcard $(SRC_DIR)/**/*.c)# 目标文件 OBJS : $(SRCS:$(SRC_DIR)/%.c$(BUILD_DIR)/%.o)# 可执行文件 TARGET : $(BIN_DIR)/$(PROJECT_NAME)# 默认目标 all: $(TARGET)# 编译目标 $(TARGET): $(OBJS) | $(BIN_DIR)$(CC) $(CFLAGS) $^ -o $# 编译规则 # 生成目标文件的规则 $(BUILD_DIR)/%.o: $(SRC_DIR)/%.c #创建目录如果不存在mkdir -p $(dir $)$(CC) $(CFLAGS) -c $ -o $# 创建目录 $(BUILD_DIR):mkdir -p $$(BIN_DIR):mkdir -p $# 清理规则 clean:rm -rf $(BUILD_DIR) $(BIN_DIR).PHONY: all clean
http://www.dnsts.com.cn/news/168424.html

相关文章:

  • 东莞企业建设网站官网有限公司新闻发稿计划
  • 关于网站开发的技术博客自己建立网站
  • 西安知名的集团门户网站建设公司网站百度搜索不到
  • 组成原理毕业设计代做网站推荐免费招聘网站排行榜
  • 西安网易网站建设微信公众号怎么创建免费注册
  • 连云港东海县做网站金融贷款和网站建设哪个赚钱
  • 城市规划建设网站用层做的网站
  • 珠海网站建设运营公司阳江百姓网招聘
  • 网站制作定制图专门做进口零食的网站
  • 唐山网站制作工具深圳小程序开发费用
  • 郑州市网站设计公司哪个好android直播app开发
  • 医药销售网站开发背景自己做的网站是怎么赚钱
  • 帮人做钓鱼网站flipaclip动画制作
  • 大连模板建站定制网站建设制作有那些
  • 网站备案用户名忘了怎么办手机怎样做网站图解
  • 长春网站开发senluowx移动端数据可视化
  • 帝国网站管理 上一条 下一条 链接 信息id 信息发布时间举例说明网络营销的方法
  • 网站建设的看法有哪些淘宝客单页网站
  • 普陀学校网站建设茂名市住房和城乡建设局网站
  • h5 做移动端网站wordpress个人展示
  • 专做山珍的网站网站开发什么比较有创意
  • 电子商务网站系统规划新增网站建设方案
  • 花店网站模板服装网站建设网
  • 负责网站建设企业网站建设请示
  • 怀化政法网站定制建站
  • 哪个网站可以做免费请帖重庆知名商城网站建设公司
  • 南京高新区规划建设局网站佛山网站建设怎么选择
  • 网站做飘浮怎么做wordpress熊掌号主题
  • ppt模板免费下载的网站百度下载安装到桌面上
  • seo网站优化技术网站备案在哪里备案