Open Source 开发工具集

转自:http://www.linuxforum.net
原作者:gogoliu(Pooh-Bah)

编辑器: 
vi:老牌编辑器,在各个unix和unix-like平台都可以找到 
emacs:GNU项目开发的编辑器,功能强大扩展性强,绝对不是一个编辑器那么简单

代码打补丁工具: 
diff & patch:一对好搭挡,diff用来生成代码补丁,而patch则用来给代码打补丁

项目构建工具: 
make(Makefile):常用的项目构建工具,用一个Makefile就可以从整个项目的代码中构建各个目标 
autotool(包括Autoconf, Automake 和 Libtool):方便在你的项目中生成标准的Makefile,为许多自由和开源软件项目所使用

版本控制工具: 
cvs:老牌的版本控制工具,适用于集中式版本控制,为许多项目服务过,现在略显疲态 
subversion:一个为了代替cvs而开发的工具,解决了cvs的一些诟病 
GNU Arch:GNU项目开发的版本控制工具,属于分布式版本控制工具 
git:Linus Torvalds为内核版本控制所开发的工具,当然也适用于普通应用程序,也属于分布式版本控制工具

C库: 
glibc:GNU项目开发的C库,很庞大和全面,是许多自由和开源软件的基石,熟悉它对你进入linux开发领域很有好处 
uclibc:为嵌入式系统所开发的C库,比glibc小得多,但是对glibc保持很高的兼容,基于glibc的软件很容易移植到uclibc上 
newlib:另一个为嵌入式系统所开发的C库 
diet libc:同样是为嵌入式系统所开发的C库

二进制和目标文件处理工具: 
binutils:GNU项目所开发的二进制和目标文件处理工具包,包括多种开发过程所需的工具:连接器、汇编器、一系列的二进制和目标文件处理工具还有一个性能分析器。你一般很少直接用到它们,但常常间接用到它们。

编译器: 
gcc:GNU项目所开发的全能编译器,它支持的语言包括C、C++、Objective-C、Fortran、Java和Ada,它支持的处理器包括i386、MIPS、ARM、PowerPC、IA64等等,此外你还可以为它添加其他语言前端和其他处理器后端。gcc性能不俗,还支持交叉编译,为这个星球;)许多软件项目所采用。

源代码调试器: 
gdb:GNU项目所开发的源代码调试器,功能强大,是程序员的好助手

内存管理检查器: 
valgrind:非常优秀的内存检查器,可以帮助你检测你程序中的内存错误。另外还可以对cache的使用和堆(也可以包括栈)的使用进行分析,让你能够优化你的代码

调用跟踪器: 
strace:系统调用跟踪器,可以跟踪你的程序所调用的系统调用 
ltrace:动态库调用跟踪器,可以跟踪你的程序所调用的动态库接口

性能分析器: 
gprof:binutils中带的性能分析器,可以帮助你优化你的代码,提高程序速度 
qprof:另一个性能分析器,支持动态库的性能分析和多线程、多进程性能分析 
oprofile:一个系统范围的性能分析器,使用内核模块和一个后台进程进行数据采集,它不但可以获得某个进程的性能分析数据还可以获得内核的性能分析数据

编辑辅助工具: 
indent:源代码美化工具,可以对源代码进行缩进和折行等排版美化工作。

软件度量工具: 
sloccount:源代码行数统计工具,可以统计出某目录下各种语言的代码行数。

gcov+lcov:gcov是gcc自带的代码覆盖分析工具,可以追踪程序运行时哪部分代码被执行了,该部分代码执行的频率,以及执行的时间消耗。这可以帮助你测试软件已经进行程序优化。lcov是gcov的一个扩展,可以提供直观的分析信息。

