Life 版 (精华区)
发信人: xunhuan (那一剑的风情vs杨柳岸晓风残月), 信区: other
标 题: 1
发信站: 听涛站 (Thu Jun 1 11:57:14 2000), 转信
第一讲 Linux 编程入门与基本编程工具的使用
主要内容
什么是 Linux
Linux 的发展历史以及关键人物
Linux 与其他操作系统
Linux 的编程常识
Linux 上进行程序开发的典型场景
万年编辑器: vi
程序和脚本
Linux 上的 C 编译器和调试器
GNU make 和 makefile
实用工具
Bash 命令行与脚本
整体思路
本讲是系列讲座的第一讲。其目的主要是通过介绍 Linux 上编程的基本工具以及一些新
手必须掌握的技巧,迅速引导新手入门,以避免走弯路。
首先对 Linux 作一简单介绍,然后通过讲解 Linux 上进行编程的常识以及典型场景的
演示,使大家对 Linux 上的程序开发有一个感性认识。在此基础上,重点讲述 Linux
上 C 语言编程的基本工具,包括编译器和调试器,主要是它们的重要选项和基本用法。
接下来讲述在项目组织和开发过程中非常重要的工具,即 GNU make 和 makefile。最后
,介绍程序开发过程最为常用的工具,以及将这些工具有机组织起来的 Shell 机制,即
命令行和脚本。
各部分要点
1.1 什么是 Linux
Linux 的发音
Linux 的官方定义
POSIX 及其重要地位
GNU 和 Linux 的关系
GPL 及其主要内容
Linux 的主要发行版
1.2 Linux 的发展历史以及关键人物
UNIX, GNU, Linux 的关键人物及贡献
Linux 发展的重要里程碑
1.3 Linux 与其他操作系统
Linux 与主要 UNIX 系统之间的关系
Linux 与 Windows 操作系统
1.4 Linux 的编程常识
标准 (ANSI C, POSIX, SVID, XPG, ...)
函数库和系统调用
在线文档 (man, info, HOW-TO, ...)
C 语言编程风格
库和头文件的保存位置
共享库及其相关配置
1.5 Linux 上进行程序开发的典型场景
控制台上的开发场景
X Window 上的开发场景
1.6 万年编辑器: vi
vi 的工作模式
编辑模式
插入模式
命令模式
shell 切换
选项设置
vim 和 gvim 的高级特色
1.7 程序和脚本
程序:编写, 编译, 调试和执行
脚本:编写, 执行
1.8 Linux 上的 C/C++ 编译器和调试器
运行 gcc/egcs
gcc/egcs 的主要选项
gdb
gdb 的常用命令
gdb 使用范例
其他程序/库工具 (ar, objdump, nm, size, strings, strip, ...)
1.9 GNU make 和 makefile
GNU make
makefile 基本结构
makefile 变量
GNU make 的主要预定义变量
隐含规则
makefile 范例
运行 make
1.10 实用工具
正则表达式
压缩和归档工具 (gzip, bzip2, tar, ...)
搜索和排序 (grep, find, sort, ...)
文件编辑 (sed, tr)
文件比较 (cmp, comm, diff, ...)
其他 (ed, emacs, ...)
1.11 Bash 命令行与脚本
Bash 介绍
重要的命令行机制 (I/O 重定向, 管道, ...)
Bash 脚本介绍
变量
控制结构
范例
练习
如果还没有安装 Linux 系统的话,请安装一种 Linux 发行版,并掌握 Linux 的基本使
用。
在下面这些练习中需要编辑文件时,请使用 vi 编辑器。
编写一个 Bash 脚本,用来将当前目录树中(递归)所有 DOS 格式的文本文件转换为
UNIX 格式的文本文件,新文件名称添加后缀 .unix。
试着将自己在 DOS 或 Windows 下编写过的程序移植到 Linux,编译通过并测试正确性
。
从网上下载 CCE 或 MiniGUI 的源代码,然后研究其 Makefile 的结构。
用 C 语言或自己喜欢的语言实现第 3 题。
参考书目
Phil Cornes, The Linux A - Z, Prentice Hall Europe, 1997.
(中译本已由电子工业出版社出版, 童寿彬等译)
Naba Barkakati, The Linux Secrets, IDG Books Worldwide, Inc. 1999.
(中译本即将由电子工业出版社出版, 魏永明等译)
John Goerzen, The Linux Programming Bible, IDG Books Worldwide, Inc. 1999.
(中译本即将由电子工业出版社出版, 魏永明等译)
进一步读物
W. Richard Stevens, Advanced Programming in the UNIX Environment, Chpater 1
and Chapter 2.
反馈
本讲由魏永明讲解。欢迎任何意见和建议,可发 email: ymwei@263.net 与魏永明联系
。
AKA 自由软件系列讲座
--
※ 来源:.听涛站 cces.net.[FROM: 匿名天使的家]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:4.538毫秒