Linux下C开发环境的构成和安装

2016-01-29 19:07 13 1 收藏

Linux下C开发环境的构成和安装,Linux下C开发环境的构成和安装

【 tulaoshi.com - Linux 】

 

  文/余海发

    本文介绍了Linux的C开发环境的构成和安装,使读者对Linux的C开发环境能有初步的了解。
  你了解Linux吗?相信现在越来越多的人会说“是”的。那么你了解到何种程度呢?不可否认,目前决大多数的Linux用户对Linux的了解还处于比较低级的层次,他们可能会几条命令、会配几种服务、会用rpm来安装软件、会操作KDE/Gnome界机等等,但是当他们遇到一些需要编译安装的软件时,面对一些简单的出错信息,他们就手足无措了。要想真正跨跃这些初级层次,你就不可能不去了解一些底层的东西,比如本文要讲到的Linux下的C开发环境以及本文之外的其它操作系统知识。

  Linux和C天生有不解之源,大家可能知道Linux的操作系统内核就主要是用C写的,另外Linux下的很多软件也是用C写的,特别是一些著名的服务软件,比如MySQL、Apache等。初学者可能在编译MySQL这样的软件时,遇到过各式各样的错误,其实只要你初步了解了Linux的C开发环境,你就能自选解决安装过程中的一些错误。

  Linux的C开发环境与Windows的有所不同,在Linux下,一个完整的C开发环境包括以下三个组成:

  1、函数库: glibc

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/linux/)

  要构架一个完整的C开发环境,Glibc是必不可少的,它是Linux下C的主要函数库。Glibc有两种安装方式:

  A.安装成测试用的函数库
   在编译程序时用不同的选项来试用新的函数库
  B.安装成主要的C函数库
   所有新编译程序均用的函数库  Glibc2含几个附加包:LinuxThreads、locale和crypt,通常它们的文件名随版本不同而类似于下列文件名:

  glibc-2.06.tar.gz
  glibc-linuxthreads-2.0.6.tar.gz
  glibc-localedate-2.0.6.tar.gz
  glibc-crypt-2.0.6.tar.gz

  2、编译器:gcc

  gcc(GNU CCompiler)是GNU推出的功能强大、性能优越的多平台编译器,gcc编译器能将C、C++语言源程序、汇程式化序和目标程序编译、连接成可执行文件,以下是gcc支持编译的一些源文件的后缀及其解释:

  .c为后缀的文件,C语言源代码文件;
  .a为后缀的文件,是由目标文件构成的档案库文件;
  .C,.cc或.cxx 为后缀的文件,是C++源代码文件;
  .h为后缀的文件,是程序所包含的头文件;
  .i 为后缀的文件,是已经预处理过的C源代码文件;
  .ii为后缀的文件,是已经预处理过的C++源代码文件;
  .m为后缀的文件,是Objective-C源代码文件;
  .o为后缀的文件,是编译后的目标文件;
  .s为后缀的文件,是汇编语言源代码文件;
  .S为后缀的文件,是经过预编译的汇编语言源代码文件。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/linux/)

  3、系统头文件:glibc_header

  缺少了系统头文件的话,很多用到系统功能的C程序将无法编译。

  假如用户在安装过程中少装了这些包,就会无法编译C源程序。初学者有时候选择自己定制软件包来安装,结果遗漏了这些包,导致无法编译源程序,不少人就只好重新安装一遍Linux。其实并不需要这样做,虽然从tar包来安装Linux的C开发环境对于初学者来说比较难,但是我们还是可以通过rpm包来迅速安装Linux的C开发环境的。下面以Red Hat 7.3为例,介绍如何安装Linux的C开发环境,如果是更高版本的Red Hat也可以参考,只是要注意软件版本的不同。

  由于gcc包需要依赖binutils和cpp包,另外make包也是在编译中常用的,所以一共需要8个包来完成安装,它们是:

  cpp-2.96-110.i386.rpm
  binutils-2.11.93.0.2-11.i386.rpm
  glibc-2.2.5-34.i386.rpm
  glibc-kernheaders-2.4-7.14.i386.rpm
  glibc-common-2.2.5-34
  glibc-devel-2.2.5-34.i386.rpm
  gcc-2.96-110.i386.rpm
  make-3.79.1-8.i386.rpm  如果连在internet上的话,可以直接从internet上安装,命令依次如下:

  rpm -ivh
  ftp://216.254.0.38/linux/redhat/7.3/en/os/i386/RedHat/RPMS/cpp-2.96-110.i386.rpm

  rpm -ivh
  ftp://216.254.0.38/linux/redhat/7.3/en/os/i386/RedHat/RPMS/binutils-2.11.93.0.2-11.i386.rpm

  rpm -ivh
  ftp://216.254.0.38/linux/redhat/7.3/en/os/i386/RedHat/RPMS/glibc-kernheaders-2.4-7.14.i386.rpm

  rpm -ivh
  ftp://216.254.0.38/linux/redhat/7.3/en/os/i386/RedHat/RPMS/glibc-2.2.5-34.i386.rpm

  rpm -ivh
  ftp://216.254.0.38/linux/redhat/7.3/en/os/i386/RedHat/RPMS/glibc-devel-2.2.5-34.i386.rpm

  rpm -ivh
  ftp://216.254.0.38/linux/redhat/7.3/en/os/i386/RedHat/RPMS/glibc-common-2.2.5-34.i386.rpm

  rpm -ivh
  ftp://216.254.0.38/linux/redhat/7.3/en/os/i386/RedHat/RPMS/gcc-2.96-110.i386.rpm

  rpm -ivh
  ftp://216.254.0.38/linux/redhat/7.3/en/os/i386/RedHat/RPMS/make-3.79.1-8.i386.rpm

  如果不是连在in

