程序开 发环境 卢脁 Linux 程序开发环境 Parallel Programming Environment Computing

Windows IDE开发环境 与Visual 卢脁 Studio ++ 类似的软件 Department of Science and Engineering Computing 与windows 不 同的开发环境 School of Mathematics School Peking University 程序的编译和 运行 程序的调试 August 14, 2007 软件开发 Parallel Computing

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 输入,编译,调试,运行都有按钮或者快捷键 linux 怎样办? 如何向并行机群上提交一个程序?

Windows IDE开发环境

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE 开发环境 Turbo C 2.0, Borland C++, Visual Studio 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 linux 怎样办? 如何向并行机群上提交一个程序?

Windows IDE开发环境

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE 开发环境 Turbo C 2.0, Borland C++, Visual Studio 与Visual Studio C++ 类似的软件 输入,编译,调试,运行都有按钮或者快捷键

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 如何向并行机群上提交一个程序?

Windows IDE开发环境

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE 开发环境 Turbo C 2.0, Borland C++, Visual Studio 与Visual Studio C++ 类似的软件 输入,编译,调试,运行都有按钮或者快捷键 与windows 不 linux 怎样办? 同的开发环境

程序的编译和 运行

程序的调试

软件开发 Windows IDE开发环境

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE 开发环境 Turbo C 2.0, Borland C++, Visual Studio 与Visual Studio C++ 类似的软件 输入,编译,调试,运行都有按钮或者快捷键 与windows 不 linux 怎样办? 同的开发环境

程序的编译和 如何向并行机群上提交一个程序? 运行

程序的调试

软件开发 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 安装 新立得软件包管理器( Package Man- ager) 使用 参看我的博客的kdevelop分类的文章 其他 , eclips, kylix, glade, ...

与Visual Studio C++ 类似的软件

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 推荐使用。 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 使用 参看我的博客的kdevelop分类的文章 其他 Anjuta, eclips, kylix, glade, ...

与Visual Studio C++ 类似的软件

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 kdevelop 推荐使用。 与Visual Studio C++ 安装 新立得软件包管理器(Synaptic Package Man- 类似的软件 ager) 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 其他 Anjuta, eclips, kylix, glade, ...

与Visual Studio C++ 类似的软件

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 kdevelop 推荐使用。 与Visual Studio C++ 安装 新立得软件包管理器(Synaptic Package Man- 类似的软件 ager) 与windows 不 同的开发环境 使用 参看我的博客的kdevelop分类的文章

程序的编译和 运行

程序的调试

软件开发 与Visual Studio C++ 类似的软件

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 kdevelop 推荐使用。 与Visual Studio C++ 安装 新立得软件包管理器(Synaptic Package Man- 类似的软件 ager) 与windows 不 同的开发环境 使用 参看我的博客的kdevelop分类的文章

程序的编译和 运行 其他 Anjuta, eclips, kylix, glade, ...

程序的调试

软件开发 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境 UNIX 下最通用的编辑 5 器: vi 程序的调试

程序的编译和 运行 6 软件开发 程序的调试 文件组织 软件开发 使用工具make 文档的开发与维护 版本管理和协同工作 广泛使用的C 语言就是在UNIX 系统设计中发明的 在linux 下开发程序非常方便

与windows 不同的开发环境

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual 开发环境是系统的一部分 Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 在linux 下开发程序非常方便

与windows 不同的开发环境

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual 开发环境是系统的一部分 Studio C++ 类似的软件 广泛使用的C 语言就是在UNIX 系统设计中发明的 与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 与windows 不同的开发环境

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual 开发环境是系统的一部分 Studio C++ 类似的软件 广泛使用的C 语言就是在UNIX 系统设计中发明的 与windows 不 同的开发环境 在linux 下开发程序非常方便 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境 UNIX 下最通用的编辑 5 器: vi 程序的调试

程序的编译和 运行 6 软件开发 程序的调试 文件组织 软件开发 使用工具make 文档的开发与维护 版本管理和协同工作 在terminal 窗口type vi ,回车, 进入命令模 式 在命令模式下type i,进入输入模式 在输入模式下type Esc, 进入命令模式

输入模式 输入文字 模式切换 从一个模式进入另一个模式

UNIX 下最通用的编辑器: vi

Linux 程序开 发环境

卢脁

Parallel Computing

Windows 命令模式 可删除,查找,替换,保存,退出等等 IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 在terminal 窗口type vi ,回车, 进入命令模 式 在命令模式下type i,进入输入模式 在输入模式下type Esc, 进入命令模式

模式切换 从一个模式进入另一个模式

UNIX 下最通用的编辑器: vi

Linux 程序开 发环境

卢脁

Parallel Computing

Windows 命令模式 可删除,查找,替换,保存,退出等等 IDE开发环境 输入模式 输入文字 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 在terminal 窗口type vi ,回车, 进入命令模 式 在命令模式下type i,进入输入模式 在输入模式下type Esc, 进入命令模式

UNIX 下最通用的编辑器: vi

Linux 程序开 发环境

卢脁

Parallel Computing

Windows 命令模式 可删除,查找,替换,保存,退出等等 IDE开发环境 输入模式 输入文字 与Visual Studio C++ 类似的软件 模式切换 从一个模式进入另一个模式

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 在命令模式下type i,进入输入模式 在输入模式下type Esc, 进入命令模式

UNIX 下最通用的编辑器: vi

Linux 程序开 发环境

卢脁

Parallel Computing

Windows 命令模式 可删除,查找,替换,保存,退出等等 IDE开发环境 输入模式 输入文字 与Visual Studio C++ 类似的软件 模式切换 从一个模式进入另一个模式 与windows 不 在terminal 窗口type vi ,回车, 进入命令模 同的开发环境 UNIX 下最通用的编辑 式 器: vi

