文章目录

  • 前言
  • 1.创建test.c文件
  • 2.编译运行该文件
  • 3.编译并链接两个源文件
  • 结语


前言

如何使用树莓派编译C语言代码呢?

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_树莓派

21年暑假的时候,学习编程的劲头高涨,然后冲动消费买了个树莓派4B……结果压根不会用,吃灰了半年

不过现在已经学完了C语言,也接触了一丢丢Linux系统下的gcc指令,可以尝试用它来编写C语言代码了!


1.创建test.c文件

首先我们需要在一个文件夹里创建一个test.c文件

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_linux_02

点击test.c文件后,树莓派会用自带的Geany编辑器打开它

然后我们可以往里写入C语言最经典的helloword代码

#include <stdio.h>
int main(void)
{
	printf("hello wordl!\n");
 
	return 0;
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

2.编译运行该文件

保存文件后,打开顶部的命令行

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_树莓派_03

输入以下代码

注意cd后需要空格,填写的是刚刚创建的test1.c文件的路径

cd /home/pi/code
  • 1.

填写完毕后,可以看到命令行前面多出了一个文件地址

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_c语言_04

这代表目前我们操作的是code文件夹里面的内容

输入ls,可以看到当下文件夹里的文件

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_linux_05

输入以下指令,可以生成一个可执行文件

gcc test1.c -o test1
  • 1.

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_c语言_06

最后输入以下指令,可以运行该文件!

./test1
  • 1.

可以看到,程序已经成功运行了!

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_源文件_07


3.编译并链接两个源文件

接下来我们再尝试一个相对来说更复杂的代码

分开两个源文件,一个是test.c,包含了main函数

另外一个是Add.c,包含了Add函数

因为是在不同的源文件里面,我们需要用extern来声明外部函数

#include <stdio.h>
 
extern int Add(int x,int y);
 
int main(void)
{
	int a=3;
	int b=5;
	printf("%d",Add(a,b);
 
	return 0;
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_树莓派_08

接下来我们使用-c指令来生成.o目标文件

在vs下,目标文件的后缀是.obj

.i文件为预编译文件

可以看到,我的代码里面extern写错了(很是尴尬),编译器报了警告

更改了以后就编译成功了

这一步是把C语言代码转换成机器认识的二进制指令

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_linux_09

然后输入以下指令,链接这两个文件,生成可执行文件test

gcc test1.c Add.c -o test
  • 1.

【树莓派开发】使用树莓派在Linux环境下编写C语言代码_可执行文件_10

最后还是使用./test指令来运行可执行文件

可以看到我们的结果已经输出了!


结语

第一次尝试用linux的gcc指令来编译C语言代码,还有点小激动

吃灰的树莓派终于有用了!😍

如果有写的不对的地方,还请大佬无情指出!