来源:http://www.tulaoshi.com/n/20160129/1508501.html

延伸阅读
1、去http://Java.sun.com/j2se/1.4.2/download.Html 下载一个Linux Platform的JDK,建议下载RPM自解压格式的(RPM in self-extracting file,j2sdk-1_4_2_06-linux-i586- rpm.bin)。 2. 上载到Linux服务器上,在shell下执行命令: [root@LinuxServer rpm]# chmod 755 j2sdk-1_4_2_06-linux-i586-rpm.bin [root@LinuxServer rpm]# ./j2sd...
摘要:本文档为在Debian GNU/Linux系统上安装 Java Development Kit (JDK/J2SDK) 的参考文档. 因为许可证的问题, 无法在Debian中直接提供SUN公司的Java 系统. 因此在此提供了安装Java的方法供您参考. 1. 获取 sun的JDK 可以选择从 Java官方下载: http://java.sun.com   或其它网站下载 JRE (J2RE) Java Runtime Environmen...
本文着重介绍如何在XCODE中,通过C++开发在IOS环境下运行的缓存功能。算法基于LRU(最近最少使用)。有关lru详见: http://en.wikipedia.org/wiki/Page_replacement_algorithm#Least_recently_used 之前在网上看到过网友的一个C++实现,感觉不错,所以核心代码就采用了他的设计。
1、去http://Java.sun.com/j2se/1.4.2/download.Html 下载一个Linux Platform的JDK,建议下载RPM自解压格式的(RPM in self-extracting file,j2sdk-1_4_2_06-linux-i586- rpm.bin)。 2. 上载到Linux服务器上,在shell下执行命令: [root@LinuxServer rpm]# chmod 755 j2sdk-1_4_2_06-linux-i586-rpm.bin [root@Linu...
    1、安装 Linux 要占用多少硬盘空间? 决定于要安装什么distribution的Linux,以及需要装入多少应用程序,是否安装原代码等。 例如最基本的Slackware Linux大约需要10MB的空间,包括X Windows则要80M,假如要把基本系统工具程序、常用应用软件以及TCP/IP网络软件安装的话 ( 即A、B、N系列编号软件),差不多40-50MB...

经验教程

642

收藏

41
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部