程序的编译和 运行

程序的调试

软件开发 在输入模式下type Esc, 进入命令模式

UNIX 下最通用的编辑器: vi

Linux 程序开 发环境

卢脁

Parallel Computing

Windows 命令模式 可删除,查找,替换,保存,退出等等 IDE开发环境 输入模式 输入文字 与Visual Studio C++ 类似的软件 模式切换 从一个模式进入另一个模式 与windows 不 在terminal 窗口type vi ,回车, 进入命令模 同的开发环境 UNIX 下最通用的编辑 式 器: vi 在命令模式下type i 进入输入模式 程序的编译和 , 运行

程序的调试

软件开发 UNIX 下最通用的编辑器: vi

Linux 程序开 发环境

卢脁

Parallel Computing

Windows 命令模式 可删除,查找,替换,保存,退出等等 IDE开发环境 输入模式 输入文字 与Visual Studio C++ 类似的软件 模式切换 从一个模式进入另一个模式 与windows 不 在terminal 窗口type vi ,回车, 进入命令模 同的开发环境 UNIX 下最通用的编辑 式 器: vi 在命令模式下type i 进入输入模式 程序的编译和 , 运行 在输入模式下type Esc, 进入命令模式 程序的调试

软件开发 gvim 图形化界面的vim

vi别的版本

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual Studio C++ improved vi distributed with most UNIX systems 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 vi别的版本

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual Studio C++ vim improved vi distributed with most UNIX systems 类似的软件

与windows 不 gvim 图形化界面的vim 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 gvim 最好用

Linux 程序开 发环境

卢脁 Figure: gvim 边界tex文档 Parallel Computing

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发

注意:111 行的}和} 的区别, 颜色区别中英文大括号很有帮 助。 自动完成功能,使用Tab键,Ctrl+n, Ctrl+p. tags功能,查找函数帮助 Tlist 列出程序结构

播放演示gvim 阅读编辑C++ code 的录像: gvim.mpeg

演示gvim 写程序的录像

Linux 程序开 发环境

卢脁

Parallel Computing Windows 语法高亮功能 IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 tags功能,查找函数帮助 Tlist 列出程序结构

播放演示gvim 阅读编辑C++ code 的录像: gvim.mpeg

演示gvim 写程序的录像

Linux 程序开 发环境

卢脁

Parallel Computing Windows 语法高亮功能 IDE开发环境

与Visual 自动完成功能,使用Tab键,Ctrl+n, Ctrl+p. Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 Tlist 列出程序结构

播放演示gvim 阅读编辑C++ code 的录像: gvim.mpeg

演示gvim 写程序的录像

Linux 程序开 发环境

卢脁

Parallel Computing Windows 语法高亮功能 IDE开发环境

与Visual 自动完成功能,使用Tab键,Ctrl+n, Ctrl+p. Studio C++ 类似的软件 tags功能,查找函数帮助 与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 播放演示gvim 阅读编辑C++ code 的录像: gvim.mpeg

演示gvim 写程序的录像

Linux 程序开 发环境

卢脁

Parallel Computing Windows 语法高亮功能 IDE开发环境

与Visual 自动完成功能,使用Tab键,Ctrl+n, Ctrl+p. Studio C++ 类似的软件 tags功能,查找函数帮助 与windows 不 同的开发环境 Tlist 列出程序结构 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 演示gvim 写程序的录像

Linux 程序开 发环境

卢脁

Parallel Computing Windows 语法高亮功能 IDE开发环境

与Visual 自动完成功能,使用Tab键,Ctrl+n, Ctrl+p. Studio C++ 类似的软件 tags功能,查找函数帮助 与windows 不 同的开发环境 Tlist 列出程序结构 UNIX 下最通用的编辑 器: vi 程序的编译和 播放演示gvim 阅读编辑C++ code 的录像: gvim.mpeg 运行

程序的调试

软件开发 更多参考:编辑C 程序的截图 vim 中文文档 vi 使用的图形总结

gvim 更多参考

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 上面的gvim 的配置,参考gvim 的色参高亮配置 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 vim 中文文档 vi 使用的图形总结

gvim 更多参考

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 上面的gvim 的配置,参考gvim 的色参高亮配置 与Visual Studio C++ 类似的软件 更多参考:编辑C 程序的截图

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 vi 使用的图形总结

gvim 更多参考

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 上面的gvim 的配置,参考gvim 的色参高亮配置 与Visual Studio C++ 类似的软件 更多参考:编辑C 程序的截图 与windows 不 vim 中文文档 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 gvim 更多参考

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 上面的gvim 的配置,参考gvim 的色参高亮配置 与Visual Studio C++ 类似的软件 更多参考:编辑C 程序的截图 与windows 不 vim 中文文档 同的开发环境 UNIX 下最通用的编辑 器: vi vi 使用的图形总结

程序的编译和 运行

程序的调试

软件开发 配置灵活 操作系统下, 源里现在的版本是emacs22,消除了 和scim冲突的毛病。 scim 会和一些软件有冲突,如vim的latex插件,可以换 成小企鹅输入法fcitx

“第一个人工生命”之称的emacs

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 功能强大

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 ubuntu 操作系统下, 源里现在的版本是emacs22,消除了 和scim冲突的毛病。 scim 会和一些软件有冲突,如vim的latex插件,可以换 成小企鹅输入法fcitx

“第一个人工生命”之称的emacs

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 功能强大 与Visual 配置灵活 Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 scim 会和一些软件有冲突,如vim的latex插件,可以换 成小企鹅输入法fcitx

