Makefile 编译文件中的c文件,输出可执行文件main

2024-06-19 06:04

本文主要是介绍Makefile 编译文件中的c文件,输出可执行文件main,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Makefile文件

CC = aarch64-linux-gnu-gcc
CFLAGS =  
SRCS = $(wildcard *.c)
OBJS = $(SRCS:.c=.o)
TARGET = mainall: $(TARGET)$(TARGET): $(OBJS)$(CC) $(CFLAGS) -o $@ $^%.o: %.c$(CC) $(CFLAGS) -c $< -o $@clean:rm -f $(OBJS) $(TARGET)

执行make之后输出:

total 168
-rwxrw-r-- 1 build build  3185 Apr 15 06:27 can.c
-rwxrw-r-- 1 build build   353 Apr 15 06:27 can.h
-rw-rw-r-- 1 build build  5664 Jun 18 11:13 can.o
-rwxrw-r-- 1 build build  4736 Apr 15 06:27 i2c.c
-rwxrw-r-- 1 build build   717 Apr 15 06:27 i2c.h
-rw-rw-r-- 1 build build  7368 Jun 18 11:13 i2c.o
-rwxrwxr-x 1 build build 34664 Jun 18 11:13 main
-rwxrw-r-- 1 build build  2090 Apr 15 06:27 main.c
-rw-rw-r-- 1 build build  4672 Jun 18 11:13 main.o
-rwxrw-r-- 1 build build   246 Jun 18 10:27 Makefile
-rwxrw-r-- 1 build build   573 Apr 15 06:27 README.md
-rwxrw-r-- 1 build build 10416 Apr 15 06:27 spi.c
-rwxrw-r-- 1 build build  5439 Apr 15 06:27 spi.h
-rw-rw-r-- 1 build build 21720 Jun 18 11:13 spi.o
-rwxrw-r-- 1 build build  1654 Apr 15 06:27 system_cmd.c
-rwxrw-r-- 1 build build   166 Apr 15 06:27 system_cmd.h
-rw-rw-r-- 1 build build  3400 Jun 18 11:13 system_cmd.o
-rwxrw-r-- 1 build build  4724 Apr 15 06:27 uart.c
-rwxrw-r-- 1 build build   566 Apr 15 06:27 uart.h
-rw-rw-r-- 1 build build  7384 Jun 18 11:13 uart.o

打包生成了main这个可执行文件,可以放到开发板上进行测试了

这篇关于Makefile 编译文件中的c文件,输出可执行文件main的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1074208

相关文章

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

maven 编译构建可以执行的jar包

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」👈,「stormsha的知识库」👈持续学习,不断总结,共同进步,为了踏实,做好当下事儿~ 专栏导航 Python系列: Python面试题合集,剑指大厂Git系列: Git操作技巧GO

顺序表之创建,判满,插入,输出

文章目录 🍊自我介绍🍊创建一个空的顺序表,为结构体在堆区分配空间🍊插入数据🍊输出数据🍊判断顺序表是否满了,满了返回值1,否则返回0🍊main函数 你的点赞评论就是对博主最大的鼓励 当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~ 🍊自我介绍   Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名“创始团队·嘉宾”

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

Windows环境利用VS2022编译 libvpx 源码教程

libvpx libvpx 是一个开源的视频编码库,由 WebM 项目开发和维护,专门用于 VP8 和 VP9 视频编码格式的编解码处理。它支持高质量的视频压缩,广泛应用于视频会议、在线教育、视频直播服务等多种场景中。libvpx 的特点包括跨平台兼容性、硬件加速支持以及灵活的接口设计,使其可以轻松集成到各种应用程序中。 libvpx 的安装和配置过程相对简单,用户可以从官方网站下载源代码

如何将一个文件里不包含某个字符的行输出到另一个文件?

第一种: grep -v 'string' filename > newfilenamegrep -v 'string' filename >> newfilename 第二种: sed -n '/string/!'p filename > newfilenamesed -n '/string/!'p filename >> newfilename

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录

Detectorn2预训练模型复现:数据准备、训练命令、日志分析与输出目录 在深度学习项目中,目标检测是一项重要的任务。本文将详细介绍如何使用Detectron2进行目标检测模型的复现训练,涵盖训练数据准备、训练命令、训练日志分析、训练指标以及训练输出目录的各个文件及其作用。特别地,我们将演示在训练过程中出现中断后,如何使用 resume 功能继续训练,并将我们复现的模型与Model Zoo中的

Golang test编译使用

创建文件my_test.go package testsimport "testing"func TestMy(t *testing.T) {t.Log("TestMy")} 通常用法: $ go test -v -run TestMy my_test.go=== RUN TestMyTestMy: my_test.go:6: TestMy--- PASS: TestMy (0.

第六章习题11.输出以下图形

🌏个人博客:尹蓝锐的博客 希望文章能够给到初学的你一些启发~ 如果觉得文章对你有帮助的话,点赞 + 关注+ 收藏支持一下笔者吧~ 1、题目要求: 输出以下图形

LibSVM学习(五)——分界线的输出

对于学习SVM人来说,要判断SVM效果,以图形的方式输出的分解线是最直观的。LibSVM自带了一个可视化的程序svm-toy,用来输出类之间的分界线。他是先把样本文件载入,然后进行训练,通过对每个像素点的坐标进行判断,看属于哪一类,就附上那类的颜色,从而使类与类之间形成分割线。我们这一节不讨论svm-toy怎么使用,因为这个是“傻瓜”式的,没什么好讨论的。这一节我们主要探讨怎么结合训练结果文件