我是这样学习Linux下C语言编程的-Linux下C语言编程环境的搭建


要想在Linux下进行C语言编程,首先得搭建好一个编程环境。这里分别说明一下几个必需的几个软件包。
$ ^. k; @! C: U% V' B如果你对Linux下软件安装方法还不清楚,请参考文章“Linux下软件安装方法总结”
7 z* K3 J/ k5 Q6 ], d* F1、gcc
9 Q9 A# r, R" W4 l* A! ?要进行C语言编程,首先得有个C语言的编译器,Linux下常用的是GNU C Compiler gcc。软件包的信息如下: 4 m! e; g3 e7 C) w1 r# _3 [" x
引用:
" d! g* W1 |2 ?
Package: gcc
! T) x: X+ Z$ a, g& RPriority: optional # B9 W; C1 ]5 j. Y. S
Section: devel * T4 @# z2 C7 A+ m6 N
Installed-Size: 64 & x% }, C4 i) Q& A" z9 V: u
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
- E0 A2 R$ M3 L; G& xOriginal-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
& m' @& K+ U# ^  y: RArchitecture: i386 - [/ p" {% q5 V: ~
Source: gcc-defaults (1.41ubuntu3)
& j  e0 /0 a4 HVersion: 4:4.1.1-6ubuntu3
" g  L9 s& C; `Provides: c-compiler , ?+ T  m$ U  z; d4 }- c6 Z' n! c5 K
Depends: cpp (>= 4:4.1.1-6ubuntu3), gcc-4.1 (>= 4.1.1-2) 2 ~5 |" z; q2 l) W
Recommends: libc6-dev | libc-dev
8 G2 h5 h, r/ A/ // K5 RSuggests: make, manpages-dev, autoconf, automake1.9, libtool, flex, bison, gdb, gcc-doc
1 s( V5 w: t$ /Conflicts: gcc-doc (<< 1:2.95.3) 3 e( ?# i& H" [2 q* W$ Z1 z9 F
Filename: pool/main/g/gcc-defaults/gcc_4.1.1-6ubuntu3_i386.deb 7 j4 C6 Q6 o5 l- d4 I
Size: 5148
- |/ ^& t6 w9 ]% H5 QMD5sum: 50de0a13f56c9ac41f85ea7fcabde0b2 6 ]/ |; C; ?/ v# G: /
SHA1: c29cc1ea61d536d8ecb024fac83222c935a2703e
) A# Y3 Q4 A) F$ H9 [, [* fSHA256: 65103d0dbc2c7508184ac177a8ea5eb90a82d873b0fb7fd65b9764b691673708 ' Q3 T! W! }, u& N% |
Description: The GNU C compiler ! o4 S3 B) j2 }/ o& X3 H
This is the GNU C compiler, a fairly portable optimizing compiler for C. + p: f" F( J( w+ a" r0 g
. & Z! A* e5 H# T0 Y8 a
This is a dependency package providing the default GNU C compiler. ! S: Z0 R. b* k) ?) v
Bugs: mailto:ubuntu-users@lists.ubuntu.com
* l) `1 N+ q6 u5 s/ ZOrigin: Ubuntu ; H  h- u; u7 P9 F! t6 t# _
Task: ubuntu-desktop, kubuntu-desktop, xubuntu-desktop
/ f3 U0 ~6 ^9 @# n
( A- ~. h) ]- ^- }; F0 I
我们从上面可以看出这个gcc软件是用来提供默认值的。从Depends可以看出要gcc真正工作必须有对应的cpp和gcc版本。 7 v) y2 u( g& k: z- {* T* l0 i
比如cpp-4.1和gcc-4.1、cpp-3.3和gcc-3.4
+ }, V6 ]8 ?# ?! }3 l6 k ) L! U2 Z8 ]. o( F0 `
2、gcc-*
; ?* i- o2 `, k' [这里以gcc-4.1版本为例,该软件包信息如下:
$ Z1 M/ l% `( T9 {# {
引用:
8 w$ J' m% F) A6 I* uPackage: gcc-4.1
" ^' X; Y5 m# @6 L1 c$ U5 r- BPriority: optional 9 h! n3 M( b6 G. c+ {9 j$ O
Section: devel 0 C9 e! o9 @- ~- P9 e1 V& V; q$ t( D" g
Installed-Size: 1456 : d, C: q& a4 f" T2 a
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com> & O1 l/ G- K! E* ^. l4 }/ Q- Z
Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org> . t. k  P4 g# x. M$ b
Architecture: i386
2 R! {7 S, h* e# A2 J- ]Version: 4.1.1-13ubuntu5
/ K/ k- Z4 ~3 h% L/ JReplaces: gcj-4.1 (<< 4.1.1), libssp0-dev (<< 4.1.1-6)
; y7 _. x; c- z3 z0 p% D4 jProvides: c-compiler, libssp0-dev
. N' A8 f5 a, I) Q0 K: k- NDepends: gcc-4.1-base (= 4.1.1-13ubuntu5), cpp-4.1 (= 4.1.1-13ubuntu5), binutils (>= 2.16.1cvs20051214), libgcc1 (>= 1:4.1.1-13ubuntu5), libc6 (>= 2.4-1)
1 V" M7 I, }# N( {9 f! L4 H  h6 ARecommends: libc6-dev (>= 2.3.6-7), libmudflap0-dev (>= 4.1.1-13ubuntu5)
. Z1 g3 {$ x1 d% q% /, NSuggests: gcc-4.1-doc (>= 4.1.1), gcc-4.1-locales (>= 4.1.1), libc6-dev-amd64, lib64gcc1 (>= 1:4.1.1-13ubuntu5)
' B' j4 r3 w  m- H* J- [% t9 E, YConflicts: gcj-4.1 (<< 4.1.1), libssp0-dev (<< 4.1.1-6)
1 t7 H5 K! j5 ^6 n' a0 N5 n8 pFilename: pool/main/g/gcc-4.1/gcc-4.1_4.1.1-13ubuntu5_i386.deb . M" R. k9 ~: B8 /% @* V
Size: 609694 ) j0 t' Y) A2 @, D' m
MD5sum: 522696065e5152e9b8f2fe0c637340eb
! f# e) T6 Y6 `: xSHA1: 3d7fedaccdd6180684849571f15bf75cc8cf0a56 0 G0 x! s: /3 C1 m, t
SHA256: e77e3ed94f79d2bd6145fed9446c6216eb7c35a7a0e94148ae9f6d2f7c18d52e
/ l" M: D7 V" a% P. `Description: The GNU C compiler
) a# u% d1 f+ N# C; I This is the GNU C compiler, a fairly portable optimizing compiler for C.
& @+ D& A% V% Q) N- WBugs: mailto:ubuntu-users@lists.ubuntu.com % // m' i8 a, r" s# x$ Z
Origin: Ubuntu & {. P; Q# e1 {! /4 H" c
Task: ubuntu-desktop, kubuntu-desktop, xubuntu-desktop
! L  v0 |4 p2 Z+ N& z7 f
6 I: u1 y9 w& K$ n' q& w% Y3、cpp
1 b6 ?; B+ E1 f/ h9 bgcc要进行程序编译,首先需要进行一个预编译过程。该过程对程序源代码进行预处理。 8 n5 M8 `/ b3 p/ V0 J6 P& m3 g
cpp软件包的信息如下: # i6 p! @" d, `8 ?, ?* L
引用:
; j+ z9 t9 J! c- G/ @5 q
Package: cpp
5 a+ A1 S" F8 Y0 `Priority: optional ' h3 X2 N8 P  M9 Y/ ]
Section: interpreters
/ ^: L% N4 Y- a+ ^: vInstalled-Size: 96
" s7 @, k- W2 q* {) I; rMaintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
/ _, D" B5 @; Y" _Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
5 X9 y( s( M$ A* oArchitecture: i386 & B9 d) ^! H2 {+ G4 Q, j: F' F
Source: gcc-defaults (1.41ubuntu3)
$ X0 q1 S" ^( `Version: 4:4.1.1-6ubuntu3 % M: I7 T+ k# o6 k' ]( o. ]
Depends: cpp-4.1 (>= 4.1.1-2) 3 ?9 U: W, X9 L+ O  p7 s7 t3 @' U; Y
Suggests: cpp-doc
- l- F( r9 W3 H. `7 ]Conflicts: cpp-doc (<< 1:2.95.3) 9 s* G1 }& g% S7 Z
Filename: pool/main/g/gcc-defaults/cpp_4.1.1-6ubuntu3_i386.deb ; ~+ {6 @! p! O; k7 R2 K
Size: 31172 , q% T& p# X0 A
MD5sum: 1d16eb3da2478b7ded37d185968237b0
* h2 g: m8 i4 w; f5 sSHA1: 688cc7572783577825c5430252b04da31977c129
1 Q( f- C9 x$ D* W2 W, k6 x+ ZSHA256: a75d7c4446f45e94ec947307d90cf2776441baa78cd511192128e6cb1108f6a2
, K. o+ ?, B  U1 J. O9 C' IDescription: The GNU C preprocessor (cpp) # u3 f7 c2 o+ |% g+ X
The GNU C preprocessor is a macro processor that is used automatically ' J6 m% S1 A4 ^" G/ O
by the GNU C compiler to transform programs before actual compilation.
7 q0 N- @% u; i3 I- }2 K6 L .
6 o( O& X# r; /8 T4 R  ^5 g This package has been separated from gcc for the benefit of those who * w1 M/ ]9 _! h, _+ J8 u! T) P
require the preprocessor but not the compiler. . {9 B* U# W: B. h4 F5 t5 i
. , T4 P7 _' x" s# q
This is a dependency package providing the default GNU C preprocessor. 2 A2 V9 M: T3 n, v: a$ u3 B3 b: h
Bugs: mailto:ubuntu-users@lists.ubuntu.com 4 {0 Z2 L+ r3 k& r2 I
Origin: Ubuntu 4 Z& e& h: I* G* R, i1 e% h
Task: ubuntu-desktop, kubuntu-desktop, edubuntu-desktop, xubuntu-desktop ) r1 ?' }" S. j1 H9 G, J; ]
7 u' X# H# G" H! B! Q4、cpp-* : A1 K5 X& r# e6 `7 S0 w& S
这里以cpp-4.1为例,软件包信息如下: ' a. T. ~- K1 x) h
引用:
) b  B* G, y1 e0 R# @' @5 |
Package: cpp-4.1 7 j' V! B/ D- X  |' U# W" Z( `
Priority: optional ! E  P) a# w8 v. V
Section: interpreters 3 G  b* s6 L& h+ Q
Installed-Size: 5196 . x( r* j# }1 a7 k. |0 f& H
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com> & O& y; B8 I8 Y
Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
% @$ D' E9 L) [$ D( QArchitecture: i386
: u8 @, I+ }% /9 x% hSource: gcc-4.1 7 R1 L: B0 a+ w2 ~
Version: 4.1.1-13ubuntu5
6 I6 x$ o( d1 n. tReplaces: gcj-4.1 (<< 4.1.1) / ]1 @. S0 o0 u5 S8 q
Depends: gcc-4.1-base (= 4.1.1-13ubuntu5), libc6 (>= 2.4-1) 3 ~& a3 B; B# A7 [* R
Suggests: gcc-4.1-locales (>= 4.1.1)
: r/ R, a7 n! E4 zConflicts: gcj-4.1 (<< 4.1.1) / R0 R8 j0 B* h6 l! L9 B
Filename: pool/main/g/gcc-4.1/cpp-4.1_4.1.1-13ubuntu5_i386.deb
7 g$ Z1 W8 x0 _0 |Size: 2309026
* K) P/ ]" [) C6 VMD5sum: abfee8be3d7aeb0ad3eb4e7738838dca
2 p( r9 s6 /8 b) o: |6 v# O/ YSHA1: 8a51c79c2b961686b98617772b9da4800f173dbe
) O: _/ ?; R) D0 nSHA256: 115aad59c02eee574066e21e6ed7a32bee1ed86e3abb73189645928832258ea0
& M' D& U' B+ u3 j4 A$ B! L$ UDescription: The GNU C preprocessor 4 ]$ c: C1 @6 g: [4 E: /5 X* f
A macro processor that is used automatically by the GNU C compiler ; n; N& C0 q+ z* K
to transform programs before actual compilation.
; c3 g" w- g5 o8 f .   M: _% k8 U' H1 i  @
This package has been separated from gcc for the benefit of those who
9 Q( V! i2 p) y1 j  h6 Y0 B. O4 J) _ require the preprocessor but not the compiler. / B* q# /0 v) R5 v* {
Bugs: mailto:ubuntu-users@lists.ubuntu.com 9 |* _6 g0 E: k2 p/ {
Origin: Ubuntu
0 u) V! t: W9 G! A' U4 ]Task: ubuntu-desktop, kubuntu-desktop, edubuntu-desktop, xubuntu-desktop
8 ~( U7 ?" `) t9 B0 A3 i' a
! x2 f! g* K/ c; {& U. h
5、libgcc1 1 d- V) V; j2 `6 e/ U  `
gcc还依赖于libgcc1这个软件包。libgcc1是用于gcc软件自身的必须组件。软件包信息如下: , I) o% s* k, i/ v! C4 G
引用:
6 i% Q$ t# /* GPackage: libgcc1
1 g; i+ i3 y& A) W4 y, q! P  KPriority: required
+ c; V' N0 y, t* [9 W7 ESection: libs 1 y; w" S& Y7 o( t2 B- e2 ?* l
Installed-Size: 68 $ F, D' a0 [$ F5 o* e& l  v# C
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com> : Q0 D. p" `2 y$ g0 @
Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
! q! Y; E# _, G7 o; R/ A& mArchitecture: i386 / Q7 u, T) ]3 ?5 Q
Source: gcc-4.1 (4.1.1-13ubuntu5) ' s" b, q9 @3 m; O
Version: 1:4.1.1-13ubuntu5
) L% J0 L3 K7 H2 Z  M9 ODepends: gcc-4.1-base (= 4.1.1-13ubuntu5), libc6 (>= 2.4-1)
1 H* s; h" z: F5 L+ F* C1 C, `Filename: pool/main/g/gcc-4.1/libgcc1_4.1.1-13ubuntu5_i386.deb
' M# l1 X5 u) [8 a- b  Q7 e7 H8 bSize: 21404 ' o! e/ b7 F; Z) Y3 r1 {
MD5sum: 879959bc964403be55aa096a8bb269f9
( [, |' /% I; x! D9 aSHA1: 3a3cfd824e25a2ce9008d98da1269f5ffdb7507f
1 S1 n* p( x, ?( f6 /! O' L) dSHA256: 62f3f64daaa1dd19fc76d966718184d1e0e0ee9f733f7f955b8b09e27b69a7d1
3 H" [5 c# U+ {Description: GCC support library ; Z& x2 z3 /" g' n
Shared version of the support library, a library of internal subroutines
7 `: ~; L5 /, E% R6 b that GCC uses to overcome shortcomings of particular machines, or
+ M; m4 j  n: J# K& }7 D special needs for some languages. # K( Z4 `4 X; u5 Q) B
Bugs: mailto:ubuntu-users@lists.ubuntu.com $ B% ?3 Y6 J; X# F; A8 i$ z" `
Origin: Ubuntu % ?: }; y, l, B) u* G6 m
Task: minimal
: K, R2 F5 W3 I7 }# N
: n7 G# n9 _% J/ r( ~
6、libc6 ! x$ F, C7 l1 S
C语言程序要能够运行,需要一些运行时库文件和一些库文件操作命令。libc6这个软件包就是用来提供这些的。这个软件包几乎是Linux系统自带的,因为所有C程序的运行都离不开此软件包。软件包信息如下: 2 i+ /: Z- D" t6 B1 Q, i3 _7 x: Z
引用:
0 ~0 ~  a8 }4 C, }, NPackage: libc6 9 n4 K4 a" `/ r$ o5 ^: h6 p4 |8 w3 N
Priority: required 4 Q& B' d! n+ x( j2 k& t% i& u* ~
Section: base
# A6 d, T) C3 QInstalled-Size: 9992 / a; [' O" q# o' S" A
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
$ u' U. s2 K. p9 j3 M5 h, @Original-Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org> 8 M8 w: A' y  p' ?
Architecture: i386
- b- M8 b- J$ iSource: glibc 8 w& }- {, x2 T- {' z# }9 ^- u
Version: 2.4-1ubuntu12.3 4 A4 w3 [* p4 N) /1 R- X8 z
Replaces: ldso (<= 1.9.11-9), timezone, timezones, gconv-modules, libtricks, libc6-bin, netkit-rpc, netbase (<< 4.0)
# u. q) E& X) e4 QProvides: glibc-2.3.6-2, glibc-2.3.5-3
5 ~, @; r% X1 V% @Depends: locales (>= 2.3.11) 4 h# W7 U4 z' o* F
Suggests: locales, glibc-doc - J3 I- f+ Q9 j2 X8 P
Conflicts: strace (<< 4.0-0), libnss-db (<= 2.2-6.1.1), timezone, timezones, gconv-modules, libtricks, libc6-doc, libc5 (<< 5.4.33-7), libpthread0 (<< 0.7-10), libc6-bin, libwcsmbs, apt (<< 0.3.0), libglib1.2 (<< 1.2.1-2), netkit-rpc, wine (<< 0.0.20031118-1), cyrus-imapd (<< 1.5.19-15), e2fsprogs (<< 1.35-7), initrd-tools (<< 0.1.84.1), libterm-readline-gnu-perl (<< 1.15-2)
2 g  A' h: l% y: ~8 B" u: n# pFilename: pool/main/g/glibc/libc6_2.4-1ubuntu12.3_i386.deb
# J  i0 {; ~3 V! i/ o( q; eSize: 4129182 ; g, N+ Y- O; z% I( q8 T2 ]! v
MD5sum: 012994de4fa9093d6fdba6c2304ddb9a
! i) Y5 q3 Y1 Q$ C; X9 ^SHA1: 187b850b1ac6153838ae2c1f8518342325ffe2ca . v% ]% B" Q# Q$ J" ?! P: z
SHA256: 6ad0ee8cccb09117df4f6c02a275940b8bb27883219b205cad1840ccf870a790 ) X4 v1 ~/ E% S! n9 r( T4 _8 F3 B
Description: GNU C Library: Shared libraries
3 p! `- y: W/ U9 f9 @, E) G8 ]. i8 ? Contains the standard libraries that are used by nearly all programs on   U* M# I% X, d$ K8 Y5 j6 M0 r
the system. This package includes shared versions of the standard C library
" k; f3 F% V% s: {2 G+ u and the standard math library, as well as many others.
6 a6 W  E9 y. X, r. q: z3 XBugs: mailto:ubuntu-users@lists.ubuntu.com 0 U. h1 F/ E8 x( I4 K' S) f
Origin: Ubuntu
% H& w0 e) z& p# wTask: minimal , f9 Q8 d$ Z9 X8 u0 Y1 R4 ]4 g
! J4 R8 N, m# r+ L, g5 ^
7、binutils ' h, P- a( Q9 M7 V7 b* Q3 i
程序从源代码到可执行程序的过程中,必然需要一些工具来辅助完成。binutils软件包就是提供一些工具的,软件包信息如下:
2 o+ J2 v0 K! f5 |2 y: M" D
引用:
, |- T/ M. u  r: iPackage: binutils
9 O+ r: I3 ]; R% ]" A3 D6 y" @" PPriority: optional * p* I( M- L- l' c6 d
Section: devel . y  /* d$ t) @
Installed-Size: 7076 ) q. w7 R  H  H  i/ K* K/ P
Maintainer: James Troup <james@nocrew.org> ' I3 j7 P1 y/ U+ @
Architecture: i386
5 J& W9 r( ~5 c( k* y6 }Version: 2.17-1ubuntu1 ; O& o$ _$ V* {* [
Provides: elf-binutils 1 g, e6 R) T, l
Depends: libc6 (>= 2.4-1) + /1 G  d8 h3 |. Z% X7 p# x, A+ {
Suggests: binutils-doc (= 2.17-1ubuntu1)
; e1 w! f, q0 |4 g2 p! ?; ]# x9 hConflicts: gas, elf-binutils, modutils (<< 2.4.19-1)
8 [7 F7 c( M9 Y: f% m/ v% i; fFilename: pool/main/b/binutils/binutils_2.17-1ubuntu1_i386.deb . n; R& {+ J/ b. G0 g! z
Size: 1440506
; C+ u+ {- /1 l4 d  jMD5sum: e9ae8f7ad19ce94dbfb2d96c3023941b . F: L' A4 y6 ]) i
SHA1: 58bb97665e26785b1667f9d988443b9719c57bea 2 u* z" h/ i) W, /! R2 o3 {+ o% C
SHA256: 43c9ee10660b853deea247c21c5ad61d5d184e6b13484eb6c6cd696d17eae31e ( x2 ]" Z' g; l# G$ ]
Description: The GNU assembler, linker and binary utilities
  X; U0 k7 {3 @. a0 r The programs in this package are used to assemble, link and manipulate
. A' W/ E5 F; l binary and object files.  They may be used in conjunction with a compiler
9 ]# V; /% W5 v* Z, ^  T8 ~6 r4 a and various libraries to build programs. 2 I7 z% _, l. r; b+ g2 K
Bugs: mailto:ubuntu-users@lists.ubuntu.com
( G4 J) v5 b! g2 l: F, W0 F# q9 ~Origin: Ubuntu 0 d( /$ b& p: i+ f
Task: ubuntu-desktop, kubuntu-desktop, edubuntu-server, xubuntu-desktop
+ z; I! f  R) g4 U; |
" a- k$ h% O2 H, V这个软件包提供下面这些非常有用的命令: 5 L$ i6 ?) E) k* [9 h
引用:
" V5 `6 F5 h7 D1 x) z7 s& //usr/bin/size  # 显示每个目标文件或归档文件的章节大小和总的大小 1 y) /8 ?1 f/ Y3 A9 E
/usr/bin/objdump # 显示目标文件的信息
6 T2 B. f. A1 ~* t' i/usr/bin/ar # 归档文件管理工具,可以创建、修改或打开一个归档文件
1 t: o% D) b# o1 e6 H6 o3 i/usr/bin/strings  # 显示一个文件中的可打印字符串,比如文本文件的全部或目标文件里的字符串
$ b  C4 p5 c% B+ X& u- U1 ^* J8 K/usr/bin/ranlib # 产生归档文件的索引 " @, v6 J$ ?8 q
/usr/bin/objcopy # 复制或转换目标文件 * b) ~# K/ F, k+ {9 i7 z
/usr/bin/addr2line # 把一个地址信息转换为文件名和行号 % N9 V  d. N& _/ G! U% b2 ^
/usr/bin/readelf # 显示 ELF 文件信息, ELF 文件格式即 Linux 目前流行的可执行文件格式 0 F( D: P+ F+ A; K  b) l
/usr/bin/nm # 显示目标文件里的符号   `2 B: K9 g0 J* [' Y( P
/usr/bin/strip # 去除目标文件里的符号
% B) z/ s8 _! x' k$ z/usr/bin/c++filt # 识别 C++ 和 Java 符号 ; ?) h  C" w0 E
/usr/bin/as # GNU 汇编工具
) // k# j# y5 b9 W/usr/bin/gprof #
% n+ K: Z% s3 j/ r/usr/bin/ld # GNU 链接工具
) U1 z4 C; B' Y7 N6 /
6 [4 V+ ?3 _) z
8、locales
# j3 `; [3 I1 S7 f% K; `  c) S; a3 s  /这个软件包提供本地语言环境支持,软件包信息如下: + H! K  K5 {- s9 O+ j' ^- i
引用:
/ n% U; {# O, u0 H0 L$ G
Package: locales " O- `( R% ~# i- K2 ]; z" S; ~
Priority: required
; x( Q+ d5 f$ q  Z) ]3 ]8 BSection: base
. `( s3 h7 J* a! w. r8 b6 JInstalled-Size: 7284
. y9 y* h7 v1 V2 g1 W" ?* sMaintainer: Martin Pitt <martin.pitt@ubuntu.com>
5 Q/ l- c2 @6 Q3 ~Architecture: all
( V- L+ w( ^1 n' s$ uSource: langpack-locales - T( `7 n5 h: c" s2 i
Version: 2.3.22 . z  ~, O0 e, d  c
Replaces: belocs-locale-data, base-config, libc6 (<< 2.3.6-0ubuntu6), libc6.1 (<< 2.3.6-0ubuntu6)
- q" p1 S0 E* m. d7 i0 S  pDepends: belocs-locales-bin (>= 2.4), tzdata
1 o' [0 J$ R$ ?1 ]2 Y$ d' bConflicts: belocs-locale-data, base-config 5 T+ @# q0 `/ S! N# c8 ^' _
Filename: pool/main/l/langpack-locales/locales_2.3.22_all.deb
5 n% a* O$ m$ S+ {Size: 3023314 ! I# T3 W% r2 {) B
MD5sum: bfc03e46a01addb754b9ea03979c3458
" v; @0 H* /& W+ }3 Y" J; tSHA1: 219943450cf30851870b89cabe766da04b4cdff3 0 _$ o: ^+ @5 U4 B
SHA256: fe9345e58e70db1c8c6e798f40a07d988f2d4c5de4408e9c8ac3db87d99fbe24 $ r; N3 B/ M& c( N
Description: common files for locale support 6 x: Z! ?1 W. |1 J
This package provides support for localized environments (locales).
1 W( n% g( b3 ^. y It installs character and transliteration maps, provides the POSIX
' {3 m- /: y; @0 C' n2 g6 Q locale definition and provides common scripts for language pack
% n  _1 J! t, N/ ?4 y& / handling. : O1 i" R) c* X
.   |2 l  q$ p9 p, |
The actual locale definitions are not part of this package, these are . ^& I; g2 U% {4 g- Q3 t& L9 ?0 g
shipped in the language packs and are installed and removed ' o: m2 ?: A' U9 G
automatically.
0 I" p' a; `/ K" m) ^9 }! x" f3 E% oBugs: mailto:ubuntu-users@lists.ubuntu.com
) D( ?2 r5 `6 w- C- p& {# M5 p8 qOrigin: Ubuntu ' o* Z5 o1 Y6 `7 K" Z4 y
Task: minimal
  [1 X7 j0 X9 C2 `% ~" y
. g! F' @, T7 j9 o( q7 z
虽然上面列了这么多必需的软件包,但实际上因为他们之间有依赖关系,所以在安装完系统后我们只需要输入下面一个命令:
复制内容到剪贴板
代码:
apt-get install gcc
系统就会自动帮忙把这些软件包安装上。
4 I- t; j; y" j+ R- d& F/************关于本文档******************************************** / K5 c; H7 d: G" I; L, c
*filename: 我是这样学习Linux下C语言编程的-Linux下C语言编程环境的搭建 $ X6 d8 K  q6 o* /) d
*purpose: 列出Linux下C语言编程者必备的几个软件包
  }9 ?; j3 x7 I*wrote by: zhoulifa(zhoulifa@163.com) 周立发()
: u  y% _& V4 K$ c, b; R" zLinux爱好者 Linux知识传播者 SOHO族 开发者 最擅长C语言 . I4 g8 r# i" T
*date time:2007-02-09 18:20
/ l$ y; Z4 F. s6 O*Note: 任何人可以任意复制代码并运用这些文档,当然包括你的商业用途
1 /: q: d. _2 Z! ]3 r* 但请遵循GPL # q4 D" K) D% H0 F! Z
*Thanks to:Ubuntu
% B4 c1 I( F, ~3 H9 o*Hope:希望越来越多的人贡献自己的力量,为科学技术发展出力 ; A9 n6 S3 `- {0 }2 L4 @# ~
* 科技站在巨人的肩膀上进步更快!感谢有开源前辈的贡献! & D8 D* y2 |( N# p% j; E! U( J
*********************************************************************/ 3 @- @1 n4 m- M  Z
9、libc6-dev ! P8 t. ]$ L) ~; n( X# T
我们要进行软件开发,必然需要一些库文件和头文件,在Linux常用的就是GNU的C语言库libc,要安装开发工具必须安装这个libc6-dev软件包,信息如下:
+ K/ S! H& t5 X
引用:
; L( F* h( Z+ f" j+ v2 q8 E
Package: libc6-dev " p/ /9 F5 w; o6 i7 F, j
Priority: optional 0 Y7 z! n$ s' P, v
Section: libdevel ' `6 P- r6 }+ {. t  C
Installed-Size: 7872
1 A+ Y; D. F' UMaintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
% L- G7 h$ Z- r" ~5 Z/ v: L- ?Original-Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org> 8 K0 ]  d, r0 n5 B$ [
Architecture: i386 " K6 ]6 {! T# a: F4 L
Source: glibc $ G# j7 t. b8 m1 t' v
Version: 2.4-1ubuntu12.3
( o  r' l" w" |* c1 }Replaces: man-db (<= 2.3.10-41), gettext (<= 0.10.26-1), ppp (<= 2.2.0f-24), libgdbmg1-dev (<= 1.7.3-24), ldso (<= 1.9.11-9), netkit-rpc, netbase (<< 4.0), kerberos4kth-dev (<< 1.2.2-10), libc6-prof (<< 2.3.5-2) / X. Q% l) |9 c+ I- Y
Provides: libc-dev
% @9 r3 q( ~; c3 @2 s8 sDepends: libc6 (= 2.4-1ubuntu12.3), linux-libc-dev
' p0 W/ C0 c9 d8 DRecommends: gcc | c-compiler 1 W6 ~- /1 Q7 T3 f7 L2 J
Suggests: glibc-doc, manpages-dev * o3 q% N3 n! J! /1 z4 w6 m5 s
Conflicts: libstdc++2.10-dev (<< 1:2.95.2-15), gcc-2.95 (<< 1:2.95.3-9), libpthread0-dev, libdl1-dev, libdb1-dev, libgdbm1-dev, libc6-dev (<< 2.0.110-1), locales (<< 2.1.3-5), libstdc++2.9-dev, netkit-rpc, libc-dev
- X" X. r& Z! z6 `8 b2 l' j) OFilename: pool/main/g/glibc/libc6-dev_2.4-1ubuntu12.3_i386.deb 5 g/ B% p1 }. {9 D- v
Size: 1851740 ' ~) U8 I! B; ^" i; B. {
MD5sum: 3d251ab59720128c3d95e427649e1528
: u0 Q9 u. h  W- W# u- A# n% pSHA1: a80d219c65eb3f9f78be17dd3cd0f0017fbb0f78 + L9 k2 z2 l$ {# ]+ b/ b
SHA256: a2b0869b9b732aa56f9108849960e9f72b13bbe76bf58d8af7965c937bdaea0a
; P9 f0 /: m) f  E7 e7 RDescription: GNU C Library: Development Libraries and Header Files
- B- x) p" W7 i* q) C8 ^ Contains the symlinks, headers, and object files needed to compile . ^) J& P, f9 f; I$ q1 Q' u
and link programs which use the standard C library. + D$ k- h& x/ d# k! r8 _+ R: |6 E
Bugs: mailto:ubuntu-users@lists.ubuntu.com
  O2 H! ~1 r. w" A$ b% j3 o8 j/ ^Origin: Ubuntu
9 k; f& R4 O) p4 x! ~# T' B3 H# WTask: kubuntu-desktop
8 W7 y' A$ J  N. x7 N( `
) S4 G9 `  z$ f: c  l9 `" E6 x10、glibc-doc 8 e2 f3 K% a8 `' i- n1 u
进行C语言开发过程中必须遇到一些问题需要参考一下GNU的文档,一种方法当然是去gnu.org,但如果上不了网呢?就最好把这个软件包glibc-doc安装上,此软件包信息如下: % H# r+ y* ]) I3 T5 f& ^* ]- r
引用:
$ s7 k6 t) X2 x2 Y2 {Package: glibc-doc
, W; r' H% ]# N6 H; [% x: G; H/ J......
6 L& t( U, I6 a4 s1 V) H$ ZDescription: GNU C Library: Documentation
# `. w# S1 }) h1 M2 a Contains man pages for libpthread functions and the complete GNU C Library & }( ^: t$ e% ?- d. y
ChangeLog.  The GNU C Library Reference manual has been moved into
0 ], S9 b7 d: u. ]6 T# B5 K glibc-doc-reference for licensing reasons.
6 O: x7 ]* |0 u+ L+ M: j' DBugs: mailto:ubuntu-users@lists.ubuntu.com
( m5 y) g  l3 f* nOrigin: Ubuntu
! g3 s% f2 w$ [) b: b
& E7 }" l/ ^5 z0 c
11、glibc-doc-reference
" Z# i, /2 d* p+ g; x4 Z0 l8 v理由同上,编程人员最喜欢的参考手册就是这个软件包了,可以称为Linux下C语言编程参考。此软件包信息如下: & C5 ]# v& j, S5 V
引用:
2 w# {4 O  W0 ^, l& [Package: glibc-doc-reference
* X7 I# M- I9 }% H" E; m......
1 F& A  o& [  T+ L7 c$ C5 DDescription: GNU C Library: Documentation
# L$ C$ b+ c$ s/ b& o1 M6 @ Contains The GNU C Library Reference manual in info and html format. 3 R+ P5 S+ b! b" ~, ^* K
Bugs: mailto:ubuntu-users@lists.ubuntu.com 0 A6 `- ~; S* `" g) N8 U) O
Origin: Ubuntu 0 e0 |  r, }1 l: ~
2 J4 U" p/ o$ h此参考手册有html和info两种格式,你可以用浏览器打开/usr/share/doc/glibc-doc-reference/html目录下的手册一页页看。把这里每个网页一点点看完了学会了基本上没有搞不定的问题了。 9 R4 x( B2 N  Q: Z
% U: g( m+ o: L+ U& f
12、manpages-dev
, D- l+ [* p- C8 W- e5 C在编程的过程中有时会记不得某个函数的用法,通常这时查man手册是比较快的,所以把这个manpages-dev软件包安装上。想要看某个函数的用法就man它。软件包信息如下: " U& t. v7 d3 l: G4 e
引用:
/ /# C+ e+ C+ b/ w& p
Package: manpages-dev : ]% S( v2 Y6 U- ?& ?
Priority: optional % J* `; j6 {; T9 |' b, W3 D
Section: doc
) n; e) [( D; [0 x  y8 ?. g1 ^- bInstalled-Size: 2908
* L( n/ [! M9 l1 ^Maintainer: Martin Schulze <joey@debian.org>
$ p$ d7 }. s1 m1 n0 s. n, g) b1 f, @Architecture: all / E  q" A# W+ ]" D$ t7 [3 J
Source: manpages 7 ^, `; A, U% I! w0 o2 {# e% ~
Version: 2.34-1 2 P7 /5 T/ b: T/ E9 ^5 s+ o& H$ L
Replaces: glibc-doc (<< 2.3.6-8)
! P3 p! c5 I" O  S4 d( `) iDepends: manpages / w- u8 T7 K% p8 w0 ]" l) C: X
Suggests: man-browser
; t0 d- P8 ~9 p, uFilename: pool/main/m/manpages/manpages-dev_2.34-1_all.deb
4 R8 l: p  C3 C( r/ L& v- T& t4 @Size: 1212216
$ C9 F4 V& y; c  r1 V: {+ O; mMD5sum: 0edb841a2ab4f5a821e5e9c64d32f6f2
% /* }! S  x; ^) g+ ~. V5 XSHA1: 6b5939fa8ce076b90b7284323dabd78b9dec3c37 1 M; /* N: c% v2 C) C% F9 X$ G5 O& ^
SHA256: 42757735e4e8257e4569ea83cebbb05d7eda094bd9fb67c227f26179365ce610
/ l& z& /1 c8 B& {Description: Manual pages about using GNU/Linux for development
# ?; b4 M7 h8 H! ]( u5 D8 L) _ These man pages describe the Linux programming interface, including 5 |7 Y8 n" U5 V: W% a
these two sections:
& g1 k  H3 z# |* Q* _# I  2 = Linux system calls.
& l: L( i* z+ Z" t; K$ T7 ]  3 = Library calls (note that a more comprehensive source of information
6 W) U/ n7 g1 a" j% r4 v      may be found in the glibc-doc package).
+ Z% Q2 I& o; v* [9 J+ v3 N0 ~Bugs: mailto:ubuntu-users@lists.ubuntu.com - ]% z% E- b  S. p; `
Origin: Ubuntu ! @- ?4 j: V! q" w" C3 R/ k
& [+ f, ~1 k/ Q6 N' @+ F% V这个软件包提供系统调用和库函数的在线手册。
+ }  {  g6 K) [( g: M. /1 x 7 E" N: g3 J/ |! s; e' [
13、make 8 Y' a' b5 e% l$ Q- I1 h
在进行大项目时,通常我们的程序可能是由很多源文件组成的,各个源文件生成自己的目标文件,多个目标文件才链接形成一个新的目标文件或可执行程序。 ! u" @) E+ n, i6 w0 z. u0 P
在某个源文件发生变化时,我们只需要按照这种依赖关系运行各命令重新生成程序即可,而不需要对所有源文件重新编译。哪个该重新编译呢?可以让make程序帮忙 维护,该软件包信息如下: 2 S7 {" a" V* U6 d
引用:
' O1 v# c7 a% N
Package: make - K# [8 ]  @. k3 P/ h  i
Priority: optional
& {# s; N7 d8 O; WSection: devel . Y" f1 S! @3 a+ b) a$ t1 r9 {
Installed-Size: 1200
( P$ _. ^$ G& xMaintainer: Manoj Srivastava <srivasta@debian.org>
/ f4 b+ N7 P, Z, @5 I) _' p' Z  [8 nArchitecture: i386
4 E5 u2 X' l1 E# ?. H  I2 y) b! M  `% ZSource: make-dfsg
( U5 e% {) [1 `7 ]8 t+ {! mVersion: 3.81-2
7 g7 M* U' J+ m* MDepends: libc6 (>= 2.4-1)
" /: U* ^5 R' x5 v$ C# Q( KSuggests: make-doc-non-dfsg 1 q, `! {+ a" R2 a
Filename: pool/main/m/make-dfsg/make_3.81-2_i386.deb 9 |, t: s) l! h/ Q5 x0 ^
Size: 148054 ; v) r% a- l1 @0 E3 ]
MD5sum: 818d9b86d322629e5f218e8a101157c9 4 ~1 G% }7 T2 n7 j3 p! Z, M3 e; U; Y6 R$ A
SHA1: b5a04fd649b418b689c4918f17b5d94d01b11c5d $ J' q; m, v+ @* r; P4 f5 q
SHA256: 6dc9467599278802a34c2a7ee9125a7f4b42719fcc8fdab8124bde7db80c5328 - T- Y: n% /) e% B4 t5 D, G% T
Description: The GNU version of the "make" utility.
/ h9 N$ J0 E; S+ a GNU Make is a program that determines which pieces of a large
+ Y  y% l' M. h. m. Z2 }: w# b9 _ program need to be recompiled and issues the commands to recompile : ]4 h% O# F9 F4 r' T" p) o8 }
them, when necessary. More information about GNU Make can be found in
1 f0 {* f8 t3 t4 z the `make' Info page. The upstream sources for this package are
, /2 n9 T% T4 e. n2 [4 q& r available at the location . The ) P: c+ W/ l1 D8 E
documentation for this package does not meet the Debian Free Software & N8 /# l! g0 @4 T9 k- D6 Y' R
Guidelines, and has been removed from this package.
9 V% _1 S' W4 r8 jBugs: mailto:ubuntu-users@lists.ubuntu.com
* r4 x1 u& ^/ v0 U* m" s6 Q5 bOrigin: Ubuntu ! o, R3 C, e! v7 L" h0 C/ d! V
Task: ubuntu-desktop, kubuntu-desktop, xubuntu-desktop
7 T& u0 e- x  d0 y& @
* y' [+ ^% h- Q# i6 u* G
14、make-doc * Y$ n. o, O& e7 O+ t  ^' ]2 `
要运行make工具,先得学会怎么用它吧?看这个软件包提供的文档就行了。此软件包信息如下:
$ o$ ]  P6 t/ r4 O+ ^
引用:
, p( R8 c# C2 u) ~8 fPackage: make-doc ! n  ~+ l8 L7 D3 B* ^5 l2 q3 A
...... " k4 N+ ]  S- G/ M4 I
Description: Documentation for the GNU version of the "make" utility. . z0 H4 v' ?) `6 {# @- H6 z
This package contains the documentation for GNU Make.  The upstream 6 j* h+ W, x* T1 H
sources for this package are available at the location * p4 W; D0 t) /6 p: K
. This package has been stripped down to 9 A. r* i5 @6 t. D  G
only contain the documentation; since the documentation is covered
% d: ]5 f2 Y+ [% H$ g under a non-free license and thus has been moved to ) S. ?/ T5 R! }" W7 J3 S2 A
non-free/doc. Make itself remains in Debian.
- d! j2 Y9 q. R; D5 I4 ]) KEnhances: make
  N$ L! a0 p6 ]" F' W2 C1 oBugs: mailto:ubuntu-users@lists.ubuntu.com
, L( c# _8 Y/ W2 r# S) r$ nOrigin: Ubuntu ' u3 n  L) P3 l# c
0 J) Y* I5 Z% {
安装好这个软件包后,用浏览器打开/usr/share/doc/make-doc/make.html文档开始学习make的用法吧。
" [' i; v0 D+ z8 S/ Z) y
1 ^' c- i& v4 b1 L+ d& [15、gdb
, h+ r' a6 y  b( [$ i" d编写程序必然需要调试,在Linux常用的程序调试工具是gdb,此软件包信息如下: 4 /5 ^- Y3 o$ w/ I. ^
引用:
7 P) P7 O- B- F) Y8 z) QPackage: gdb
0 U' m' R& d# ?9 xPriority: optional
# G8 T; W/ @) S6 C) ?! PSection: devel % K  W5 t, X0 i3 Z' r7 U
Installed-Size: 5108 3 i6 T) J1 R) L0 I! ^8 O
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
$ b% n: V8 /9 H6 l9 ?% NOriginal-Maintainer: Daniel Jacobowitz <dan@debian.org> + X5 I. P1 h# {: ]1 p
Architecture: i386 . u* z0 /- _0 P  G7 D, H. d
Version: 6.4.90.dfsg-1ubuntu3 & R. d* A4 j& E+ x
Replaces: gdb-arm, insight (<< 6.1+cvs.2004.04.07-1)
0 D& [# B+ S9 c1 u; x, ZDepends: libc6 (>= 2.4-1), libncurses5 (>= 5.4-5), libreadline5 (>= 5.1)
2 ^8 Q, I8 i- e" ~/ D2 c, ]1 R0 TSuggests: gdb-doc
. f# F& Q: |6 `0 B. X! c5 T7 PConflicts: gdb-arm 5 d4 D; |/ o: Q) d8 r
Filename: pool/main/g/gdb/gdb_6.4.90.dfsg-1ubuntu3_i386.deb
; |7 ]- Z  ?& y% T% V. dSize: 2371532
! C0 u, E) i4 @$ DMD5sum: c3483bd4246e5a15e1a940d4b907c45e
4 r7 R+ N) w/ G2 a9 J2 S+ H0 j; _SHA1: 986b32bde241bef04e3e61a3fbe74e16f32b526a
) l) Z% i% s; H' ?, K" sSHA256: 69adcb23c8be1e0a50bb59f916a32a7da90836b02e08d2ca84e8ae63fad2fc01 6 f' k/ J# P* w/ H# P9 _# e
Description: The GNU Debugger
/ l+ H# h5 n; J# U( |% d+ z GDB is a source-level debugger, capable of breaking programs at
3 U" o* u) L* c6 W$ R' N" L/ { any specific line, displaying variable values, and determining
$ R$ F9 b2 g9 G  r) J where errors occurred. Currently, it works for C, C++, Fortran, 0 }7 s0 [8 X2 h' D! u
Modula 2 and Java programs. A must-have for any serious 4 Y; /2 u' X  b4 p" `  K$ f# q
programmer. ; }; |8 q2 W' /
Bugs: mailto:ubuntu-users@lists.ubuntu.com
: t" R1 K; Q* P/ U5 P/ SOrigin: Ubuntu 1 l( {/ R- y' P9 ]- N, ~* G
Task: ubuntu-desktop, kubuntu-desktop, edubuntu-desktop
4 w! Q+ z8 `+ I$ V$ t% ?
3 l* |# u4 A2 v16、gdb-doc & y% [7 Z1 i9 e# [) o
有了上面的gdb程序调试工具了,怎么学会使用它呢?安装这个软件包gdb-doc,即gdb的文档,此软件包信息如下:
6 [; ]& f9 R5 h8 o
引用:
; K1 q, x  _6 R; zPackage: gdb-doc & s: L: q7 q! t( v# f  ~, t
......
& h, i8 p$ s: o/ f# T" ?& U! ODescription: The GNU Debugger Documentation 2 F4 O$ V2 [; R% L. p/ M% I
GDB is a source-level debugger, capable of breaking programs at " T3 J) P; R' x' G$ q7 D% e
any specific line, displaying variable values, and determining
1 g- d5 Z- Y! [. _! ~' @% f% / where errors occurred. Currently, it works for C, C++, Fortran, + D* k$ |8 e# K) l8 G4 w3 m6 n
Modula 2 and Java programs. A must-have for any serious
9 |: D+ ?2 B7 ?  l  x5 `$ Y programmer.
' j, g& |! o6 K7 i0 ]' D . - }/ ]' x8 Q4 i. ^! N& Z* n
This package contains the GDB and GDB Internals manuals.
; a! T6 }: l6 XBugs: mailto:ubuntu-users@lists.ubuntu.com % x* P* J# q3 A& L6 E) S
Origin: Ubuntu
5 D9 f- T0 o0 M3 W
2 B; z+ P9 z8 V# y+ V
安装好软件后就可以通过电脑上的文档自学gdb的使用了。
+ {4 }, u- [5 a9 @5 D( L1 d2 D
$ x* ^/ {" F, h6 U+ l1 H17、编辑器 9 D& F( v7 _# C% S5 P
要编写C程序,总得有个编辑工具吧?Linux下这类工具相当多,关键在于熟练掌握一种。 5 T7 Y; W: c0 Q6 B0 y* `
比如文本界面的编辑器vi, vim, emacs等
- x; |  w! m( k% ^  w比如图形界面的编辑器gedit, kate, kwrite等 2 f! V; h& i. J3 A9 Z2 B
又比如IDE环境的:anjuta, eclipse, kdevelop等
1 L0 r/ c! C1 P
4 u- h+ k( @# y2 l) Z+ p* S/ M选择一个自己习惯的熟练使用起来就行了。 . k3 _4 @% ^. T: d: g5 s% c* M
& T  G2 y' T) z1 `% h
这些只是基本的Linux下C编程环境必须的软件包。如果这些熟练掌握了,可以试试下面这些软件包:   T3 F# j' J1 f. O; ?/ |1 z
autoconf,  automake1.9, libtool, flex, bison
5 M4 X) ]4 `) Z8 ~( K当然还有对应的文档用于自学。 ) n/ ~1 A& D. s5 p$ r
甚至可以试试IDE环境下其它语言编程,比如gtk, qt等      
我的Web Log:http://zhoulifa.9999mb.com,欢迎有空来看看!


--------------------next---------------------

引用:
8 w$ J' m% F) A6 I* uPackage: gcc-4.1
" ^' X; Y5 m# @6 L1 c$ U5 r- BPriority: optional 9 h! n3 M( b6 G. c+ {9 j$ O
Section: devel 0 C9 e! o9 @- ~- P9 e1 V& V; q$ t( D" g
Installed-Size: 1456 : d, C: q& a4 f" T2 a
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com> & O1 l/ G- K! E* ^. l4 }/ Q- Z
Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org> . t. k  P4 g# x. M$ b
Architecture: i386
2 R! {7 S, h* e# A2 J- ]Version: 4.1.1-13ubuntu5
/ K/ k- Z4 ~3 h% L/ JReplaces: gcj-4.1 (<< 4.1.1), libssp0-dev (<< 4.1.1-6)
; y7 _. x; c- z3 z0 p% D4 jProvides: c-compiler, libssp0-dev
. N' A8 f5 a, I) Q0 K: k- NDepends: gcc-4.1-base (= 4.1.1-13ubuntu5), cpp-4.1 (= 4.1.1-13ubuntu5), binutils (>= 2.16.1cvs20051214), libgcc1 (>= 1:4.1.1-13ubuntu5), libc6 (>= 2.4-1)
1 V" M7 I, }# N( {9 f! L4 H  h6 ARecommends: libc6-dev (>= 2.3.6-7), libmudflap0-dev (>= 4.1.1-13ubuntu5)
. Z1 g3 {$ x1 d% q% /, NSuggests: gcc-4.1-doc (>= 4.1.1), gcc-4.1-locales (>= 4.1.1), libc6-dev-amd64, lib64gcc1 (>= 1:4.1.1-13ubuntu5)
' B' j4 r3 w  m- H* J- [% t9 E, YConflicts: gcj-4.1 (<< 4.1.1), libssp0-dev (<< 4.1.1-6)
1 t7 H5 K! j5 ^6 n' a0 N5 n8 pFilename: pool/main/g/gcc-4.1/gcc-4.1_4.1.1-13ubuntu5_i386.deb . M" R. k9 ~: B8 /% @* V
Size: 609694 ) j0 t' Y) A2 @, D' m
MD5sum: 522696065e5152e9b8f2fe0c637340eb
! f# e) T6 Y6 `: xSHA1: 3d7fedaccdd6180684849571f15bf75cc8cf0a56 0 G0 x! s: /3 C1 m, t
SHA256: e77e3ed94f79d2bd6145fed9446c6216eb7c35a7a0e94148ae9f6d2f7c18d52e
/ l" M: D7 V" a% P. `Description: The GNU C compiler
) a# u% d1 f+ N# C; I This is the GNU C compiler, a fairly portable optimizing compiler for C.
& @+ D& A% V% Q) N- WBugs: mailto:ubuntu-users@lists.ubuntu.com % // m' i8 a, r" s# x$ Z
Origin: Ubuntu & {. P; Q# e1 {! /4 H" c
Task: ubuntu-desktop, kubuntu-desktop, xubuntu-desktop
! L  v0 |4 p2 Z+ N& z7 f

6 I: u1 y9 w& K$ n' q& w% Y3、cpp
1 b6 ?; B+ E1 f/ h9 bgcc要进行程序编译,首先需要进行一个预编译过程。该过程对程序源代码进行预处理。8 n5 M8 `/ b3 p/ V0 J6 P& m3 g
cpp软件包的信息如下:# i6 p! @" d, `8 ?, ?* L

引用:
; j+ z9 t9 J! c- G/ @5 q
Package: cpp
5 a+ A1 S" F8 Y0 `Priority: optional ' h3 X2 N8 P  M9 Y/ ]
Section: interpreters
/ ^: L% N4 Y- a+ ^: vInstalled-Size: 96
" s7 @, k- W2 q* {) I; rMaintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
/ _, D" B5 @; Y" _Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
5 X9 y( s( M$ A* oArchitecture: i386 & B9 d) ^! H2 {+ G4 Q, j: F' F
Source: gcc-defaults (1.41ubuntu3)
$ X0 q1 S" ^( `Version: 4:4.1.1-6ubuntu3 % M: I7 T+ k# o6 k' ]( o. ]
Depends: cpp-4.1 (>= 4.1.1-2) 3 ?9 U: W, X9 L+ O  p7 s7 t3 @' U; Y
Suggests: cpp-doc
- l- F( r9 W3 H. `7 ]Conflicts: cpp-doc (<< 1:2.95.3) 9 s* G1 }& g% S7 Z
Filename: pool/main/g/gcc-defaults/cpp_4.1.1-6ubuntu3_i386.deb ; ~+ {6 @! p! O; k7 R2 K
Size: 31172 , q% T& p# X0 A
MD5sum: 1d16eb3da2478b7ded37d185968237b0
* h2 g: m8 i4 w; f5 sSHA1: 688cc7572783577825c5430252b04da31977c129
1 Q( f- C9 x$ D* W2 W, k6 x+ ZSHA256: a75d7c4446f45e94ec947307d90cf2776441baa78cd511192128e6cb1108f6a2
, K. o+ ?, B  U1 J. O9 C' IDescription: The GNU C preprocessor (cpp) # u3 f7 c2 o+ |% g+ X
The GNU C preprocessor is a macro processor that is used automatically ' J6 m% S1 A4 ^" G/ O
by the GNU C compiler to transform programs before actual compilation.
7 q0 N- @% u; i3 I- }2 K6 L .
6 o( O& X# r; /8 T4 R  ^5 g This package has been separated from gcc for the benefit of those who * w1 M/ ]9 _! h, _+ J8 u! T) P
require the preprocessor but not the compiler. . {9 B* U# W: B. h4 F5 t5 i
. , T4 P7 _' x" s# q
This is a dependency package providing the default GNU C preprocessor. 2 A2 V9 M: T3 n, v: a$ u3 B3 b: h
Bugs: mailto:ubuntu-users@lists.ubuntu.com 4 {0 Z2 L+ r3 k& r2 I
Origin: Ubuntu 4 Z& e& h: I* G* R, i1 e% h
Task: ubuntu-desktop, kubuntu-desktop, edubuntu-desktop, xubuntu-desktop ) r1 ?' }" S. j1 H9 G, J; ]

7 u' X# H# G" H! B! Q4、cpp-*: A1 K5 X& r# e6 `7 S0 w& S
这里以cpp-4.1为例,软件包信息如下:' a. T. ~- K1 x) h

引用:
) b  B* G, y1 e0 R# @' @5 |
Package: cpp-4.1 7 j' V! B/ D- X  |' U# W" Z( `
Priority: optional ! E  P) a# w8 v. V
Section: interpreters 3 G  b* s6 L& h+ Q
Installed-Size: 5196 . x( r* j# }1 a7 k. |0 f& H
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com> & O& y; B8 I8 Y
Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
% @$ D' E9 L) [$ D( QArchitecture: i386
: u8 @, I+ }% /9 x% hSource: gcc-4.1 7 R1 L: B0 a+ w2 ~
Version: 4.1.1-13ubuntu5
6 I6 x$ o( d1 n. tReplaces: gcj-4.1 (<< 4.1.1) / ]1 @. S0 o0 u5 S8 q
Depends: gcc-4.1-base (= 4.1.1-13ubuntu5), libc6 (>= 2.4-1) 3 ~& a3 B; B# A7 [* R
Suggests: gcc-4.1-locales (>= 4.1.1)
: r/ R, a7 n! E4 zConflicts: gcj-4.1 (<< 4.1.1) / R0 R8 j0 B* h6 l! L9 B
Filename: pool/main/g/gcc-4.1/cpp-4.1_4.1.1-13ubuntu5_i386.deb
7 g$ Z1 W8 x0 _0 |Size: 2309026
* K) P/ ]" [) C6 VMD5sum: abfee8be3d7aeb0ad3eb4e7738838dca
2 p( r9 s6 /8 b) o: |6 v# O/ YSHA1: 8a51c79c2b961686b98617772b9da4800f173dbe
) O: _/ ?; R) D0 nSHA256: 115aad59c02eee574066e21e6ed7a32bee1ed86e3abb73189645928832258ea0
& M' D& U' B+ u3 j4 A$ B! L$ UDescription: The GNU C preprocessor 4 ]$ c: C1 @6 g: [4 E: /5 X* f
A macro processor that is used automatically by the GNU C compiler ; n; N& C0 q+ z* K
to transform programs before actual compilation.
; c3 g" w- g5 o8 f .   M: _% k8 U' H1 i  @
This package has been separated from gcc for the benefit of those who
9 Q( V! i2 p) y1 j  h6 Y0 B. O4 J) _ require the preprocessor but not the compiler. / B* q# /0 v) R5 v* {
Bugs: mailto:ubuntu-users@lists.ubuntu.com 9 |* _6 g0 E: k2 p/ {
Origin: Ubuntu
0 u) V! t: W9 G! A' U4 ]Task: ubuntu-desktop, kubuntu-desktop, edubuntu-desktop, xubuntu-desktop
8 ~( U7 ?" `) t9 B0 A3 i' a

! x2 f! g* K/ c; {& U. h
5、libgcc11 d- V) V; j2 `6 e/ U  `
gcc还依赖于libgcc1这个软件包。libgcc1是用于gcc软件自身的必须组件。软件包信息如下:, I) o% s* k, i/ v! C4 G

引用:
6 i% Q$ t# /* GPackage: libgcc1
1 g; i+ i3 y& A) W4 y, q! P  KPriority: required
+ c; V' N0 y, t* [9 W7 ESection: libs 1 y; w" S& Y7 o( t2 B- e2 ?* l
Installed-Size: 68 $ F, D' a0 [$ F5 o* e& l  v# C
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com> : Q0 D. p" `2 y$ g0 @
Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
! q! Y; E# _, G7 o; R/ A& mArchitecture: i386 / Q7 u, T) ]3 ?5 Q
Source: gcc-4.1 (4.1.1-13ubuntu5) ' s" b, q9 @3 m; O
Version: 1:4.1.1-13ubuntu5
) L% J0 L3 K7 H2 Z  M9 ODepends: gcc-4.1-base (= 4.1.1-13ubuntu5), libc6 (>= 2.4-1)
1 H* s; h" z: F5 L+ F* C1 C, `Filename: pool/main/g/gcc-4.1/libgcc1_4.1.1-13ubuntu5_i386.deb
' M# l1 X5 u) [8 a- b  Q7 e7 H8 bSize: 21404 ' o! e/ b7 F; Z) Y3 r1 {
MD5sum: 879959bc964403be55aa096a8bb269f9
( [, |' /% I; x! D9 aSHA1: 3a3cfd824e25a2ce9008d98da1269f5ffdb7507f
1 S1 n* p( x, ?( f6 /! O' L) dSHA256: 62f3f64daaa1dd19fc76d966718184d1e0e0ee9f733f7f955b8b09e27b69a7d1
3 H" [5 c# U+ {Description: GCC support library ; Z& x2 z3 /" g' n
Shared version of the support library, a library of internal subroutines
7 `: ~; L5 /, E% R6 b that GCC uses to overcome shortcomings of particular machines, or
+ M; m4 j  n: J# K& }7 D special needs for some languages. # K( Z4 `4 X; u5 Q) B
Bugs: mailto:ubuntu-users@lists.ubuntu.com $ B% ?3 Y6 J; X# F; A8 i$ z" `
Origin: Ubuntu % ?: }; y, l, B) u* G6 m
Task: minimal
: K, R2 F5 W3 I7 }# N

: n7 G# n9 _% J/ r( ~
6、libc6! x$ F, C7 l1 S
C语言程序要能够运行,需要一些运行时库文件和一些库文件操作命令。libc6这个软件包就是用来提供这些的。这个软件包几乎是Linux系统自带的,因为所有C程序的运行都离不开此软件包。软件包信息如下:2 i+ /: Z- D" t6 B1 Q, i3 _7 x: Z

引用:
0 ~0 ~  a8 }4 C, }, NPackage: libc6 9 n4 K4 a" `/ r$ o5 ^: h6 p4 |8 w3 N
Priority: required 4 Q& B' d! n+ x( j2 k& t% i& u* ~
Section: base
# A6 d, T) C3 QInstalled-Size: 9992 / a; [' O" q# o' S" A
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
$ u' U. s2 K. p9 j3 M5 h, @Original-Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org> 8 M8 w: A' y  p' ?
Architecture: i386
- b- M8 b- J$ iSource: glibc 8 w& }- {, x2 T- {' z# }9 ^- u
Version: 2.4-1ubuntu12.3 4 A4 w3 [* p4 N) /1 R- X8 z
Replaces: ldso (<= 1.9.11-9), timezone, timezones, gconv-modules, libtricks, libc6-bin, netkit-rpc, netbase (<< 4.0)
# u. q) E& X) e4 QProvides: glibc-2.3.6-2, glibc-2.3.5-3
5 ~, @; r% X1 V% @Depends: locales (>= 2.3.11) 4 h# W7 U4 z' o* F
Suggests: locales, glibc-doc - J3 I- f+ Q9 j2 X8 P
Conflicts: strace (<< 4.0-0), libnss-db (<= 2.2-6.1.1), timezone, timezones, gconv-modules, libtricks, libc6-doc, libc5 (<< 5.4.33-7), libpthread0 (<< 0.7-10), libc6-bin, libwcsmbs, apt (<< 0.3.0), libglib1.2 (<< 1.2.1-2), netkit-rpc, wine (<< 0.0.20031118-1), cyrus-imapd (<< 1.5.19-15), e2fsprogs (<< 1.35-7), initrd-tools (<< 0.1.84.1), libterm-readline-gnu-perl (<< 1.15-2)
2 g  A' h: l% y: ~8 B" u: n# pFilename: pool/main/g/glibc/libc6_2.4-1ubuntu12.3_i386.deb
# J  i0 {; ~3 V! i/ o( q; eSize: 4129182 ; g, N+ Y- O; z% I( q8 T2 ]! v
MD5sum: 012994de4fa9093d6fdba6c2304ddb9a
! i) Y5 q3 Y1 Q$ C; X9 ^SHA1: 187b850b1ac6153838ae2c1f8518342325ffe2ca . v% ]% B" Q# Q$ J" ?! P: z
SHA256: 6ad0ee8cccb09117df4f6c02a275940b8bb27883219b205cad1840ccf870a790 ) X4 v1 ~/ E% S! n9 r( T4 _8 F3 B
Description: GNU C Library: Shared libraries
3 p! `- y: W/ U9 f9 @, E) G8 ]. i8 ? Contains the standard libraries that are used by nearly all programs on   U* M# I% X, d$ K8 Y5 j6 M0 r
the system. This package includes shared versions of the standard C library
" k; f3 F% V% s: {2 G+ u and the standard math library, as well as many others.
6 a6 W  E9 y. X, r. q: z3 XBugs: mailto:ubuntu-users@lists.ubuntu.com 0 U. h1 F/ E8 x( I4 K' S) f
Origin: Ubuntu
% H& w0 e) z& p# wTask: minimal , f9 Q8 d$ Z9 X8 u0 Y1 R4 ]4 g

! J4 R8 N, m# r+ L, g5 ^
7、binutils' h, P- a( Q9 M7 V7 b* Q3 i
程序从源代码到可执行程序的过程中,必然需要一些工具来辅助完成。binutils软件包就是提供一些工具的,软件包信息如下:
2 o+ J2 v0 K! f5 |2 y: M" D

引用:
, |- T/ M. u  r: iPackage: binutils
9 O+ r: I3 ]; R% ]" A3 D6 y" @" PPriority: optional * p* I( M- L- l' c6 d
Section: devel . y  /* d$ t) @
Installed-Size: 7076 ) q. w7 R  H  H  i/ K* K/ P
Maintainer: James Troup <james@nocrew.org> ' I3 j7 P1 y/ U+ @
Architecture: i386
5 J& W9 r( ~5 c( k* y6 }Version: 2.17-1ubuntu1 ; O& o$ _$ V* {* [
Provides: elf-binutils 1 g, e6 R) T, l
Depends: libc6 (>= 2.4-1) + /1 G  d8 h3 |. Z% X7 p# x, A+ {
Suggests: binutils-doc (= 2.17-1ubuntu1)
; e1 w! f, q0 |4 g2 p! ?; ]# x9 hConflicts: gas, elf-binutils, modutils (<< 2.4.19-1)
8 [7 F7 c( M9 Y: f% m/ v% i; fFilename: pool/main/b/binutils/binutils_2.17-1ubuntu1_i386.deb . n; R& {+ J/ b. G0 g! z
Size: 1440506
; C+ u+ {- /1 l4 d  jMD5sum: e9ae8f7ad19ce94dbfb2d96c3023941b . F: L' A4 y6 ]) i
SHA1: 58bb97665e26785b1667f9d988443b9719c57bea 2 u* z" h/ i) W, /! R2 o3 {+ o% C
SHA256: 43c9ee10660b853deea247c21c5ad61d5d184e6b13484eb6c6cd696d17eae31e ( x2 ]" Z' g; l# G$ ]
Description: The GNU assembler, linker and binary utilities
  X; U0 k7 {3 @. a0 r The programs in this package are used to assemble, link and manipulate
. A' W/ E5 F; l binary and object files.  They may be used in conjunction with a compiler
9 ]# V; /% W5 v* Z, ^  T8 ~6 r4 a and various libraries to build programs. 2 I7 z% _, l. r; b+ g2 K
Bugs: mailto:ubuntu-users@lists.ubuntu.com
( G4 J) v5 b! g2 l: F, W0 F# q9 ~Origin: Ubuntu 0 d( /$ b& p: i+ f
Task: ubuntu-desktop, kubuntu-desktop, edubuntu-server, xubuntu-desktop
+ z; I! f  R) g4 U; |

" a- k$ h% O2 H, V这个软件包提供下面这些非常有用的命令:5 L$ i6 ?) E) k* [9 h

引用:
" V5 `6 F5 h7 D1 x) z7 s& //usr/bin/size  # 显示每个目标文件或归档文件的章节大小和总的大小 1 y) /8 ?1 f/ Y3 A9 E
/usr/bin/objdump # 显示目标文件的信息
6 T2 B. f. A1 ~* t' i/usr/bin/ar # 归档文件管理工具,可以创建、修改或打开一个归档文件
1 t: o% D) b# o1 e6 H6 o3 i/usr/bin/strings  # 显示一个文件中的可打印字符串,比如文本文件的全部或目标文件里的字符串
$ b  C4 p5 c% B+ X& u- U1 ^* J8 K/usr/bin/ranlib # 产生归档文件的索引 " @, v6 J$ ?8 q
/usr/bin/objcopy # 复制或转换目标文件 * b) ~# K/ F, k+ {9 i7 z
/usr/bin/addr2line # 把一个地址信息转换为文件名和行号 % N9 V  d. N& _/ G! U% b2 ^
/usr/bin/readelf # 显示 ELF 文件信息, ELF 文件格式即 Linux 目前流行的可执行文件格式 0 F( D: P+ F+ A; K  b) l
/usr/bin/nm # 显示目标文件里的符号   `2 B: K9 g0 J* [' Y( P
/usr/bin/strip # 去除目标文件里的符号
% B) z/ s8 _! x' k$ z/usr/bin/c++filt # 识别 C++ 和 Java 符号 ; ?) h  C" w0 E
/usr/bin/as # GNU 汇编工具
) // k# j# y5 b9 W/usr/bin/gprof #
% n+ K: Z% s3 j/ r/usr/bin/ld # GNU 链接工具
) U1 z4 C; B' Y7 N6 /

6 [4 V+ ?3 _) z
8、locales
# j3 `; [3 I1 S7 f% K; `  c) S; a3 s  /这个软件包提供本地语言环境支持,软件包信息如下:+ H! K  K5 {- s9 O+ j' ^- i

引用:
/ n% U; {# O, u0 H0 L$ G
Package: locales " O- `( R% ~# i- K2 ]; z" S; ~
Priority: required
; x( Q+ d5 f$ q  Z) ]3 ]8 BSection: base
. `( s3 h7 J* a! w. r8 b6 JInstalled-Size: 7284
. y9 y* h7 v1 V2 g1 W" ?* sMaintainer: Martin Pitt <martin.pitt@ubuntu.com>
5 Q/ l- c2 @6 Q3 ~Architecture: all
( V- L+ w( ^1 n' s$ uSource: langpack-locales - T( `7 n5 h: c" s2 i
Version: 2.3.22 . z  ~, O0 e, d  c
Replaces: belocs-locale-data, base-config, libc6 (<< 2.3.6-0ubuntu6), libc6.1 (<< 2.3.6-0ubuntu6)
- q" p1 S0 E* m. d7 i0 S  pDepends: belocs-locales-bin (>= 2.4), tzdata
1 o' [0 J$ R$ ?1 ]2 Y$ d' bConflicts: belocs-locale-data, base-config 5 T+ @# q0 `/ S! N# c8 ^' _
Filename: pool/main/l/langpack-locales/locales_2.3.22_all.deb
5 n% a* O$ m$ S+ {Size: 3023314 ! I# T3 W% r2 {) B
MD5sum: bfc03e46a01addb754b9ea03979c3458
" v; @0 H* /& W+ }3 Y" J; tSHA1: 219943450cf30851870b89cabe766da04b4cdff3 0 _$ o: ^+ @5 U4 B
SHA256: fe9345e58e70db1c8c6e798f40a07d988f2d4c5de4408e9c8ac3db87d99fbe24 $ r; N3 B/ M& c( N
Description: common files for locale support 6 x: Z! ?1 W. |1 J
This package provides support for localized environments (locales).
1 W( n% g( b3 ^. y It installs character and transliteration maps, provides the POSIX
' {3 m- /: y; @0 C' n2 g6 Q locale definition and provides common scripts for language pack
% n  _1 J! t, N/ ?4 y& / handling. : O1 i" R) c* X
.   |2 l  q$ p9 p, |
The actual locale definitions are not part of this package, these are . ^& I; g2 U% {4 g- Q3 t& L9 ?0 g
shipped in the language packs and are installed and removed ' o: m2 ?: A' U9 G
automatically.
0 I" p' a; `/ K" m) ^9 }! x" f3 E% oBugs: mailto:ubuntu-users@lists.ubuntu.com
) D( ?2 r5 `6 w- C- p& {# M5 p8 qOrigin: Ubuntu ' o* Z5 o1 Y6 `7 K" Z4 y
Task: minimal
  [1 X7 j0 X9 C2 `% ~" y

. g! F' @, T7 j9 o( q7 z
虽然上面列了这么多必需的软件包,但实际上因为他们之间有依赖关系,所以在安装完系统后我们只需要输入下面一个命令:

复制内容到剪贴板
代码:
apt-get install gcc

系统就会自动帮忙把这些软件包安装上。
4 I- t; j; y" j+ R- d& F/************关于本文档********************************************/ K5 c; H7 d: G" I; L, c
*filename: 我是这样学习Linux下C语言编程的-Linux下C语言编程环境的搭建$ X6 d8 K  q6 o* /) d
*purpose: 列出Linux下C语言编程者必备的几个软件包
  }9 ?; j3 x7 I*wrote by: zhoulifa(zhoulifa@163.com) 周立发()
: u  y% _& V4 K$ c, b; R" zLinux爱好者 Linux知识传播者 SOHO族 开发者 最擅长C语言. I4 g8 r# i" T
*date time:2007-02-09 18:20
/ l$ y; Z4 F. s6 O*Note: 任何人可以任意复制代码并运用这些文档,当然包括你的商业用途
1 /: q: d. _2 Z! ]3 r* 但请遵循GPL# q4 D" K) D% H0 F! Z
*Thanks to:Ubuntu
% B4 c1 I( F, ~3 H9 o*Hope:希望越来越多的人贡献自己的力量,为科学技术发展出力; A9 n6 S3 `- {0 }2 L4 @# ~
* 科技站在巨人的肩膀上进步更快!感谢有开源前辈的贡献!& D8 D* y2 |( N# p% j; E! U( J
*********************************************************************/3 @- @1 n4 m- M  Z
9、libc6-dev! P8 t. ]$ L) ~; n( X# T
我们要进行软件开发,必然需要一些库文件和头文件,在Linux常用的就是GNU的C语言库libc,要安装开发工具必须安装这个libc6-dev软件包,信息如下:
+ K/ S! H& t5 X

引用:
; L( F* h( Z+ f" j+ v2 q8 E
Package: libc6-dev " p/ /9 F5 w; o6 i7 F, j
Priority: optional 0 Y7 z! n$ s' P, v
Section: libdevel ' `6 P- r6 }+ {. t  C
Installed-Size: 7872
1 A+ Y; D. F' UMaintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
% L- G7 h$ Z- r" ~5 Z/ v: L- ?Original-Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org> 8 K0 ]  d, r0 n5 B$ [
Architecture: i386 " K6 ]6 {! T# a: F4 L
Source: glibc $ G# j7 t. b8 m1 t' v
Version: 2.4-1ubuntu12.3
( o  r' l" w" |* c1 }Replaces: man-db (<= 2.3.10-41), gettext (<= 0.10.26-1), ppp (<= 2.2.0f-24), libgdbmg1-dev (<= 1.7.3-24), ldso (<= 1.9.11-9), netkit-rpc, netbase (<< 4.0), kerberos4kth-dev (<< 1.2.2-10), libc6-prof (<< 2.3.5-2) / X. Q% l) |9 c+ I- Y
Provides: libc-dev
% @9 r3 q( ~; c3 @2 s8 sDepends: libc6 (= 2.4-1ubuntu12.3), linux-libc-dev
' p0 W/ C0 c9 d8 DRecommends: gcc | c-compiler 1 W6 ~- /1 Q7 T3 f7 L2 J
Suggests: glibc-doc, manpages-dev * o3 q% N3 n! J! /1 z4 w6 m5 s
Conflicts: libstdc++2.10-dev (<< 1:2.95.2-15), gcc-2.95 (<< 1:2.95.3-9), libpthread0-dev, libdl1-dev, libdb1-dev, libgdbm1-dev, libc6-dev (<< 2.0.110-1), locales (<< 2.1.3-5), libstdc++2.9-dev, netkit-rpc, libc-dev
- X" X. r& Z! z6 `8 b2 l' j) OFilename: pool/main/g/glibc/libc6-dev_2.4-1ubuntu12.3_i386.deb 5 g/ B% p1 }. {9 D- v
Size: 1851740 ' ~) U8 I! B; ^" i; B. {
MD5sum: 3d251ab59720128c3d95e427649e1528
: u0 Q9 u. h  W- W# u- A# n% pSHA1: a80d219c65eb3f9f78be17dd3cd0f0017fbb0f78 + L9 k2 z2 l$ {# ]+ b/ b
SHA256: a2b0869b9b732aa56f9108849960e9f72b13bbe76bf58d8af7965c937bdaea0a
; P9 f0 /: m) f  E7 e7 RDescription: GNU C Library: Development Libraries and Header Files
- B- x) p" W7 i* q) C8 ^ Contains the symlinks, headers, and object files needed to compile . ^) J& P, f9 f; I$ q1 Q' u
and link programs which use the standard C library. + D$ k- h& x/ d# k! r8 _+ R: |6 E
Bugs: mailto:ubuntu-users@lists.ubuntu.com
  O2 H! ~1 r. w" A$ b% j3 o8 j/ ^Origin: Ubuntu
9 k; f& R4 O) p4 x! ~# T' B3 H# WTask: kubuntu-desktop
8 W7 y' A$ J  N. x7 N( `

--------------------next---------------------
引用:
) b  B* G, y1 e0 R# @' @5 |
Package: cpp-4.1 7 j' V! B/ D- X  |' U# W" Z( `
Priority: optional ! E  P) a# w8 v. V
Section: interpreters 3 G  b* s6 L& h+ Q
Installed-Size: 5196 . x( r* j# }1 a7 k. |0 f& H
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com> & O& y; B8 I8 Y
Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
% @$ D' E9 L) [$ D( QArchitecture: i386
: u8 @, I+ }% /9 x% hSource: gcc-4.1 7 R1 L: B0 a+ w2 ~
Version: 4.1.1-13ubuntu5
6 I6 x$ o( d1 n. tReplaces: gcj-4.1 (<< 4.1.1) / ]1 @. S0 o0 u5 S8 q
Depends: gcc-4.1-base (= 4.1.1-13ubuntu5), libc6 (>= 2.4-1) 3 ~& a3 B; B# A7 [* R
Suggests: gcc-4.1-locales (>= 4.1.1)
: r/ R, a7 n! E4 zConflicts: gcj-4.1 (<< 4.1.1) / R0 R8 j0 B* h6 l! L9 B
Filename: pool/main/g/gcc-4.1/cpp-4.1_4.1.1-13ubuntu5_i386.deb
7 g$ Z1 W8 x0 _0 |Size: 2309026
* K) P/ ]" [) C6 VMD5sum: abfee8be3d7aeb0ad3eb4e7738838dca
2 p( r9 s6 /8 b) o: |6 v# O/ YSHA1: 8a51c79c2b961686b98617772b9da4800f173dbe
) O: _/ ?; R) D0 nSHA256: 115aad59c02eee574066e21e6ed7a32bee1ed86e3abb73189645928832258ea0
& M' D& U' B+ u3 j4 A$ B! L$ UDescription: The GNU C preprocessor 4 ]$ c: C1 @6 g: [4 E: /5 X* f
A macro processor that is used automatically by the GNU C compiler ; n; N& C0 q+ z* K
to transform programs before actual compilation.
; c3 g" w- g5 o8 f .   M: _% k8 U' H1 i  @
This package has been separated from gcc for the benefit of those who
9 Q( V! i2 p) y1 j  h6 Y0 B. O4 J) _ require the preprocessor but not the compiler. / B* q# /0 v) R5 v* {
Bugs: mailto:ubuntu-users@lists.ubuntu.com 9 |* _6 g0 E: k2 p/ {
Origin: Ubuntu
0 u) V! t: W9 G! A' U4 ]Task: ubuntu-desktop, kubuntu-desktop, edubuntu-desktop, xubuntu-desktop
8 ~( U7 ?" `) t9 B0 A3 i' a

--------------------next---------------------
引用:
6 i% Q$ t# /* GPackage: libgcc1
1 g; i+ i3 y& A) W4 y, q! P  KPriority: required
+ c; V' N0 y, t* [9 W7 ESection: libs 1 y; w" S& Y7 o( t2 B- e2 ?* l
Installed-Size: 68 $ F, D' a0 [$ F5 o* e& l  v# C
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com> : Q0 D. p" `2 y$ g0 @
Original-Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
! q! Y; E# _, G7 o; R/ A& mArchitecture: i386 / Q7 u, T) ]3 ?5 Q
Source: gcc-4.1 (4.1.1-13ubuntu5) ' s" b, q9 @3 m; O
Version: 1:4.1.1-13ubuntu5
) L% J0 L3 K7 H2 Z  M9 ODepends: gcc-4.1-base (= 4.1.1-13ubuntu5), libc6 (>= 2.4-1)
1 H* s; h" z: F5 L+ F* C1 C, `Filename: pool/main/g/gcc-4.1/libgcc1_4.1.1-13ubuntu5_i386.deb
' M# l1 X5 u) [8 a- b  Q7 e7 H8 bSize: 21404 ' o! e/ b7 F; Z) Y3 r1 {
MD5sum: 879959bc964403be55aa096a8bb269f9
( [, |' /% I; x! D9 aSHA1: 3a3cfd824e25a2ce9008d98da1269f5ffdb7507f
1 S1 n* p( x, ?( f6 /! O' L) dSHA256: 62f3f64daaa1dd19fc76d966718184d1e0e0ee9f733f7f955b8b09e27b69a7d1
3 H" [5 c# U+ {Description: GCC support library ; Z& x2 z3 /" g' n
Shared version of the support library, a library of internal subroutines
7 `: ~; L5 /, E% R6 b that GCC uses to overcome shortcomings of particular machines, or
+ M; m4 j  n: J# K& }7 D special needs for some languages. # K( Z4 `4 X; u5 Q) B
Bugs: mailto:ubuntu-users@lists.ubuntu.com $ B% ?3 Y6 J; X# F; A8 i$ z" `
Origin: Ubuntu % ?: }; y, l, B) u* G6 m
Task: minimal
: K, R2 F5 W3 I7 }# N

--------------------next---------------------
引用:
0 ~0 ~  a8 }4 C, }, NPackage: libc6 9 n4 K4 a" `/ r$ o5 ^: h6 p4 |8 w3 N
Priority: required 4 Q& B' d! n+ x( j2 k& t% i& u* ~
Section: base
# A6 d, T) C3 QInstalled-Size: 9992 / a; [' O" q# o' S" A
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
$ u' U. s2 K. p9 j3 M5 h, @Original-Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org> 8 M8 w: A' y  p' ?
Architecture: i386
- b- M8 b- J$ iSource: glibc 8 w& }- {, x2 T- {' z# }9 ^- u
Version: 2.4-1ubuntu12.3 4 A4 w3 [* p4 N) /1 R- X8 z
Replaces: ldso (<= 1.9.11-9), timezone, timezones, gconv-modules, libtricks, libc6-bin, netkit-rpc, netbase (<< 4.0)
# u. q) E& X) e4 QProvides: glibc-2.3.6-2, glibc-2.3.5-3
5 ~, @; r% X1 V% @Depends: locales (>= 2.3.11) 4 h# W7 U4 z' o* F
Suggests: locales, glibc-doc - J3 I- f+ Q9 j2 X8 P
Conflicts: strace (<< 4.0-0), libnss-db (<= 2.2-6.1.1), timezone, timezones, gconv-modules, libtricks, libc6-doc, libc5 (<< 5.4.33-7), libpthread0 (<< 0.7-10), libc6-bin, libwcsmbs, apt (<< 0.3.0), libglib1.2 (<< 1.2.1-2), netkit-rpc, wine (<< 0.0.20031118-1), cyrus-imapd (<< 1.5.19-15), e2fsprogs (<< 1.35-7), initrd-tools (<< 0.1.84.1), libterm-readline-gnu-perl (<< 1.15-2)
2 g  A' h: l% y: ~8 B" u: n# pFilename: pool/main/g/glibc/libc6_2.4-1ubuntu12.3_i386.deb
# J  i0 {; ~3 V! i/ o( q; eSize: 4129182 ; g, N+ Y- O; z% I( q8 T2 ]! v
MD5sum: 012994de4fa9093d6fdba6c2304ddb9a
! i) Y5 q3 Y1 Q$ C; X9 ^SHA1: 187b850b1ac6153838ae2c1f8518342325ffe2ca . v% ]% B" Q# Q$ J" ?! P: z
SHA256: 6ad0ee8cccb09117df4f6c02a275940b8bb27883219b205cad1840ccf870a790 ) X4 v1 ~/ E% S! n9 r( T4 _8 F3 B
Description: GNU C Library: Shared libraries
3 p! `- y: W/ U9 f9 @, E) G8 ]. i8 ? Contains the standard libraries that are used by nearly all programs on   U* M# I% X, d$ K8 Y5 j6 M0 r
the system. This package includes shared versions of the standard C library
" k; f3 F% V% s: {2 G+ u and the standard math library, as well as many others.
6 a6 W  E9 y. X, r. q: z3 XBugs: mailto:ubuntu-users@lists.ubuntu.com 0 U. h1 F/ E8 x( I4 K' S) f
Origin: Ubuntu
% H& w0 e) z& p# wTask: minimal , f9 Q8 d$ Z9 X8 u0 Y1 R4 ]4 g

--------------------next---------------------
引用:
, |- T/ M. u  r: iPackage: binutils
9 O+ r: I3 ]; R% ]" A3 D6 y" @" PPriority: optional * p* I( M- L- l' c6 d
Section: devel . y  /* d$ t) @
Installed-Size: 7076 ) q. w7 R  H  H  i/ K* K/ P
Maintainer: James Troup <james@nocrew.org> ' I3 j7 P1 y/ U+ @
Architecture: i386
5 J& W9 r( ~5 c( k* y6 }Version: 2.17-1ubuntu1 ; O& o$ _$ V* {* [
Provides: elf-binutils 1 g, e6 R) T, l
Depends: libc6 (>= 2.4-1) + /1 G  d8 h3 |. Z% X7 p# x, A+ {
Suggests: binutils-doc (= 2.17-1ubuntu1)
; e1 w! f, q0 |4 g2 p! ?; ]# x9 hConflicts: gas, elf-binutils, modutils (<< 2.4.19-1)
8 [7 F7 c( M9 Y: f% m/ v% i; fFilename: pool/main/b/binutils/binutils_2.17-1ubuntu1_i386.deb . n; R& {+ J/ b. G0 g! z
Size: 1440506
; C+ u+ {- /1 l4 d  jMD5sum: e9ae8f7ad19ce94dbfb2d96c3023941b . F: L' A4 y6 ]) i
SHA1: 58bb97665e26785b1667f9d988443b9719c57bea 2 u* z" h/ i) W, /! R2 o3 {+ o% C
SHA256: 43c9ee10660b853deea247c21c5ad61d5d184e6b13484eb6c6cd696d17eae31e ( x2 ]" Z' g; l# G$ ]
Description: The GNU assembler, linker and binary utilities
  X; U0 k7 {3 @. a0 r The programs in this package are used to assemble, link and manipulate
. A' W/ E5 F; l binary and object files.  They may be used in conjunction with a compiler
9 ]# V; /% W5 v* Z, ^  T8 ~6 r4 a and various libraries to build programs. 2 I7 z% _, l. r; b+ g2 K
Bugs: mailto:ubuntu-users@lists.ubuntu.com
( G4 J) v5 b! g2 l: F, W0 F# q9 ~Origin: Ubuntu 0 d( /$ b& p: i+ f
Task: ubuntu-desktop, kubuntu-desktop, edubuntu-server, xubuntu-desktop
+ z; I! f  R) g4 U; |

--------------------next---------------------
引用:
" V5 `6 F5 h7 D1 x) z7 s& //usr/bin/size  # 显示每个目标文件或归档文件的章节大小和总的大小 1 y) /8 ?1 f/ Y3 A9 E
/usr/bin/objdump # 显示目标文件的信息
6 T2 B. f. A1 ~* t' i/usr/bin/ar # 归档文件管理工具,可以创建、修改或打开一个归档文件
1 t: o% D) b# o1 e6 H6 o3 i/usr/bin/strings  # 显示一个文件中的可打印字符串,比如文本文件的全部或目标文件里的字符串
$ b  C4 p5 c% B+ X& u- U1 ^* J8 K/usr/bin/ranlib # 产生归档文件的索引 " @, v6 J$ ?8 q
/usr/bin/objcopy # 复制或转换目标文件 * b) ~# K/ F, k+ {9 i7 z
/usr/bin/addr2line # 把一个地址信息转换为文件名和行号 % N9 V  d. N& _/ G! U% b2 ^
/usr/bin/readelf # 显示 ELF 文件信息, ELF 文件格式即 Linux 目前流行的可执行文件格式 0 F( D: P+ F+ A; K  b) l
/usr/bin/nm # 显示目标文件里的符号   `2 B: K9 g0 J* [' Y( P
/usr/bin/strip # 去除目标文件里的符号
% B) z/ s8 _! x' k$ z/usr/bin/c++filt # 识别 C++ 和 Java 符号 ; ?) h  C" w0 E
/usr/bin/as # GNU 汇编工具
) // k# j# y5 b9 W/usr/bin/gprof #
% n+ K: Z% s3 j/ r/usr/bin/ld # GNU 链接工具
) U1 z4 C; B' Y7 N6 /

