linux (ubuntu)下C语言入门(编译,make)

ubuntu上编译Linux内核步骤 在这个页面中,找到刚才记住的那一行(如果没记住的话, 就是"文件系统"这一列为"ext4"的这一行). 点击这一行,右键,选择"调整大小/移动"关闭虚拟机,在""虚拟机设置"中,点击"硬盘",点击"扩展磁盘容量",设置为合适的大小.但是这个操作并不能扩展文件系统的大小,需要进一步设置.如果提示文件系统空间不足而编译失败, 则会有一行的"已用%"为100%(或者百分比最大且容量最大的那一行),记住这一行的名字."-j4"是指定4个线程进行编程, 加快速度, 可以改成"-j8"等, 也可以不加。 阅读详情

以hello world为例。

#include<stdio.h>

int main()
{
	printf("hello world!\n");
    return 0;
}

gcc hello.c 生成a.out为可执行文件   ./a.out   输出:hello world!;


如果要指定可执行文件名:gcc hello.c -o hello.out   ----------->生成 hello.out


多个源文件:max.c  min.c 以及hello.c

int max(int a, int b)
{
	if(a > b)
	{
		return a;
	}
	else
	{
		return b;
	}
}

int min(int a, int b)
{
	if(a < b)
	{
		return a;
	}
	else
	{
		return b;
	}
}

#include<stdio.h>
// #include"max.h"
// #include"min.h"
int main()
{
	int i = 33, j = 30;
	int maxNum = max(i, j);
	int minNum = min(i, j);
	printf("the max value is %d \n the min num is %d \n", maxNum, minNum);
	return 0;
}

输入:gcc hello.c max.c min.c -o main.out --------main.out (gcc 版本比较高没有报错)

./main.out

输出:

the max value is 33 
 the min num is 30 

这样不方便,每次都要编译链接max.c 和min.c 两个文件,当然可以使用#include"max.c"但是相当于复制max.c的内容到hello.c中,所以直接使用头文件形式引入:

编辑头文件:

max.h
int max(int a, int b);
min.h
int min(int a, int b);
先将max.c 和 min.c生成静态库:

gcc max.c -o max.o

gcc min.c -o min.o

在hello.c中:

#include<stdio.h>
#include"max.h"
#include"min.h"
int main()
{
	int i = 33, j = 30;
	int maxNum = max(i, j);
	int minNum = min(i, j);
	printf("the max value is %d \n the min num is %d \n", maxNum, minNum);
	return 0;
}

然后:gcc hello.c max.o min.o 会生成:a.out可执行文件,这样别人看到头文件就知道函数max和min的参数以及返回值类型。


makefile编写:

输入:make -v 查看make版本。(sudo apt-get install make 安装)

vim Makefile

#this is makefile   //注释
hello.out:max.o min.o hello.c   //生成hello.out 需要max.o  min.o   hello.c  三个文件,下面一条是命令
	gcc max.o min.o hello.c -o hello.out
max.o:max.c                     //生成max.o需要max.c文件   min.o  同理   
	gcc -c max.c
min.o:min.c
	gcc -c min.c
Makefile文件就这么编写,然后输入:

make

生成:

first.c  hello.c  hello.out  Makefile  max.c  max.h  max.o  min.c  min.h  min.o 








Ubuntu系统下c语言的简单编程 ubuntu系统下编程c语言的流程,包括网络设置、apt源的更换、简单的c语言在Linux和Windows下的对比以及用Makelife编写上述程序。 阅读详情

相关推荐

Ubuntu下的Linux内核的编译及安装

推荐群:C/C++大学技术协会:145655849 Linux中的模块(Modules) Linux的module其实可以看作是内核的插件。 在Linux系统中,可以通过文件 cat /proc/modules xxxxxxxxxx1 1cat /proc/modules 查看相关的驱动模块。 也可以通过命令 lsmod xxxxxxxxxx1 1lsmod 查看,lsmod只是将/proc/mo...

wenpeng231的博客 3133

在c语言中make的用法,CMake的使用

一、基本使用安装:下载二进制包后可直接解压使用从源码安装则执行命令:./bootstrap; make; make install——尝试执行bootstrap失败使用:cmake dir_path,生成工程文件或makefile文件二、概念out-of-sourcebuild,与in-source build相对,即将编译输出文件与源文件放到不同目录中;三、...