“第一个人工生命”之称的emacs

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 功能强大 与Visual 配置灵活 Studio C++ 类似的软件 ubuntu 操作系统下, 源里现在的版本是emacs22,消除了 与windows 不 同的开发环境 和scim冲突的毛病。 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 “第一个人工生命”之称的emacs

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 功能强大 与Visual 配置灵活 Studio C++ 类似的软件 ubuntu 操作系统下, 源里现在的版本是emacs22,消除了 与windows 不 同的开发环境 和scim冲突的毛病。 UNIX 下最通用的编辑 器: vi scim 会和一些软件有冲突,如vim的latex插件,可以换 程序的编译和 成小企鹅输入法fcitx 运行

程序的调试

软件开发 命令行下输入gedit 启动 程序 和windows下 的notepad 类似 支持语法高亮 支持打开多个文档

Figure: 编辑C++ 程序

gedit: 易用的文本编辑器

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 命令行下输入gedit 启动 程序 Figure: gedit 编辑C++ 程序 和windows下 的notepad 类似 支持语法高亮 支持打开多个文档

gedit: 易用的文本编辑器

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 Figure: gedit 编辑C++ 程序 和windows下 的notepad 类似 支持语法高亮 支持打开多个文档

gedit: 易用的文本编辑器

Linux 程序开 发环境

卢脁

Parallel Computing 命令行下输入gedit 启动 Windows 程序 IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 Figure: gedit 编辑C++ 程序

支持语法高亮 支持打开多个文档

gedit: 易用的文本编辑器

Linux 程序开 发环境

卢脁

Parallel Computing 命令行下输入gedit 启动 Windows 程序 IDE开发环境

与Visual 和windows下 的notepad Studio C++ 类似的软件 类似

与windows 不 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 Figure: gedit 编辑C++ 程序

支持打开多个文档

gedit: 易用的文本编辑器

Linux 程序开 发环境

卢脁

Parallel Computing 命令行下输入gedit 启动 Windows 程序 IDE开发环境

与Visual 和windows下 的notepad Studio C++ 类似的软件 类似 与windows 不 支持语法高亮 同的开发环境 UNIX 下最通用的编辑 器: vi

程序的编译和 运行

程序的调试

软件开发 Figure: gedit 编辑C++ 程序

gedit: 易用的文本编辑器

Linux 程序开 发环境

卢脁

Parallel Computing 命令行下输入gedit 启动 Windows 程序 IDE开发环境

与Visual 和windows下 的notepad Studio C++ 类似的软件 类似 与windows 不 支持语法高亮 同的开发环境 UNIX 下最通用的编辑 器: vi 支持打开多个文档 程序的编译和 运行

程序的调试

软件开发 gedit: 易用的文本编辑器

Linux 程序开 发环境

卢脁

Parallel Computing 命令行下输入gedit 启动 Windows 程序 IDE开发环境 Figure: gedit 编辑C++ 程序

与Visual 和windows下 的notepad Studio C++ 类似的软件 类似 与windows 不 支持语法高亮 同的开发环境 UNIX 下最通用的编辑 器: vi 支持打开多个文档 程序的编译和 运行

程序的调试

软件开发 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 C gcc,cc, c++, g++, ::: f77, g77, gfortran :::

程序的编译和运行

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual 编译 源码) 目标文件) 可执行文件 Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 fortran f77, g77, gfortran :::

程序的编译和运行

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual 编译 源码) 目标文件) 可执行文件 Studio C++ 类似的软件 C gcc,cc, c++, g++, ::: 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 程序的编译和运行

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual 编译 源码) 目标文件) 可执行文件 Studio C++ 类似的软件 C gcc,cc, c++, g++, ::: 与windows 不 同的开发环境 fortran f77, g77, gfortran :::

程序的编译和 运行

程序的调试

软件开发 编译hello.cpp 的一个例子

Linux 程序开 发环境

卢脁

Parallel Computing complie 源文件)目标文件 Windows IDE开发环境 g++ -c -o hello.o hello.cpp 与Visual Studio C++ link 目标文件)执行文件 类似的软件

与windows 不 g++ -o hello.out hello.o 同的开发环境 run 执行程序 程序的编译和 运行 ./hello.out 程序的调试 注意:hello.out 前面要加./ 表示当前路径 软件开发 有多个源文件

Linux 程序开 发环境

卢脁

Parallel Computing a.cpp a.h b.cpp b.h main.cpp Windows IDE开发环境 假设所有的文件在一个目录下test, 该目录下没有其他文 与Visual 件 Studio C++ 类似的软件 下面的命令可以编译链接 与windows 不 同的开发环境 g++ -o main.out *.cpp

程序的编译和 运行 如果你的函数使用了sin, sqrt 类似的数学函数, 别忘用-lm 程序的调试 链接数学库 软件开发 g++ -lm -o main.out *.cpp -I 后接目录名,用来增加头文件搜索的路径 -L 后接目录名,用来增加库搜索的路径 -g 生成用来调试的程序 -On -O0 表示没优化,-O3 表示三级优化,默认是-O2 Note: kdevelop 集成开发环境中提供了菜单选项

编译链接的选项

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 -o 后接文件名,用来指定输出文件名字 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 -L 后接目录名,用来增加库搜索的路径 -g 生成用来调试的程序 -On -O0 表示没优化,-O3 表示三级优化,默认是-O2 Note: kdevelop 集成开发环境中提供了菜单选项

编译链接的选项

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 -o 后接文件名,用来指定输出文件名字 与Visual -I 后接目录名,用来增加头文件搜索的路径 Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 -g 生成用来调试的程序 -On -O0 表示没优化,-O3 表示三级优化,默认是-O2 Note: kdevelop 集成开发环境中提供了菜单选项

