在Linux中开发C应用程序时的重要且方便的工具和命令

Sha*_*ash 7 c linux

我有使用Visual Studio的经验到现在为止.但我打算使用一些Linux工具来开发和维护用C语言编写的应用程序.

我彻底解决了这个问题,但它谈到了IDE的问题.我很乐意使用它们,但我想知道哪些其他工具对于上述练习来说很方便和重要.我还想知道,有任何命令可以让事情变得简单.谢谢!

编辑:我使用了vim并熟悉gcc及其重要标志.任何进一步的帮助.

Jus*_*ier 11

您将需要熟悉linux命令行工具.特别是:

  • 学习一个好的编辑器,如vimemacs
  • 使用编写脚本 make
  • 编译使用 gcc
  • 使用调试 gdb
  • 源代码控制:如果您有选择的优势,我推荐使用现代DVCS,例如git或mercurial.否则你的团队已经使用的任何工具应该没问题.

这只是涉及要领的表面,但它可能会帮助您开始.


这些工具也非常有用:

  • grep - 您需要一种搜索​​源文件的好方法.此命令与vim和emacs(?)集成,因此您可能希望在大多数情况下直接从编辑器中使用它.
  • ctags- 正如其他人所说,这将使您容易从编辑器中浏览源代码.再次,请咨询您的编辑器,了解如何使用ctags.
  • valgrind - 查找应用程序中的内存泄漏.
  • lint- 一个静态分析工具,如splint,用于查找C代码中的编码错误.
  • rpm 或其他打包系统 - 根据您部署应用程序的方式,您可能希望使用包管理器来帮助进行版本控制,安装/升级脚本等.
  • screen - 终端多路复用器允许您拆分终端,以便(例如)在一个窗格中查看源代码并在另一个窗格中调试/执行/搜索日志.如果您必须连接到您支持的任何远程计算机,这也很方便,因为如果您碰巧断开连接,您可以稍后重新连接到远程屏幕会话,而不必担心所有命令都被终止.例如,如果您处于中间位置,yum update则不必担心它会因为您的连接被切断而在交易中被终止.
  • ssh/ sftp/ etc - 如有必要,将文件安全地复制到测试/生产机器.


TOC*_*TOC 6

在Linux下使用C进行开发时,此工具非常有用:

  1. IDE:Vimsolarized主题(http://ethanschoonover.com/).CtgasTaglist轻松浏览您的代码(http://www.thegeekstuff.com/2009/04/ctags-taglist-vi-vim-editor-as-sourece-code-browser/)
  2. 编译和dubugging gcc,gdb,make
  3. 对于大项目:AUTOCONF,AUTOMAKE,和LIBTOOL
  4. 检查所有与内存相关的内容:Valgrind 检查功能CPU时间消耗Callgrind(http://valgrind.org/info/tools.html)全局Valgrind's Tool Suite(http://valgrind.org/info/tools.html)是一个很好的工具
  5. 对于高质量的代码:( GNU gcov测试覆盖率),这是一篇关于代码测试和高质量C代码的精彩文章(http://aleccolocco.blogspot.fr/2009/08/sqlite-lesson-in-low-defect-software. HTML)
  6. GNU locate :轻松查找所有文件
  7. Git 用于源代码配置
  8. Doxygen :生成代码的文档
  9. 如果你开发网络程序:wireshrak,tcpdump
  10. 使用LXR(http://lxr.linux.no)浏览内核代码(http://www.ittc.ku.edu/~niehaus/classes/800-s04/notes/setup_lxr.txt)
  11. Strace 跟踪系统调用(它始终是调试打开配置文件的程序的好工具)

MAN PAGES 是最好的工具

还有很多其他好东西: -