--------------------next---------------------
引用:
/ n% U; {# O, u0 H0 L$ G
Package: locales " O- `( R% ~# i- K2 ]; z" S; ~
Priority: required
; x( Q+ d5 f$ q  Z) ]3 ]8 BSection: base
. `( s3 h7 J* a! w. r8 b6 JInstalled-Size: 7284
. y9 y* h7 v1 V2 g1 W" ?* sMaintainer: Martin Pitt <martin.pitt@ubuntu.com>
5 Q/ l- c2 @6 Q3 ~Architecture: all
( V- L+ w( ^1 n' s$ uSource: langpack-locales - T( `7 n5 h: c" s2 i
Version: 2.3.22 . z  ~, O0 e, d  c
Replaces: belocs-locale-data, base-config, libc6 (<< 2.3.6-0ubuntu6), libc6.1 (<< 2.3.6-0ubuntu6)
- q" p1 S0 E* m. d7 i0 S  pDepends: belocs-locales-bin (>= 2.4), tzdata
1 o' [0 J$ R$ ?1 ]2 Y$ d' bConflicts: belocs-locale-data, base-config 5 T+ @# q0 `/ S! N# c8 ^' _
Filename: pool/main/l/langpack-locales/locales_2.3.22_all.deb
5 n% a* O$ m$ S+ {Size: 3023314 ! I# T3 W% r2 {) B
MD5sum: bfc03e46a01addb754b9ea03979c3458
" v; @0 H* /& W+ }3 Y" J; tSHA1: 219943450cf30851870b89cabe766da04b4cdff3 0 _$ o: ^+ @5 U4 B
SHA256: fe9345e58e70db1c8c6e798f40a07d988f2d4c5de4408e9c8ac3db87d99fbe24 $ r; N3 B/ M& c( N
Description: common files for locale support 6 x: Z! ?1 W. |1 J
This package provides support for localized environments (locales).
1 W( n% g( b3 ^. y It installs character and transliteration maps, provides the POSIX
' {3 m- /: y; @0 C' n2 g6 Q locale definition and provides common scripts for language pack
% n  _1 J! t, N/ ?4 y& / handling. : O1 i" R) c* X
.   |2 l  q$ p9 p, |
The actual locale definitions are not part of this package, these are . ^& I; g2 U% {4 g- Q3 t& L9 ?0 g
shipped in the language packs and are installed and removed ' o: m2 ?: A' U9 G
automatically.
0 I" p' a; `/ K" m) ^9 }! x" f3 E% oBugs: mailto:ubuntu-users@lists.ubuntu.com
) D( ?2 r5 `6 w- C- p& {# M5 p8 qOrigin: Ubuntu ' o* Z5 o1 Y6 `7 K" Z4 y
Task: minimal
  [1 X7 j0 X9 C2 `% ~" y

--------------------next---------------------
引用:
' O1 v# c7 a% N
Package: make - K# [8 ]  @. k3 P/ h  i
Priority: optional
& {# s; N7 d8 O; WSection: devel . Y" f1 S! @3 a+ b) a$ t1 r9 {
Installed-Size: 1200
( P$ _. ^$ G& xMaintainer: Manoj Srivastava <srivasta@debian.org>
/ f4 b+ N7 P, Z, @5 I) _' p' Z  [8 nArchitecture: i386
4 E5 u2 X' l1 E# ?. H  I2 y) b! M  `% ZSource: make-dfsg
( U5 e% {) [1 `7 ]8 t+ {! mVersion: 3.81-2
7 g7 M* U' J+ m* MDepends: libc6 (>= 2.4-1)
" /: U* ^5 R' x5 v$ C# Q( KSuggests: make-doc-non-dfsg 1 q, `! {+ a" R2 a
Filename: pool/main/m/make-dfsg/make_3.81-2_i386.deb 9 |, t: s) l! h/ Q5 x0 ^
Size: 148054 ; v) r% a- l1 @0 E3 ]
MD5sum: 818d9b86d322629e5f218e8a101157c9 4 ~1 G% }7 T2 n7 j3 p! Z, M3 e; U; Y6 R$ A
SHA1: b5a04fd649b418b689c4918f17b5d94d01b11c5d $ J' q; m, v+ @* r; P4 f5 q
SHA256: 6dc9467599278802a34c2a7ee9125a7f4b42719fcc8fdab8124bde7db80c5328 - T- Y: n% /) e% B4 t5 D, G% T
Description: The GNU version of the "make" utility.
/ h9 N$ J0 E; S+ a GNU Make is a program that determines which pieces of a large
+ Y  y% l' M. h. m. Z2 }: w# b9 _ program need to be recompiled and issues the commands to recompile : ]4 h% O# F9 F4 r' T" p) o8 }
them, when necessary. More information about GNU Make can be found in
1 f0 {* f8 t3 t4 z the `make' Info page. The upstream sources for this package are
, /2 n9 T% T4 e. n2 [4 q& r available at the location . The ) P: c+ W/ l1 D8 E
documentation for this package does not meet the Debian Free Software & N8 /# l! g0 @4 T9 k- D6 Y' R
Guidelines, and has been removed from this package.
9 V% _1 S' W4 r8 jBugs: mailto:ubuntu-users@lists.ubuntu.com
* r4 x1 u& ^/ v0 U* m" s6 Q5 bOrigin: Ubuntu ! o, R3 C, e! v7 L" h0 C/ d! V
Task: ubuntu-desktop, kubuntu-desktop, xubuntu-desktop
7 T& u0 e- x  d0 y& @

* y' [+ ^% h- Q# i6 u* G
14、make-doc* Y$ n. o, O& e7 O+ t  ^' ]2 `
要运行make工具,先得学会怎么用它吧?看这个软件包提供的文档就行了。此软件包信息如下:
$ o$ ]  P6 t/ r4 O+ ^

引用:
, p( R8 c# C2 u) ~8 fPackage: make-doc ! n  ~+ l8 L7 D3 B* ^5 l2 q3 A
...... " k4 N+ ]  S- G/ M4 I
Description: Documentation for the GNU version of the "make" utility. . z0 H4 v' ?) `6 {# @- H6 z
This package contains the documentation for GNU Make.  The upstream 6 j* h+ W, x* T1 H
sources for this package are available at the location * p4 W; D0 t) /6 p: K
. This package has been stripped down to 9 A. r* i5 @6 t. D  G
only contain the documentation; since the documentation is covered
% d: ]5 f2 Y+ [% H$ g under a non-free license and thus has been moved to ) S. ?/ T5 R! }" W7 J3 S2 A
non-free/doc. Make itself remains in Debian.
- d! j2 Y9 q. R; D5 I4 ]) KEnhances: make
  N$ L! a0 p6 ]" F' W2 C1 oBugs: mailto:ubuntu-users@lists.ubuntu.com