weixin_39793576的博客 601

Ubuntu实用学习教程 ─────Ubuntu菜鸟教程

 Ubuntu 完全基于 Linux 操作系统, 可以免费得到社区及专业机构的支持。庞大的社区是它成长的沃土,请向这片动人的热忱敞开心扉。   自由,让 Ubuntu 与传统的私有软件从根本上不同: 免费不能用来遮羞,您有权修正它,直到满意为止。   Ubuntu 适合桌面和服务器。当前 Ubuntu 发布版支持 PC (Intel x86), 64-bit PC (AMD64) 和owerPC (Apple iBook 和 Powerbook, G4 和 G5) 架构。   Ubuntu 包涵了超过 16,000 种软件, 核心的桌面系统却只有一张光盘, Ubuntu 覆盖了所有的桌面应用程序, 从文字处理,电子表格到 web 服务器和开发设计环境一应俱全。

C语言 Make命令教程

make只是一个根据指定的Shell命令进行构建的工具 在linux和unix中,有一个强大的使用程序,叫make,可以用它来管理多模块程序的编译和链接,直至生成可执行文件 make使用程序读取一个说明文件,称为Makefile,Makefile文件中描述了整个软件工程的 编译规则和各个文件之间的依赖关系; Makefile就像是一个Shell脚本一样,其中可以执行操作系统的命令,它带来的好处就是我们能够实现“自动化编译”,一旦写好,只要一个make命令,整个软件功能就完全自动编译,极大的提高了软件.

追光少年的博客 4625

别再只看读写速度了!聊聊手机闪存eMMC、UFS3.1和SSD背后的功耗与体积玄学

本文深入探讨手机闪存技术eMMC、UFS3.1和SSD在功耗与体积设计上的关键差异。通过对比接口技术、封装工艺和温度管理,揭示移动存储如何在有限空间内平衡性能与能效,为消费者提供选购参考。重点关注UFS3.1的差分信号设计和全双工架构带来的显著优势。

weixin_27061475的博客 445

有限元分析必看:如何用ANSYS检查关键区域的网格质量(附操作截图)

本文聚焦有限元分析中决定仿真精度的关键环节,详细讲解了如何利用ANSYS Workbench对关键区域进行网格质量检查与优化。文章提供了从思维转变、实战操作到指标解读的完整流程,强调通过命名选择、Worksheet过滤器等工具实现定向检查,并给出了针对结构分析的关键区域网格质量阈值建议,帮助工程师提升仿真结果的可靠性与效率。

weixin_29200741的博客 464

在c语言中make的用法,cmake使用方法详解

CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。CMake 使用方法CMake的所有的语句都写在一个叫:CMakeLists.txt的文件中。当CMakeLists.txt文件确定后,可以用ccmake命令对相关 的变量值进行配置...

weixin_32043233的博客 4004

腾讯云TDSQL MySQL版 - 开发指南兼容性

语言结构 分布式实例支持所有 MySQL 使用的文字格式,包括: String Literals Numeric Literals Date and Time Literals Hexadecimal Literals Bit-Value Literals Boolean Literals NULL Values String Literals String Literals 是一个 bytes 或者 characters 的序列,两端被单引号'或者双引号"包围,TDSQL MySQL版

weixin_43872058的博客 908

在c语言中make的用法,CMake使用hellocmake&&make的使用

2016-12-11 20:38:32已经知道cmake这个东西很长的时间了,一直没有试验过,知道它是一个编译工具,在opencv和Linux下都有makefile的内容。感觉现在对源码的编译有点感兴趣,对于开源软件可以下载源码然后自己编译玩玩,刚刚也看了mooc的linux下C操作,make 命令和makefile文件的编写,知道了它对组织编译很有帮助。所以自己就像试试编译opencv.CM...

weixin_42651887的博客 663

GD32_ADC采样+DMA多通道扫描传输

