怎么在Redhat linux下搭建C编程环境
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么在Redhat linux下搭建C编程环境相关的知识,希望对你有一定的参考价值。
参考技术A 要想在Linux下进行C语言编程,首先得搭建好一个编程环境。这里分别说明一下几个非常有用的软件包。如果你对Linux下软件安装方法还不清楚,请参考文章“Linux下软件安装方法总结”http://zhoulifa.bokee.com/5444771.html
1、gcc
要进行C语言编程,首先得有个C语言的编译器,Linux下常用的是GNU C Compiler gcc。
gcc软件是用来提供默认值的。从Depends可以看出要gcc真正工作必须有对应的cpp和gcc版本。
比如cpp-4.1和gcc-4.1、cpp-3.3和gcc-3.4
2、gcc-*
3、cpp
gcc要进行程序编译,首先需要进行一个预编译过程。该过程对程序源代码进行预处理。
4、cpp-*
5、libgcc1
gcc还依赖于libgcc1这个软件包。libgcc1是用于gcc软件自身的必须组件。
6、libc6
C语言程序要能够运行,需要一些运行时库文件和一些库文件操作命令。libc6这个软件包就是用来提供这些的。这个软件包几乎是Linux系统自带的,因为所有C程序的运行都离不开此软件包。
7、binutils
程序从源代码到可执行程序的过程中,必然需要一些工具来辅助完成。binutils软件包就是提供一些工具的
这个软件包提供下面这些非常有用的命令:
/usr/bin/size # 显示每个目标文件或归档文件的章节大小和总的大小
/usr/bin/objdump # 显示目标文件的信息
/usr/bin/ar # 归档文件管理工具,可以创建、修改或打开一个归档文件
/usr/bin/strings # 显示一个文件中的可打印字符串,比如文本文件的全部或目标文件里的字符串
/usr/bin/ranlib # 产生归档文件的索引
/usr/bin/objcopy # 复制或转换目标文件
/usr/bin/addr2line # 把一个地址信息转换为文件名和行号
/usr/bin/readelf # 显示 ELF 文件信息, ELF 文件格式即 Linux 目前流行的可执行文件格式
/usr/bin/nm # 显示目标文件里的符号
/usr/bin/strip # 去除目标文件里的符号
/usr/bin/c++filt # 识别 C++ 和 Java 符号
/usr/bin/as # GNU 汇编工具
/usr/bin/gprof #
/usr/bin/ld # GNU 链接工具
8、locales
这个软件包提供本地语言环境支持
虽然上面列了这么多必需的软件包,但实际上因为他们之间有依赖关系,所以在安装完系统后我们只需要输入下面一个命令:
apt-get install gcc
系统就会自动帮忙把这些软件包安装上。
9、libc6-dev
我们要进行软件开发,必然需要一些库文件和头文件,在Linux常用的就是GNU的C语言库libc,要安装开发工具必须安装这个libc6-dev软件包
11、glibc-doc-reference
理由同上,编程人员最喜欢的参考手册就是这个软件包了,可以称为Linux下C语言编程参考。
此参考手册有html和info两种格式,你可以用浏览器打开/usr/share/doc/glibc-doc-reference/html目录下的手册一页页看。把这里每个网页一点点看完了学会了基本上没有搞不定的问题了。
12、manpages-dev
在编程的过程中有时会记不得某个函数的用法,通常这时查man手册是比较快的,所以把这个manpages-dev软件包安装上。想要看某个函数的用法就man它。
这个软件包提供系统调用和库函数的在线手册。
13、make
在进行大项目时,通常我们的程序可能是由很多源文件组成的,各个源文件生成自己的目标文件,多个目标文件才链接形成一个新的目标文件或可执行程序。
在某个源文件发生变化时,我们只需要按照这种依赖关系运行各命令重新生成程序即可,而不需要对所有源文件重新编译。哪个该重新编译呢?可以让make程序帮忙 维护
14、make-doc
要运行make工具,先得学会怎么用它吧?看这个软件包提供的文档就行了。
安装好这个软件包后,用浏览器打开/usr/share/doc/make-doc/make.html文档开始学习make的用法吧。
15、gdb
编写程序必然需要调试,在Linux常用的程序调试工具是gdb
16、gdb-doc
有了上面的gdb程序调试工具了,怎么学会使用它呢?安装这个软件包gdb-doc,即gdb的文档
安装好软件后就可以通过电脑上的文档自学gdb的使用了。
17、编辑器
要编写C程序,总得有个编辑工具吧?Linux下这类工具相当多,关键在于熟练掌握一种。
比如文本界面的编辑器vi, vim, emacs等
比如图形界面的编辑器gedit, kate, kwrite等
又比如IDE环境的:anjuta, eclipse, kdevelop等
选择一个自己习惯的熟练使用起来就行了。
这些只是基本的Linux下C编程环境必须的软件包。如果这些熟练掌握了,可以试试下面这些软件包:
autoconf, automake1.9, libtool, flex, bison
当然还有对应的文档用于自学。
甚至可以试试IDE环境下其它语言编程,比如gtk, qt等
Linux系统搭建C语言编程环境
项目 | 内容 |
---|---|
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/nchu |
这个作业的要求在哪里 | https://edu.cnblogs.com/campus/nchu/2021-spring-Linux/homework/11954 |
学号-姓名 | 18043207-朱蓉 |
作业学习目标 | 1.Linux系统下C语言开发环境搭建 2.学习Linux系统环境C语言开发过程 |
实验内容
1.在Linux系统中安装C语言编译器等开发工具(编辑器,编译器)
安装c语言开发环境
查看gcc的版本信息
2.学习Linux系统中如何查看帮助文档
我们通过man命令查看帮助文档
2)命令行模式简单C语言编译链接等操作
3.Lin
ux系统下单个C语言文件编译链接过程(预处理,编译,汇编,链接,执行)
通过vim编辑器编写一个最简单的C语言程序。先创建一个文件夹,然后进入该新创建的文件夹
1)预编译
用vim test.i查看test.i文件的内容
2)编译
用vim打开test.s文件来查看内容
3)汇编
通过objdump命令来反汇编该文件来分析文件内容
4)链接
可执行文件是二进制文件,同样需要用objdump命令来反汇编该文件分析文件内容
5)运行
4.Linux系统下多个C语言文件编译链接(命令行方式,make方式)
在exp4文件夹下面再建一个文件夹mfc(multi-files compile)
在该文件夹下面创建5个文件,文件名分别如下:
每个文件的内容分别如下:
编译
编写一个简单的Makefile,通过make工具帮助我们进行编译。在当前文件夹编写一个Makefile文件
直接在终端输入make就可以进行编译链接操作
以上是关于怎么在Redhat linux下搭建C编程环境的主要内容,如果未能解决你的问题,请参考以下文章