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

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

我对这个question进行了深入研究,但它对IDE的讨论太多了.我很乐意使用它们,但我想知道哪些其他工具对于上述练习来说非常方便和重要.我还想知道,有任何命令可以使事情变得简单.谢谢!

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

解决方法

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

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

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

这些工具也非常有用:

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

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...