所使用的MCU 片上集成了 12 位逐次逼近式模数转换器模块(ADC),可以采样来自于 16 个外部通道和 2 个内部通道上的模拟信号。这 18 个 ADC 采样通道都支持多种运行模式,采样转换后,转换结果可以按照最低有效位对齐或最高有效位对齐的方式保存在相应的数据寄存器中。我们主要介绍其多通道扫描转换和DMA传输功能,在多个通道轮询采集ad数据,并使用DMA分别保存各个数据值,其能大大提高ADC的工作效率。以下为ADC 模块框图:

Yin_w的博客 8159

SGM5860x高精度ADC驱动开发与SPI接口实战指南

本文详细介绍了SGM5860x高精度ADC芯片的驱动开发与SPI接口配置实战。内容涵盖芯片特性、SPI通信设置、寄存器映射、驱动初始化、数据采集处理、校准优化及调试技巧,帮助开发者快速掌握国产24位ADC的应用,提升工业测量项目的精度与稳定性。

vvv99的博客 717

中山野鬼 linux 下 C 编程和make的方法 (四、开始make)

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34248023的博客 209

【WRF-CMAQ实战指南】从环境配置到测试案例运行全解析

本文详细解析了WRF-CMAQ从环境配置到测试案例运行的全过程,包括系统环境检查、依赖库安装、源码获取与项目初始化、关键配置技巧、编译实战与排错、测试案例运行验证等关键步骤。通过实战指南,帮助用户快速掌握WRF-CMAQ的安装和运行技巧,提升空气质量模拟的效率。

year5的博客 244

Ubuntu系统下C语言的编译及make命令的应用

本文的目的是介绍如何在Ubuntu中编译多个C程序来熟悉在Linux系统上编写C程序的操作。相关程序名称分别为main1.c、sub1.c、sub1.h;以下采用两种方式进行编译,第一种是使用gcc在命令进行编译,第二种是使用Makefile文件编译。 一、ubuntu系统中编写简单的Hello World程序1.创建一个main.文件2.编写输出“Hello World”程序3.编译4.运行5.运行结果二、ubuntu系统中使用gcc编译C程序1.编写子程序文件sub1.c2.编写主程序文件main1.

qq_54496810的博客 5030

硬件原理图:从软件思维到硬件接口的嵌入式开发破局指南

本文为软件开发者提供了读懂硬件原理图的嵌入式开发破局指南。文章将硬件原理图类比为“硬件系统的架构图”,引导读者将软件API调用思维迁移到硬件接口理解上,详细解析了电阻、电容、二极管等常见元器件的“硬件API”功能与选型逻辑,并通过实战电路拆解,阐述了从原理图分析到驱动代码编写的完整思维链条,帮助开发者建立软硬件协同的系统级视角。

lg888的博客 493

UE5 GAS 学习笔记 1.2游戏标签

这一节对GameplayTag游戏标签进行详细的讲解。

CloudHuCoding 1927

Ubuntu桌面版下C语言的编译以及make的使用

ubuntu下的C语言模块编译与连接 文章目录ubuntu下的C语言模块编译与连接目的环境实验步骤总结 目的 熟悉编译工具GCC,在linux操作系统下对一些简单的C语言程序进行编译和执行。 熟悉make工具和makefile文件。 环境 ubuntu 18.04 桌面版 实验步骤 安装ubuntu18.04的虚拟机并下载编译工具GCC 编写 C 语言程序 使用GCC命令编译并连接两个程序 下载安装make 5.编写makefile文件 6.使用make命令 7.

li_de_kun的博客 386

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Linux下的C语言入门(ubuntu为例)

Linux下的C语言入门(以ubuntu为例)一、编辑器vi(vim)二、编译命令三、使用gdb调试代码四、多文件编译及makefile的使用五、拓展知识 一、编辑器vi(vim) vi是最常用的文本编辑器,我们可以使用它来编写C语言代码。 vi hello.c //编辑一个名为hello.c的文件 进入vi编辑器后,有两种模式:命令模式、插入模式。 一进来就时命令模式,输入i在当前光标处开始插入字符,可以用上下左右箭头控制输入。摁esc键可回到命令模式,下面介绍命令模式下几种常用的命令: 3 dd //

长理小生 4444

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Linux Ubuntu操作系统下运行C语言Makefile文件编写.