编译链接的选项

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 -o 后接文件名,用来指定输出文件名字 与Visual -I 后接目录名,用来增加头文件搜索的路径 Studio C++ 类似的软件 -L 后接目录名,用来增加库搜索的路径 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 -On -O0 表示没优化,-O3 表示三级优化,默认是-O2 Note: kdevelop 集成开发环境中提供了菜单选项

编译链接的选项

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 -o 后接文件名,用来指定输出文件名字 与Visual -I 后接目录名,用来增加头文件搜索的路径 Studio C++ 类似的软件 -L 后接目录名,用来增加库搜索的路径 与windows 不 -g 生成用来调试的程序 同的开发环境

程序的编译和 运行

程序的调试

软件开发 Note: kdevelop 集成开发环境中提供了菜单选项

编译链接的选项

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 -o 后接文件名,用来指定输出文件名字 与Visual -I 后接目录名,用来增加头文件搜索的路径 Studio C++ 类似的软件 -L 后接目录名,用来增加库搜索的路径 与windows 不 -g 生成用来调试的程序 同的开发环境 -On -O0 表示没优化,-O3 表示三级优化,默认是-O2 程序的编译和 运行

程序的调试

软件开发 Note: kdevelop 集成开发环境中提供了菜单选项

编译链接的选项

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 -o 后接文件名,用来指定输出文件名字 与Visual -I 后接目录名,用来增加头文件搜索的路径 Studio C++ 类似的软件 -L 后接目录名,用来增加库搜索的路径 与windows 不 -g 生成用来调试的程序 同的开发环境 -On -O0 表示没优化,-O3 表示三级优化,默认是-O2 程序的编译和 运行

程序的调试

软件开发 编译链接的选项

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 -o 后接文件名,用来指定输出文件名字 与Visual -I 后接目录名,用来增加头文件搜索的路径 Studio C++ 类似的软件 -L 后接目录名,用来增加库搜索的路径 与windows 不 -g 生成用来调试的程序 同的开发环境 -On -O0 表示没优化,-O3 表示三级优化,默认是-O2 程序的编译和 运行 Note: kdevelop 集成开发环境中提供了菜单选项 程序的调试

软件开发 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 gdb linux下的基本调试工具 nm, objdump 针对目标文件的工具 调试检查内存使用的工具GNU Checker, ElectricFence, Purify, TotalView, Valgrind 等

程序的调试

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 集成开发环境,容易用,按钮提供设置断点,开始调 与Visual 试,下一步,watch等等。 Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 nm, objdump 针对目标文件的工具 调试检查内存使用的工具GNU Checker, ElectricFence, Purify, TotalView, Valgrind 等

程序的调试

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 集成开发环境,容易用,按钮提供设置断点,开始调 与Visual 试,下一步,watch等等。 Studio C++ 类似的软件 gdb linux下的基本调试工具 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 调试检查内存使用的工具GNU Checker, ElectricFence, Purify, TotalView, Valgrind 等

程序的调试

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 集成开发环境,容易用,按钮提供设置断点,开始调 与Visual 试,下一步,watch等等。 Studio C++ 类似的软件 gdb linux下的基本调试工具 与windows 不 nm, objdump 针对目标文件的工具 同的开发环境

程序的编译和 运行

程序的调试

软件开发 程序的调试

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 集成开发环境,容易用,按钮提供设置断点,开始调 与Visual 试,下一步,watch等等。 Studio C++ 类似的软件 gdb linux下的基本调试工具 与windows 不 nm, objdump 针对目标文件的工具 同的开发环境 调试检查内存使用的工具GNU Checker, ElectricFence, 程序的编译和 运行 Purify, TotalView, Valgrind 等 程序的调试

软件开发 命令行窗口输入gdb 可执行文件,则启动调试窗口 set args, set environment, b main, run ::: 参考课本139页

gdb 的使用

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual 别忘了用-g 选项编译链接 Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 set args, set environment, b main, run ::: 参考课本139页

gdb 的使用

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual 别忘了用-g 选项编译链接 Studio C++ 类似的软件 命令行窗口输入gdb 可执行文件,则启动调试窗口

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 参考课本139页

gdb 的使用

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual 别忘了用-g 选项编译链接 Studio C++ 类似的软件 命令行窗口输入gdb 可执行文件,则启动调试窗口

与windows 不 set args, set environment, b main, run ::: 同的开发环境

程序的编译和 运行

程序的调试

软件开发 gdb 的使用

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual 别忘了用-g 选项编译链接 Studio C++ 类似的软件 命令行窗口输入gdb 可执行文件,则启动调试窗口

与windows 不 set args, set environment, b main, run ::: 同的开发环境 参考课本139页 程序的编译和 运行

程序的调试

软件开发 valgrind 的图形界面alleyloop. 能够memcheck , addrcheck, helgrind

Valgrind 的使用

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual valgrind Studio C++ 安装 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 能够memcheck , addrcheck, helgrind

Valgrind 的使用

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual valgrind Studio C++ 安装 类似的软件 valgrind 的图形界面alleyloop. 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 Valgrind 的使用

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 与Visual valgrind Studio C++ 安装 类似的软件 valgrind 的图形界面alleyloop. 与windows 不 memcheck , addrcheck, helgrind 同的开发环境 能够

程序的编译和 运行

程序的调试

软件开发 hello.cpp 中写了一个访问越界

Linux 程序开 发环境

卢脁

Parallel Figure: hello.cpp 的源程序 Computing

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 直接执行hello.out 的运行输出

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 Alleyoop的的图形界面

Linux 程序开 发环境

卢脁 Figure: alleyoop ./hello.out 出现的图形界面, 然后点击运行按钮出 Parallel Computing 现

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 错误信息