Open Source 开发工具集的更多相关文章

  1. 界面开发工具集Telerik UI for ASP.NET AJAX发布R2 2019

    Telerik UI for ASP.NET AJAX拥有构建ASP.NET AJAX和SharePoint应用程序的80+控件,将为任何浏览器和设备构建Web Forms应用程序的时间缩短一半.Te ...

  2. Visual Studio 2015和ASP.NET 5中可用的前端开发工具集

    最近微软发布了一本白皮书,谈到了一些可以和Visual Studio 2015和ASP.NET 5配合使用的JS/前端Web开发工具(比如:函数库.任务执行器.框架等). 由于现在前端开发的生态系统在 ...

  3. 角落的开发工具集之Vs(Visual Studio)2017插件推荐

    因为最近录制视频的缘故,很多朋友都在QQ群留言,或者微信公众号私信我,问我一些工具和一些插件啊,怎么使用的啊?那么今天我忙里偷闲整理一下清单,然后在这里面公布出来. Visual Studio 201 ...

  4. 【转】角落的开发工具集之Vs(Visual Studio)2017插件推荐

    因为最近录制视频的缘故,很多朋友都在QQ群留言,或者微信公众号私信我,问我一些工具和一些插件啊,怎么使用的啊?那么今天我忙里偷闲整理一下清单,然后在这里面公布出来. Visual Studio 201 ...

  5. Android高效的应用程序开发工具集1---ant构建一个简单的Android工程

    在java编译那些事通过提到ant编译Java工程,如今扩大到用它来构建Android目,事实上道理是相通的.变化的仅仅是使用的形式.ant构建相比IDE的优点是多个子项目使用自己定义jar包时,an ...

  6. iOS程序员的React Native开发工具集

    本文整理了React Native iOS开发过程中有用的工具.服务.测试.库以及网站等. 工具 你可以选择不同的开发环境:DECO.EXPO或者你可以使用Nuclide+Atom,目前我使用EXPO ...

  7. sanri-tools-maven 企业软件开发工具集

    9420 开发工具包 sanri-tools-maven 是一个开源的用于企业开发的工具包,重点想解决项目开发中一些比较麻烦的问题 根据表和模板生成相应代码:一些身份证,企业代码,车架号的验证与生成: ...

  8. iOS网络开发工具集----字符串操作和时间操作

    一.字符串的操作方法 #pragma mark - 创建字符串 - (void)CreatString { // <1> 创建字符串 NSString *strS = @"Thi ...

  9. kettle系列-4.kettle定制化开发工具类

    要说的话这个工具类还是比较简单的,每个方法体都比较小,但用起来还是可以的,把开发中一些常用的步骤封装了下,不用去kettle源码中找相关操作的具体实现了. 算了废话不多了,直接上重点,代码如下: im ...

随机推荐

  1. Protege4.3 添加Rules 栏

    SWRL rules can be edited in Protégé 4, but not with a nice interface like in Protégé 3. If you go to ...

  2. 计算1~100之间,能被3整除但是不能被7整除的数的和(C语言)

    #include<stdio.h> int main(agrc *agrv) { int n,i; int sum=0; scanf("%d",&n); for ...

  3. javascript 字符串处理

    ---恢复内容开始--- 最近几次参加前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等.如果你经常参加笔试或者也是一个过来人,相信你也跟我一样,发现字符串 ...

  4. ARM内核单片机Bootloader中断向量重定位问题

    Bootloader中断向量重定位问题 1.Bootloader程序在内核Cortex-M0+内核中运行时需要进行地址跳转执行应用程序主程序,此时就涉及到了中断向量重定位问题,以下截图为单片机启动文件 ...

  5. 安装完成IIS后找不到IIS Admin Service

    系统版本: Windows Server 2008 R2 Enterprise 64-bit IIS版本:IIS 7.5 问题: 在系统运行里面输入"组件服务",依次点开组件服务- ...

  6. cannot import name '_imaging' from 'PIL'

    学习廖雪峰官网的Python的教程,在常用的第三方模块的Pillow的学习过程中总是报错cannot import name '_imaging' from 'PIL' 解决办法: 1.下载并安装An ...

  7. C# 检查数字

    #region 检查数字 public bool IsNumeric(string value) { bool result; try { int x = int.Parse(value); resu ...

  8. ElementUI - Table 表头排序

    ElementUI - Table 表头自带排序功能,和排序事件,但是目前只是对当前界面的数据进行排序. 项目需求: 点击表头排序的时候,对所有数据进行排序. 初步方案: 在点击排序按钮的时,在排序事 ...

  9. mac eclipse maven -solved

    最近开始用mac,在开始之初体验到了mac系统的丝滑流畅,但也感受到重新开始学习一个平台的坡度. 最近学习maven,创建项目时总是报错,网上查阅到的资料很少.最后在settings.xml中添加了阿 ...

  10. 1个多商户、多平台版 微信小程序(多商户、多平台版),影城行业、影业连锁 多商户、多平台版微信小程序。(基于多平台版,支持在业务上 可给 每个单独影城 分发定制单独的小程序版本)

    1个 影城行业 微信小程序(多商户.多平台版), 影业连锁 多商户.多平台版微信小程序.(基于多平台版,支持在业务上 可给 每个单独影城 分发定制单独的小程序版本) 资讯QQ: 876635409  ...