Linux下C程序的编写 练习使用gcc 编译器编译C 程序并执行,编写Makefile文件,使用make 工具编译程序并执行 具体要求: (1)编写简单的C 程序,功能为在屏幕上输出“Hello gcc!”。利用该程序练习使用gcc 编译器的E、S、c、o、g 选项,观察不同阶段所生成的文件,即*.c、.i、.s、*.o 文件和可执行文件。 (2)编写一个由头文件greeting.h、自定义函数文件greeting.c、主函数文件myapp.c 构成的C 程序,并根据这三个文件的依赖关系编写Makefil

yiokio的博客 1万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Linux驱动开发系列:整理入门Ubuntu知识

本文系作者学习Linux驱动开发Ubuntu入门篇时整理的一些基础知识,主要整理了ubuntu下Linux的一系列基本操作,以及常用shell指令,makefile语法等等,知识点基本覆盖后面驱动开发所遇到的主要知识点,当前文章也并非是最终版本,笔者在后续的学习中也会不断更新知识点,完善内容

嵌入式学习记录站点 6707

在ubuntu中使用gcc和Makefile编译c语言程序

Ubuntu 系统:有一定计算机基础,对命令行操作不陌生,或者未来打算从事 Linux 服务器端开发、云计算等方向的新手,可以在掌握了一定的 C 语言基础语法后,尝试在 Ubuntu 系统下学习使用 GCC 等工具进行编译,提前适应 Linux 开发环境。Windows 系统:如果是完全没有编程基础,对计算机操作也不太熟悉的新手,建议先从 Windows 系统下的 IDE 入手,如 Dev - C++,它轻量级且容易使用,可以帮助新手快速建立编程的基本概念,体验编写、运行程序的乐趣。

2401_83858903的博客 1680

Ubuntu系统使用gcc和Makefile编译C语言程序

本文介绍了Ubuntu系统下的嵌入式开发基础操作:1)安装Ubuntu 22.04系统并参考优快云教程;2)编写运行Hello World程序,包括创建文件、编译执行过程;3)实现多文件编程,通过main1.c调用sub1.c中的算术函数;4)使用Makefile自动化编译,详细解释了Makefile语法规则,并演示了编译、运行及清理操作。整个过程涵盖了从系统安装到多文件项目管理的嵌入式开发基础环节。(149字)

2503_93444456的博客 1782

Ubuntu系统编译c语言

本次从Ubuntu系统下完成最简单的C程序“Hello, World!”的编写、使用gcc、Makefile命令编译并运行成功开始,到编写包含主程序文件main1.c和子程序文件sub1.c的多文件项目,子程序实现一个算术函数供主程序调用,实现了C语言在不同系统下的成功实现。同时,也应注意其中的一些细节,如不要将Tab键错认为是空格键等。

2303_79816988的博客 739

Ubuntu系统进行C语言的编译与运行

在ubuntu上进行c语言相关试验

molongqishi的博客 4530

Ubuntu系统使用gcc和Makefile编译C程序

本文目的是为了通过在Ubuntu系统上编译多个c程序以此熟悉在Linux系统上编写c程序的操作。相关程序名称分别为main1.c、sub1.c、sub1.h;以下采用两种方式进行编译,第一种是直接使用gcc在命令行编译,第二种是使用Makefile文件编译。 目录(一)直接使用gcc编译c程序1.准备工作2.gcc直接编译(二)与windows平台编程对比(三)使用Makefile编译c程序 (一)直接使用gcc编译c程序 1.准备工作 编写main1.c #include"sub1.h" int.

qq_45237293的博客 5801

Ubuntu 18.04中C语言的编译以及Makefile的编写

Ubuntu 18.04中C语言的编译以及Makefile的编写一、Windows中的C语言程序运行二、在Ubuntu18.04下编译并运行三、以Makefile进行编译 一、Windows中的C语言程序运行 编写sub.h文件: 编写main1.h: 编译并运行: 二、在Ubuntu18.04下编译并运行 编写sub.h: float x2x(int a, int b){ return 2.0 * (a + b); } 编写main1.c: #include <stdio.h&gt

Baker的博客 935
上一篇: ubuntu 14.04在升级16.04时候,出现Failed to start Load Kernel Modules 解决方法
下一篇: android增量更新----------------最简实现
杨鑫校
博客等级 码龄11年 24粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值