Linux 程序开 发环境

卢脁

Parallel Figure: 点击第二行前的三角 Computing

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发

错误在第11行访问了第7行分配地址之后第8个字节的地方。 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 文件组织 使用工具make 使用工具make 文档的开发与维护 版本管理和协同工作 文档的开发与维护 版本管理和协同工作 规模比单独的程序大,包含多个源码文 件,按一定目录结构组织在一起 需要附带一些图形文件和数据文件 要有比较清晰的说明文档 要能比较容易地在不同机器硬件和软件环 境中移植 要能提供一定的技术支持 Note: 做到这些并不是一件很容易的事。

软件的特点

软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 规模比单独的程序大,包含多个源码文 件,按一定目录结构组织在一起 需要附带一些图形文件和数据文件 要有比较清晰的说明文档 要能比较容易地在不同机器硬件和软件环 境中移植 要能提供一定的技术支持 Note: 做到这些并不是一件很容易的事。

软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境 软件的特点

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 需要附带一些图形文件和数据文件 要有比较清晰的说明文档 要能比较容易地在不同机器硬件和软件环 境中移植 要能提供一定的技术支持 Note: 做到这些并不是一件很容易的事。

软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境 软件的特点 与Visual 规模比单独的程序大,包含多个源码文 Studio C++ 类似的软件 件,按一定目录结构组织在一起 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 要有比较清晰的说明文档 要能比较容易地在不同机器硬件和软件环 境中移植 要能提供一定的技术支持 Note: 做到这些并不是一件很容易的事。

软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境 软件的特点 与Visual 规模比单独的程序大,包含多个源码文 Studio C++ 类似的软件 件,按一定目录结构组织在一起 与windows 不 需要附带一些图形文件和数据文件 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 要能比较容易地在不同机器硬件和软件环 境中移植 要能提供一定的技术支持 Note: 做到这些并不是一件很容易的事。

软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境 软件的特点 与Visual 规模比单独的程序大,包含多个源码文 Studio C++ 类似的软件 件,按一定目录结构组织在一起 与windows 不 需要附带一些图形文件和数据文件 同的开发环境 要有比较清晰的说明文档 程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 要能提供一定的技术支持 Note: 做到这些并不是一件很容易的事。

软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境 软件的特点 与Visual 规模比单独的程序大,包含多个源码文 Studio C++ 类似的软件 件,按一定目录结构组织在一起 与windows 不 需要附带一些图形文件和数据文件 同的开发环境 要有比较清晰的说明文档 程序的编译和 运行 要能比较容易地在不同机器硬件和软件环 程序的调试 境中移植 软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Note: 做到这些并不是一件很容易的事。

软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境 软件的特点 与Visual 规模比单独的程序大,包含多个源码文 Studio C++ 类似的软件 件,按一定目录结构组织在一起 与windows 不 需要附带一些图形文件和数据文件 同的开发环境 要有比较清晰的说明文档 程序的编译和 运行 要能比较容易地在不同机器硬件和软件环 程序的调试 境中移植 软件开发 要能提供一定的技术支持 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Note: 做到这些并不是一件很容易的事。

软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境 软件的特点 与Visual 规模比单独的程序大,包含多个源码文 Studio C++ 类似的软件 件,按一定目录结构组织在一起 与windows 不 需要附带一些图形文件和数据文件 同的开发环境 要有比较清晰的说明文档 程序的编译和 运行 要能比较容易地在不同机器硬件和软件环 程序的调试 境中移植 软件开发 要能提供一定的技术支持 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 软件开发

Linux 程序开 发环境

卢脁

Parallel 软件分类:商业软件,学术软件,公开软件 Computing (包括自由软件,免费软件等) Windows IDE开发环境 软件的特点 与Visual 规模比单独的程序大,包含多个源码文 Studio C++ 类似的软件 件,按一定目录结构组织在一起 与windows 不 需要附带一些图形文件和数据文件 同的开发环境 要有比较清晰的说明文档 程序的编译和 运行 要能比较容易地在不同机器硬件和软件环 程序的调试 境中移植 软件开发 要能提供一定的技术支持 文件组织 使用工具make Note: 文档的开发与维护 做到这些并不是一件很容易的事。 版本管理和协同工作 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 文件组织 使用工具make 使用工具make 文档的开发与维护 版本管理和协同工作 文档的开发与维护 版本管理和协同工作 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 文件组织 使用工具make 使用工具make 文档的开发与维护 版本管理和协同工作 文档的开发与维护 版本管理和协同工作 文件A修改后,文件B需要重新编译,成为B依赖于A Makele 给出文件之间的依赖关系 需要程序开发者自己给出这个关系 Makele 写成编译链接的命令 一个文件修改后,只有依赖于这个文件的文件才需要重 新编译

使用工具make

Linux 程序开 发环境

卢脁

Parallel Computing Windows 当有很多源文件的时候,编译很费时间 IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Makele 给出文件之间的依赖关系 需要程序开发者自己给出这个关系 Makele 写成编译链接的命令 一个文件修改后,只有依赖于这个文件的文件才需要重 新编译

使用工具make

Linux 程序开 发环境

卢脁

Parallel Computing Windows 当有很多源文件的时候,编译很费时间 IDE开发环境 文件A修改后,文件B需要重新编译,成为B依赖于A 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 需要程序开发者自己给出这个关系 Makele 写成编译链接的命令 一个文件修改后,只有依赖于这个文件的文件才需要重 新编译

使用工具make

Linux 程序开 发环境

卢脁