, L( c# _8 Y/ W2 r# S) r$ nOrigin: Ubuntu ' u3 n  L) P3 l# c

0 J) Y* I5 Z% {
安装好这个软件包后,用浏览器打开/usr/share/doc/make-doc/make.html文档开始学习make的用法吧。
" [' i; v0 D+ z8 S/ Z) y
1 ^' c- i& v4 b1 L+ d& [15、gdb
, h+ r' a6 y  b( [$ i" d编写程序必然需要调试,在Linux常用的程序调试工具是gdb,此软件包信息如下:4 /5 ^- Y3 o$ w/ I. ^

引用:
7 P) P7 O- B- F) Y8 z) QPackage: gdb
0 U' m' R& d# ?9 xPriority: optional
# G8 T; W/ @) S6 C) ?! PSection: devel % K  W5 t, X0 i3 Z' r7 U
Installed-Size: 5108 3 i6 T) J1 R) L0 I! ^8 O
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
$ b% n: V8 /9 H6 l9 ?% NOriginal-Maintainer: Daniel Jacobowitz <dan@debian.org> + X5 I. P1 h# {: ]1 p
Architecture: i386 . u* z0 /- _0 P  G7 D, H. d
Version: 6.4.90.dfsg-1ubuntu3 & R. d* A4 j& E+ x
Replaces: gdb-arm, insight (<< 6.1+cvs.2004.04.07-1)
0 D& [# B+ S9 c1 u; x, ZDepends: libc6 (>= 2.4-1), libncurses5 (>= 5.4-5), libreadline5 (>= 5.1)
2 ^8 Q, I8 i- e" ~/ D2 c, ]1 R0 TSuggests: gdb-doc
. f# F& Q: |6 `0 B. X! c5 T7 PConflicts: gdb-arm 5 d4 D; |/ o: Q) d8 r
Filename: pool/main/g/gdb/gdb_6.4.90.dfsg-1ubuntu3_i386.deb
; |7 ]- Z  ?& y% T% V. dSize: 2371532
! C0 u, E) i4 @$ DMD5sum: c3483bd4246e5a15e1a940d4b907c45e
4 r7 R+ N) w/ G2 a9 J2 S+ H0 j; _SHA1: 986b32bde241bef04e3e61a3fbe74e16f32b526a
) l) Z% i% s; H' ?, K" sSHA256: 69adcb23c8be1e0a50bb59f916a32a7da90836b02e08d2ca84e8ae63fad2fc01 6 f' k/ J# P* w/ H# P9 _# e
Description: The GNU Debugger
/ l+ H# h5 n; J# U( |% d+ z GDB is a source-level debugger, capable of breaking programs at
3 U" o* u) L* c6 W$ R' N" L/ { any specific line, displaying variable values, and determining
$ R$ F9 b2 g9 G  r) J where errors occurred. Currently, it works for C, C++, Fortran, 0 }7 s0 [8 X2 h' D! u
Modula 2 and Java programs. A must-have for any serious 4 Y; /2 u' X  b4 p" `  K$ f# q
programmer. ; }; |8 q2 W' /
Bugs: mailto:ubuntu-users@lists.ubuntu.com
: t" R1 K; Q* P/ U5 P/ SOrigin: Ubuntu 1 l( {/ R- y' P9 ]- N, ~* G
Task: ubuntu-desktop, kubuntu-desktop, edubuntu-desktop
4 w! Q+ z8 `+ I$ V$ t% ?

3 l* |# u4 A2 v16、gdb-doc& y% [7 Z1 i9 e# [) o
有了上面的gdb程序调试工具了,怎么学会使用它呢?安装这个软件包gdb-doc,即gdb的文档,此软件包信息如下:
6 [; ]& f9 R5 h8 o

引用:
; K1 q, x  _6 R; zPackage: gdb-doc & s: L: q7 q! t( v# f  ~, t
......
& h, i8 p$ s: o/ f# T" ?& U! ODescription: The GNU Debugger Documentation 2 F4 O$ V2 [; R% L. p/ M% I
GDB is a source-level debugger, capable of breaking programs at " T3 J) P; R' x' G$ q7 D% e
any specific line, displaying variable values, and determining
1 g- d5 Z- Y! [. _! ~' @% f% / where errors occurred. Currently, it works for C, C++, Fortran, + D* k$ |8 e# K) l8 G4 w3 m6 n
Modula 2 and Java programs. A must-have for any serious
9 |: D+ ?2 B7 ?  l  x5 `$ Y programmer.
' j, g& |! o6 K7 i0 ]' D . - }/ ]' x8 Q4 i. ^! N& Z* n
This package contains the GDB and GDB Internals manuals.
; a! T6 }: l6 XBugs: mailto:ubuntu-users@lists.ubuntu.com % x* P* J# q3 A& L6 E) S
Origin: Ubuntu
5 D9 f- T0 o0 M3 W

