【嵌入式1】Ubuntu系统下运行C语言程序以及用Makefile方式编程
文章目录
- 一、设置网络参数
- 1.虚拟机网络适配器设置为NAT模式
- 2.确定网卡ip
- 3.设置NAT网络的端口映射
- 4.进行网络测试
- 二、用C语言编写一个简单的输出 hello word 的程序。
- 三、编写一个主程序文件 main1.c 和一个子程序文件 sub1.c
- 1.编写主程序文件main1.c
- 2.编写子程序sub1.c文件
- 3.在ubuntu系统用gcc 命令行方式编译主程序main.c 并运行
- 4.在windows系统下用vc++编译主程序main1.c 并运行
- 四、在ubuntu系统下用Makefile方式编程主程序。
- 1.安装make并创建出makefile文件
- 2.安装完成后用vim编辑器编写main与sub程序
- 3.编写makefile文件:
- 4.编译运行:
一、设置网络参数
首先设置网络参数确保系统能上网,这里使用NAT配置Ubuntu网络。
1.虚拟机网络适配器设置为NAT模式
首先关闭WMware中的Ubuntu,然后编辑虚拟机设置。然后选择网络适配器 -> NAT模式 ,然后确定。
2.确定网卡ip
启动Ubuntu,打开终端,输入
ifconfig
我这里显示 ubuntu 的ip地址是 192.168.161.128
3.设置NAT网络的端口映射
在NAT网络下,开发板无法看到Ubuntu,如果开发板需要访问Ubuntu,需要进行端口映射。我们需要映射如下端口:
端口号 | 端口默认协议 |
---|---|
22 | ssh端口 |
111 | rpc端口 |
2049 | nfs端口 |
9999 | mountd端口 |
这样开发板访问Windows的这些端口时,就可以访问到Ubuntu。
首先关闭Ubuntu,然后进行设置。
点击 编辑 -> 虚拟网络编辑器
然后点击更改设置
选择Vmnet8,点击NAT设置,进行端口映射的添加。然后点击添加,输入主机端口 22 ,虚拟机ip (就是刚才我们在ubuntu中查询的,我这里是192.168.161.128),选择TCP协议,虚拟机端口 22 ,然后点击确定。重复上一步骤,依次添加111,2049,9999 端口,确定并保存。
4.进行网络测试
输入
ping www.baidu.com
看到有数据返回,表示网络连通。
二、用C语言编写一个简单的输出 hello word 的程序。
使用vim编辑器
输入命令vim hello.c
进入vim编辑器,键入i
,进入insert模式,编写代码
#include<stdio.h>
int main()
{cout<<"hello world!";return 0;
}
编辑完成后,esc键,:wq!
退出vim编辑
输入命令
gcc hello.c -o hello
此时会生成一个hello文件
输入./hello
三、编写一个主程序文件 main1.c 和一个子程序文件 sub1.c
子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。
1.编写主程序文件main1.c
使用vim编辑器创建一个main1.c的文件
vim main.c
输入i,进入程序的编写,代码如下:
#include<stdio.h>
#include"sub1.c"
int main()
{int a=3,b=5;float x=2x2(a,b);printf("%.3f",i);return 0;
}
2.编写子程序sub1.c文件
使用vim编辑器创建一个名为sub1.c的文件
vim sub1.c
然后输入i,开始编写程序,代码如下:
#include<stdio.h>
float x2x(int a,int b)
{float i;i=a+b;return i; //返回i的值
}
3.在ubuntu系统用gcc 命令行方式编译主程序main.c 并运行
gcc -o main1 main1.c
./mian1
4.在windows系统下用vc++编译主程序main1.c 并运行
在vc++上创建一个main1.c的文件
代码如下:
#include<stdio.h>
float x2x(int a, int b)
{float i;i = a + b;return i;
}
int main()
{int a = 5, b = 6;float i;i = x2x(a, b);printf("%f\n", i);
}
运行结果
四、在ubuntu系统下用Makefile方式编程主程序。
1.安装make并创建出makefile文件
sudo apt-get install make
2.安装完成后用vim编辑器编写main与sub程序
利用gcc生成main.o与sub.o文件,创建并运用vim编译完成makefile文件
gcc -c sub1.c -o sub1.o
gcc -c main.c -o main.o
3.编写makefile文件:
touch makefile
vim makefile
文件中输入代码如下
4.编译运行:
make
./main
结果如下:
【嵌入式1】Ubuntu系统下运行C语言程序以及用Makefile方式编程相关推荐
- 在Ubuntu系统下运行c语言程序
第一周作业--嵌入式系统程序设计系统基础 作业要求 请编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int ...
- Ubuntu系统下编译C语言程序
文章目录 一.在Ubuntu下安装gcc 二.在ubuntu系统用gcc 命令行方式编译主程序并运行 三.在windows系统下用VC++编译主程序并运行 四.在ubuntu系统下用Makefile方 ...
- 在Linux系统中运行C语言程序
正式学习c语言的第一天 2022/1/10 在之前的学习中已经在Windows系统中用Microsoft VC++上实现了C语言程序的运行,现在将在Linux系统上运行C语言程序. 首先明确C语言 ...
- c语言在linux下运行程序设计,如何在Linux下运行C语言程序
如何在Linux下运行C语言程序 C语言是一个有结构化程序设计.具有变量作用域(variable scope)以及递归功能的过程式语言.以下是小编为大家搜索整理的如何在Linux下运行C语言程序,希望 ...
- deepin终端编译c程序_大神支招 如何在Linux下运行C语言程序
刚入门学习C语言程序的小伙伴比较常遇到的其中一个问题是:如何在Linux下运行C语言程序.今天针对这个热门问题,小编为大家准备了详细的教程! 小编先给大家普及一些关于C语言程序的基本常识:首先大家要清 ...
- Ubuntu系统中编写c语言程序教程
目录 1.准备工作 1.1 安装GCC及必要软件包 2.使用GCC编写C语言程序 2.1 编写一个整型运算反回浮点型的程序 2.2 在windows系统下使用编译工具编译该程序 3.使用Makefil ...
- ubuntu系统下运行可执行文件 (application/x-executable)
ubuntu14.04 LTS下执行属性为executable (application/x-executable)的文件的方法: 1. chmod +x filename 2. ./filename ...
- 在Linux下运行C语言程序
市面上常见的Linux都是发行版本,典型的Linux发行版包含了Linux内核.桌面环境和各种常用的必备工具,国内使用较多的是Ubuntu(乌班图).CentOS.Fedora. 我以Fedora 2 ...
- 怎么用centos7运行c语言程序_在Linux下运行C语言程序
市面上常见的Linux都是发行版本,典型的Linux发行版包含了Linux内核.桌面环境和各种常用的必备工具,国内使用较多的是Ubuntu(乌班图).CentOS.Fedora. 我以Fedora 2 ...
最新文章
- python注入_python的常见命令注入威胁
- java facets_Java UIComponent.getFacets方法代码示例
- 王道计算机考研 数据结构 课后编程习题代码(绪论、线性表)
- 【Redis学习】Redis实现分布式锁
- 什么是高并发,如何避免高并发
- node 大写_大写Node.js模块
- seo超强外部链接、内部链接技巧
- 安徽工业大学计算机考研历年分数线,安徽工业大学历年考研分数线汇总[2012-2021]...
- Mysql disk write 高_优化系列|实例解析MySQL性能瓶颈排查定位
导读
排查过程
- JCreator Error : Invalid path
- 高等数学(第七版)同济大学 总习题六 个人解答
- ELASTIC-PHP + IK分词器 + THINKPHP6 初次使用 (关键词查询)
- Kubernetes证书类型和适用场景
- 还记得那年大明湖畔的Java 7吗
- Java 标准输入输出流(System.in,System.out)使用
- STM32cubemax的下载与配置
- 博云与智领云达成战略合作,携手共研云原生大数据领域
- 听劝!不要啥都不懂就学PMP!这100个考试关键点,带你直击考试现场
- C语言这么厉害,它自身又是用什么语言写的?
- 自动化工具之SelendroidRobotium
热门文章
- 三极管基极下拉电阻的作用
- android 点击按钮来回切换图片
- 前端国际化如何对中文——>英文自动化翻译小demo
- 基于Matlab闭环Buck降压斩波电路Simulink仿真电路模型搭建
- 彩色复古装饰麻绳-----四色麻绳
- 手把手教你做音乐播放器(五)音乐列表的存储(上)
- 服务器宕机原因有哪些?服务器宕机解决方案
- java sleep的意义_thread.sleep的作用是什么
- hdu 1824-Let's go home 2-SAT (模板)
- 现在有些女的一个月工资两三千,每个月消费差不多两三千,你认为这算经济独立吗?...