Parallel Computing Windows 当有很多源文件的时候,编译很费时间 IDE开发环境 文件A修改后,文件B需要重新编译,成为B依赖于A 与Visual Studio C++ Makele 给出文件之间的依赖关系 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Makele 写成编译链接的命令 一个文件修改后,只有依赖于这个文件的文件才需要重 新编译

使用工具make

Linux 程序开 发环境

卢脁

Parallel Computing Windows 当有很多源文件的时候,编译很费时间 IDE开发环境 文件A修改后,文件B需要重新编译,成为B依赖于A 与Visual Studio C++ Makele 给出文件之间的依赖关系 类似的软件 出 关 与windows 不 需要程序开发者自己给 这个 系 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 一个文件修改后,只有依赖于这个文件的文件才需要重 新编译

使用工具make

Linux 程序开 发环境

卢脁

Parallel Computing Windows 当有很多源文件的时候,编译很费时间 IDE开发环境 文件A修改后,文件B需要重新编译,成为B依赖于A 与Visual Studio C++ Makele 给出文件之间的依赖关系 类似的软件 出 关 与windows 不 需要程序开发者自己给 这个 系 同的开发环境 Makele 写成编译链接的命令 程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 使用工具make

Linux 程序开 发环境

卢脁

Parallel Computing Windows 当有很多源文件的时候,编译很费时间 IDE开发环境 文件A修改后,文件B需要重新编译,成为B依赖于A 与Visual Studio C++ Makele 给出文件之间的依赖关系 类似的软件 出 关 与windows 不 需要程序开发者自己给 这个 系 同的开发环境 Makele 写成编译链接的命令 程序的编译和 运行 一个文件修改后,只有依赖于这个文件的文件才需要重

程序的调试 新编译

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 编译命令前面一定要一, 注意不是空格,从网上 拷贝黏贴来的往往把 变成了空格。 如果名字是Makele, 直接输入make, 就开始编译 如果名字是别的如MakeleOther, 则可以make -f Make- leOther 来编译.

Makele 的格式

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 依赖关系的格式目标文件:依赖文件 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 如果名字是Makele, 直接输入make, 就开始编译 如果名字是别的如MakeleOther, 则可以make -f Make- leOther 来编译.

Makele 的格式

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 依赖关系的格式目标文件:依赖文件 与Visual 编译命令前面一定要一, 注意不是空格,从网上 Studio C++ 类似的软件 拷贝黏贴来的往往把 变成了空格。 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 如果名字是别的如MakeleOther, 则可以make -f Make- leOther 来编译.

Makele 的格式

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 依赖关系的格式目标文件:依赖文件 与Visual 编译命令前面一定要一, 注意不是空格,从网上 Studio C++ 类似的软件 拷贝黏贴来的往往把 变成了空格。 与windows 不 如果名字是Makele, 直接输入make, 就开始编译 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Makele 的格式

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 依赖关系的格式目标文件:依赖文件 与Visual 编译命令前面一定要一, 注意不是空格,从网上 Studio C++ 类似的软件 拷贝黏贴来的往往把 变成了空格。 与windows 不 如果名字是Makele, 直接输入make, 就开始编译 同的开发环境 如果名字是别的如MakeleOther, 则可以make -f Make- 程序的编译和 运行 leOther 来编译. 程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Makele 的例子

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 文件组织 使用工具make 使用工具make 文档的开发与维护 版本管理和协同工作 文档的开发与维护 版本管理和协同工作 文档和程序一致 能够生成多种格式的文档:tex,,rtf 可以对文本做版本管理

工具doxygen 的优点

文档的开发与维护

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 很重要,挺麻烦 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 文档和程序一致 能够生成多种格式的文档:tex,html,rtf 可以对文本做版本管理

文档的开发与维护

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 很重要,挺麻烦 与Visual Studio C++ 工具doxygen 的优点 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 能够生成多种格式的文档:tex,html,rtf 可以对文本做版本管理

文档的开发与维护

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 很重要,挺麻烦 与Visual Studio C++ 工具doxygen 的优点 类似的软件 文档和程序一致 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 可以对文本做版本管理

文档的开发与维护

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 很重要,挺麻烦 与Visual Studio C++ 工具doxygen 的优点 类似的软件 文档和程序一致 与windows 不 同的开发环境 能够生成多种格式的文档:tex,html,rtf

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 文档的开发与维护

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 很重要,挺麻烦 与Visual Studio C++ 工具doxygen 的优点 类似的软件 文档和程序一致 与windows 不 同的开发环境 能够生成多种格式的文档:tex,html,rtf

程序的编译和 可以对文本做版本管理 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 使用doxygen -g 生成一个Doxyle 稍微修改Doxyle, 然后doxygen 就会生成文档 语法格式和举例见我的主页

Doxygen 用法简介

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual 安装(Ubuntu下可以用新立得安装) Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 稍微修改Doxyle, 然后doxygen 就会生成文档 语法格式和举例见我的主页

Doxygen 用法简介

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual 安装(Ubuntu下可以用新立得安装) Studio C++ 类似的软件 使用doxygen -g 生成一个Doxyle

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 语法格式和举例见我的主页

Doxygen 用法简介

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual 安装(Ubuntu下可以用新立得安装) Studio C++ 类似的软件 使用doxygen -g 生成一个Doxyle

与windows 不 稍微修改Doxyle, 然后doxygen 就会生成文档 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Doxygen 用法简介

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual 安装(Ubuntu下可以用新立得安装) Studio C++ 类似的软件 使用doxygen -g 生成一个Doxyle

与windows 不 稍微修改Doxyle, 然后doxygen 就会生成文档 同的开发环境 语法格式和举例见我的主页 程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Doxygen 生成文档的截图

Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 框架

Linux 程序开 发环境 1 Windows IDE开发环境 卢脁