2 B; z+ P9 z8 V# y+ V
安装好软件后就可以通过电脑上的文档自学gdb的使用了。
+ {4 }, u- [5 a9 @5 D( L1 d2 D
$ x* ^/ {" F, h6 U+ l1 H17、编辑器9 D& F( v7 _# C% S5 P
要编写C程序,总得有个编辑工具吧?Linux下这类工具相当多,关键在于熟练掌握一种。5 T7 Y; W: c0 Q6 B0 y* `
比如文本界面的编辑器vi, vim, emacs等
- x; |  w! m( k% ^  w比如图形界面的编辑器gedit, kate, kwrite等2 f! V; h& i. J3 A9 Z2 B
又比如IDE环境的:anjuta, eclipse, kdevelop等
1 L0 r/ c! C1 P
4 u- h+ k( @# y2 l) Z+ p* S/ M选择一个自己习惯的熟练使用起来就行了。. k3 _4 @% ^. T: d: g5 s% c* M
& T  G2 y' T) z1 `% h
这些只是基本的Linux下C编程环境必须的软件包。如果这些熟练掌握了,可以试试下面这些软件包:  T3 F# j' J1 f. O; ?/ |1 z
autoconf,  automake1.9, libtool, flex, bison
5 M4 X) ]4 `) Z8 ~( K当然还有对应的文档用于自学。) n/ ~1 A& D. s5 p$ r
甚至可以试试IDE环境下其它语言编程,比如gtk, qt等      
--------------------next---------------------

引用:
7 P) P7 O- B- F) Y8 z) QPackage: gdb
0 U' m' R& d# ?9 xPriority: optional
# G8 T; W/ @) S6 C) ?! PSection: devel % K  W5 t, X0 i3 Z' r7 U
Installed-Size: 5108 3 i6 T) J1 R) L0 I! ^8 O
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
$ b% n: V8 /9 H6 l9 ?% NOriginal-Maintainer: Daniel Jacobowitz <dan@debian.org> + X5 I. P1 h# {: ]1 p
Architecture: i386 . u* z0 /- _0 P  G7 D, H. d
Version: 6.4.90.dfsg-1ubuntu3 & R. d* A4 j& E+ x
Replaces: gdb-arm, insight (<< 6.1+cvs.2004.04.07-1)
0 D& [# B+ S9 c1 u; x, ZDepends: libc6 (>= 2.4-1), libncurses5 (>= 5.4-5), libreadline5 (>= 5.1)
2 ^8 Q, I8 i- e" ~/ D2 c, ]1 R0 TSuggests: gdb-doc
. f# F& Q: |6 `0 B. X! c5 T7 PConflicts: gdb-arm 5 d4 D; |/ o: Q) d8 r
Filename: pool/main/g/gdb/gdb_6.4.90.dfsg-1ubuntu3_i386.deb
; |7 ]- Z  ?& y% T% V. dSize: 2371532
! C0 u, E) i4 @$ DMD5sum: c3483bd4246e5a15e1a940d4b907c45e
4 r7 R+ N) w/ G2 a9 J2 S+ H0 j; _SHA1: 986b32bde241bef04e3e61a3fbe74e16f32b526a
) l) Z% i% s; H' ?, K" sSHA256: 69adcb23c8be1e0a50bb59f916a32a7da90836b02e08d2ca84e8ae63fad2fc01 6 f' k/ J# P* w/ H# P9 _# e
Description: The GNU Debugger
/ l+ H# h5 n; J# U( |% d+ z GDB is a source-level debugger, capable of breaking programs at
3 U" o* u) L* c6 W$ R' N" L/ { any specific line, displaying variable values, and determining
$ R$ F9 b2 g9 G  r) J where errors occurred. Currently, it works for C, C++, Fortran, 0 }7 s0 [8 X2 h' D! u
Modula 2 and Java programs. A must-have for any serious 4 Y; /2 u' X  b4 p" `  K$ f# q
programmer. ; }; |8 q2 W' /
Bugs: mailto:ubuntu-users@lists.ubuntu.com
: t" R1 K; Q* P/ U5 P/ SOrigin: Ubuntu 1 l( {/ R- y' P9 ]- N, ~* G
Task: ubuntu-desktop, kubuntu-desktop, edubuntu-desktop
4 w! Q+ z8 `+ I$ V$ t% ?


--------------------next---------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值