第二节 Linux系统编程-helloworld

-------------------------------------资源来源于网络,仅供自学使用,如有侵权,联系我必删.

第一:

本章导读
本实验介绍经典的 helloworld 程序,就几行代码,非常简单,主要是需要学习一下应用程序如何编译、如何运行、如何修改权限等等实际操作。

• 标准输入/输出
– 格式化输出函数printf
– linux终端
• 在Ubuntu系统home目录下新建目录linuxsystemcode
– 后面大部分实验代码都会放在这个文件下编译
• 编写编译运行第一个helloworld程序

 

第二:

代码简介
如下图所示,代码非常简单,只要有 C 语言的基础就可以很轻松的搞定。

#include 

main()
{
	printf("Hello World!\n");
}

1)如上图所示,首先调用了头文件“stdio.h”,这是告诉编译器本程序中包含标准输入/输库的信息,只不过在学习 C 语言的时候,输入/输出是在 PC 的图形界面。
2)在 linux 中,这个标准输入/输出是通过串口,也就是通过超级终端来实现的。
接着调用 main 函数作为程序入口,main 函数中调用了 printf 打印函数,也就是把其中内容打印到超级终端。最后在开发板上运行这个程序的时候,应该会在超级终端中打印“HelloWorld!”。

说明:打印消息后面做了些许修改,把打印字符串改为"Hello World,Linux!"

第二节 Linux系统编程-helloworld_第1张图片

 

第三:

编辑和目录介绍

如下图所示,在 Ubuntu 下建立一个专门的文件夹存放“Linux 系统编程”中的源码和程序。在目录“/home”下,在 root 用户下,使用命令“mkdir linuxsystemcode”新建目录“linuxsyetemcode”(用户也可以建立在其它目录下)。

第二节 Linux系统编程-helloworld_第2张图片

 

第四:

将“helloworld.c”拷贝到前面新建的“helloworld”目录下

一共有二种方法:

1.使用命令“vi helloworld.c”或者“vim helloworld.c”命令  创建C文件后,编写代码

 

 

 

第二节 Linux系统编程-helloworld_第3张图片

第二节 Linux系统编程-helloworld_第4张图片

 

2.利用SSH Secure File Transfer Client工具,把windows里面的文件上传到虚拟机里面(我推荐这种方法)

第二节 Linux系统编程-helloworld_第5张图片

 

 

第五:

 编译

 

1)使用命令“cd /home/linuxsystemcode/helloworld/”回到“/home/linuxsyetemcode/helloworld”目录中

2)使用命令“arm-none-linux-gnueabi-gcc -o helloworld helloworld.c -static”,将当前目录下的 C文件“helloworld.c ”编译成可执行文件“helloworld”

 

 第二节 Linux系统编程-helloworld_第6张图片

 

第六:

修改权限和运行-U 盘

 

1)先将可执行文件 helloworld 拷贝到 U 盘

第二节 Linux系统编程-helloworld_第7张图片

 

2)U盘插入开发板后,启动开发板如下图所示

第二节 Linux系统编程-helloworld_第8张图片

 

3)如果文件系统第一次启动的时候没有/mnt/udisk 目录,所以需要使用命令“mkdir /mnt/udisk”新建

第二节 Linux系统编程-helloworld_第9张图片

 

4)然后加载 u 盘,插入 u 盘的时候,被识别为 sda4,使用命令“mount /dev/sda4 /mnt/udisk”加载 u 盘,如下图所示。

第二节 Linux系统编程-helloworld_第10张图片

 

5)这个时候可以直接在 U 盘中运行,如下图所示,使用命令
“chmod 777 /mnt/udisk/helloworld”修改权限。

第二节 Linux系统编程-helloworld_第11张图片

 

6)然后使用命令“./mnt/udisk/helloworld”运行 helloworld 程序,如下图所示。

第二节 Linux系统编程-helloworld_第12张图片

 

-------------------------------------------------------------------------------------------------

第七:

也可以将程序拷贝到 bin 目录下,在 linux 系统中一般这个 bin 目录就是放可执行程序的。
1)使用拷贝命令“cp -r /mnt/udisk/helloworld /bin/”如下图所示。

第二节 Linux系统编程-helloworld_第13张图片

2)然后修改一下权限,使用命令“chmod 777 /bin/helloworld”,如下图所示。

第二节 Linux系统编程-helloworld_第14张图片

3)运行 helloworld 程序,使用命令“./bin/helloworld”,如下图所示,运行之后可以看到有打印信息“Hello World!”。

第二节 Linux系统编程-helloworld_第15张图片

 

-------------------------------------------------------------------------------------------------

第八

将 helloworld 编译进文件系统

可以将程序直接编译进文件系统,这样就可以不用 U 盘或者 TF 卡来拷贝程序了。
如下图所示,使用 cp 命令将编译好的 helloworld 程序赋值到 system 下的 bin 目录。

第二节 Linux系统编程-helloworld_第16张图片

 

知道有这种方法就行,没有亲手实现,自己烧录的ISO里面没有minilinux这个文件,无法实现。

 

 

你可能感兴趣的:(Linux,迅为)