Parallel 2 与Visual Studio C++ 类似的软件 Computing

Windows 3 IDE开发环境 与windows 不同的开发环境

与Visual UNIX 下最通用的编辑器: vi Studio C++ 类似的软件 4 程序的编译和运行 与windows 不 同的开发环境

程序的编译和 5 程序的调试 运行 程序的调试 6 软件开发 软件开发 文件组织 文件组织 使用工具make 使用工具make 文档的开发与维护 版本管理和协同工作 文档的开发与维护 版本管理和协同工作 CVS and subversion 保留了CVS 的主要特征 增加了很多好的特点:除了能记录文件的变化,还能记 录目录的变化 真正的version history:文件和目录的更名和增加以及删 除都能很好的记录 参考我的ftp上的svn-book 参考我的博客文章:subversion 版本控制系统的安装和使 用

subversion 版本控制系统

Linux 程序开 发环境

卢脁

Parallel Computing 为什么要用版本控制系统?阐述一下

Windows IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 保留了CVS 的主要特征 增加了很多好的特点:除了能记录文件的变化,还能记 录目录的变化 真正的version history:文件和目录的更名和增加以及删 除都能很好的记录 参考我的ftp上的svn-book 参考我的博客文章:subversion 版本控制系统的安装和使 用

subversion 版本控制系统

Linux 程序开 发环境

卢脁

Parallel Computing 为什么要用版本控制系统?阐述一下

Windows CVS and subversion IDE开发环境

与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 增加了很多好的特点:除了能记录文件的变化,还能记 录目录的变化 真正的version history:文件和目录的更名和增加以及删 除都能很好的记录 参考我的ftp上的svn-book 参考我的博客文章:subversion 版本控制系统的安装和使 用

subversion 版本控制系统

Linux 程序开 发环境

卢脁

Parallel Computing 为什么要用版本控制系统?阐述一下

Windows CVS and subversion IDE开发环境 保留了CVS 的主要特征 与Visual Studio C++ 类似的软件

与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 真正的version history:文件和目录的更名和增加以及删 除都能很好的记录 参考我的ftp上的svn-book 参考我的博客文章:subversion 版本控制系统的安装和使 用

subversion 版本控制系统

Linux 程序开 发环境

卢脁

Parallel Computing 为什么要用版本控制系统?阐述一下

Windows CVS and subversion IDE开发环境 保留了CVS 的主要特征 与Visual Studio C++ 增加了很多好的特点:除了能记录文件的变化,还能记 类似的软件 录目录的变化 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 参考我的ftp上的svn-book 参考我的博客文章:subversion 版本控制系统的安装和使 用

subversion 版本控制系统

Linux 程序开 发环境

卢脁

Parallel Computing 为什么要用版本控制系统?阐述一下

Windows CVS and subversion IDE开发环境 保留了CVS 的主要特征 与Visual Studio C++ 增加了很多好的特点:除了能记录文件的变化,还能记 类似的软件 录目录的变化 与windows 不 同的开发环境 真正的version history:文件和目录的更名和增加以及删 程序的编译和 除都能很好的记录 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 参考我的博客文章:subversion 版本控制系统的安装和使 用

subversion 版本控制系统

Linux 程序开 发环境

卢脁

Parallel Computing 为什么要用版本控制系统?阐述一下

Windows CVS and subversion IDE开发环境 保留了CVS 的主要特征 与Visual Studio C++ 增加了很多好的特点:除了能记录文件的变化,还能记 类似的软件 录目录的变化 与windows 不 同的开发环境 真正的version history:文件和目录的更名和增加以及删 程序的编译和 除都能很好的记录 运行 参考我的ftp上的svn-book 程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 subversion 版本控制系统

Linux 程序开 发环境

卢脁

Parallel Computing 为什么要用版本控制系统?阐述一下

Windows CVS and subversion IDE开发环境 保留了CVS 的主要特征 与Visual Studio C++ 增加了很多好的特点:除了能记录文件的变化,还能记 类似的软件 录目录的变化 与windows 不 同的开发环境 真正的version history:文件和目录的更名和增加以及删 程序的编译和 除都能很好的记录 运行 参考我的ftp上的svn-book 程序的调试 参考我的博客文章:subversion 版本控制系统的安装和使 软件开发 文件组织 用 使用工具make 文档的开发与维护 版本管理和协同工作 把现有的文件签入仓库,再签出

Linux 程序开 发环境

卢脁

Parallel 我的主目录下有一个文件夹proj, 其下有一个子目录mpi Computing cd $HOME/proj/mpi Windows IDE开发环境 删除不想使用subversion管理的文件

与Visual for i in `nd ./ -name "*.o"`; do rm -f $i; done Studio C++ 类似的软件 for i in `nd ./ -name "*.exe"`; do rm -f $i; done 与windows 不 cd $HOME/proj 同的开发环境 svn import $HOME/proj/mpi le:///home/svn/proj/mpi - 程序的编译和 运行 m "第一次签入Trilinos的例子“ 程序的调试 再次签出mpi 软件开发 rm -rf $HOME/proj/mpi 文件组织 使用工具make svn checkout le:///home/svn/proj/mpi 文档的开发与维护 版本管理和协同工作 添加规则

Linux 程序开 发环境

卢脁

Parallel *.exe , *.o Computing 以后不再显示 的变化

Windows cd $HOME/proj/mpi IDE开发环境 gedit .svn-ignore 与Visual Studio C++ 加上两行 类似的软件 *.exe 与windows 不 同的开发环境 *.o 程序的编译和 保存后, 转到上一层目录 运行 cd $HOME/proj/ 程序的调试

软件开发 对mpi及其子目录全部应用ignore 的规则 文件组织 svn - propset svn:ignore -F ./mpi/.svn-ignore mpi 使用工具make 文档的开发与维护 版本管理和协同工作 Linux 程序开 发环境

卢脁

Parallel Computing 把 .svn-ignore 入subversion Windows 新的文件 也加 管理 IDE开发环境 cd $HOME/proj/mpi 与Visual Studio C++ svn add .svn-ignore 类似的软件 把变化提交到仓库形成新的版本 与windows 不 同的开发环境 svn commit 程序的编译和 运行 如果想看到所有的变化 程序的调试 svn status --no-ignore 软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Linux 程序开 发环境

卢脁

Parallel 在我的mpi的文件下有一个子目录examples 尝试一下修 Computing $HOME/proj/mpi/examples/ex1.cpp Windows 改 IDE开发环境 运行带有参数di-cmd /usr/bin/colordi 可用不同颜色 与Visual subversion Studio C++ 显示当前目录下的文件和 仓库中中文件的区 类似的软件 别。 与windows 不 同的开发环境 cd $HOME/proj/mpi/examples

程序的编译和 svn diff --diff-cmd /usr/bin/colordiff 运行 tlu:examples$ svn diff \ 程序的调试 --diff-cmd /usr/bin/colordiff 软件开发 文件组织 输出的区别在下一页 使用工具make 文档的开发与维护 版本管理和协同工作 Linux 程序开 输出的二者区别 发环境 Index: ex1.cpp 卢脁 ======Parallel Computing --- ex1.cpp (版本 1)

Windows +++ ex1.cpp (工作副本) IDE开发环境 @@ -55,7 +55,7 @@ 与Visual Studio C++ // get the proc ID of this process 类似的软件 int MyPID = Comm.MyPID(); 与windows 不 同的开发环境

程序的编译和 - // get the total number of processes 运行 + //总进程的个数 程 的调试 序 int NumProc = Comm.NumProc(); 软件开发 文件组织 使用工具make 文档的开发与维护 // output some information to std output 版本管理和协同工作 提交新的版本: svn commit 自动调用一个文本编辑器,输入修改内容提示。 也可以使用-m 输入修改内容提示 svn commit -m 把ex1.cpp的一行英文注释翻译成了中文 Linux 程序开 发环境

卢脁 查看所有的变化 Parallel Computing svn log Windows ------IDE开发环境 r2 | tlu | 2007-09-20 11:21:35 +0800 ( , 20 9 2007) | 2 lines 与Visual 四 月 Studio C++ 类似的软件

与windows 不 加入一个忽略 *.exe *.o的规则文件.svn-ignore 同的开发环境

程序的编译和 运行 ------

程序的调试 r1 | tlu | 2007-09-20 10:50:57 +0800 (四, 20 9月 2007) | 1 line

软件开发 文件组织 使用工具make Trilinos的例子,第一次签入 文档的开发与维护 版本管理和协同工作 查看revision 2 和当前工作副本的区别 Linux 程序开 发环境 tlu:examples$ svn diff -r2

卢脁 Index: ex1.cpp ======Parallel Computing --- ex1.cpp (版本 2) Windows +++ ex1.cpp 工作副本 IDE开发环境 ( ) @@ -55,7 +55,7 @@ 与Visual Studio C++ // get the proc ID of this process 类似的软件

与windows 不 int MyPID = Comm.MyPID(); 同的开发环境

程序的编译和 运行 - // get the total number of processes

程序的调试 + //总进程的个数

软件开发 int NumProc = Comm.NumProc(); 文件组织 使用工具make 文档的开发与维护 // output some information to std output 版本管理和协同工作 11. 查看版本2 和版本3的区别 svn diff -r2:3 Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 12. 查看文件ex1.cpp的版本2和版本3的区别 与Visual Studio C++ cd $HOME/proj/mpi/examples 类似的软件 svn diff -r2:3 ex1.cpp 与windows 不 同的开发环境

程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Linux 程序开 发环境

卢脁

Parallel 修改的文件如果还没有用svn commit提交仓库,就可以 Computing 恢复 Windows IDE开发环境 svn revert ex1.cpp 修改的内容就会恢复到修改前。 与Visual 在commit前可以用revert 去掉添加的文件 Studio C++ 类似的软件 svn add ex1a.cpp 与windows 不 cp ex1.cpp ex1a.cpp 同的开发环境 svn add ex1a.cpp 程序的编译和 运行 svn di 看看区别(有区别,显示添加了一个文件还没

程序的调试 有commit) svn revert ex1a.cpp 软件开发 文件组织 svn di 看看区别(没有区别) 使用工具make 文档的开发与维护 版本管理和协同工作 Linux 程序开 发环境

卢脁

Parallel Computing

Windows IDE开发环境 去掉的文件也可以通过恢复重新加上 与Visual Studio C++ svn remove ex1.cpp 执行之后显示如下 类似的软件 ex1.cpp 与windows 不 svn revert ex1.cpp 执行之后显示如下 同的开发环境 已恢复“ex1.cpp” 程序的编译和 运行

程序的调试

软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作 Linux 程序开 发环境

卢脁

Parallel Computing 从subversion仓库中取出老版本代替目前的工作文档把文 Windows 件ex1.cpp 更新到版本2 (可能是老版本) IDE开发环境

与Visual svn update -r2 ex1.cpp 显示如下 Studio C++ U ex1.cpp 类似的软件 更新到版本2。 与windows 不 同的开发环境 把当前目录下的所有文件都更新到revision 3. 程序的编译和 svn update -r3 执行之后显示如下 运行 U ex1.cpp 程序的调试 更新到版本3。 软件开发 文件组织 使用工具make 文档的开发与维护 版本管理和协同工作