Open Source 开发工具集
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 开发工具集的更多相关文章
- 界面开发工具集Telerik UI for ASP.NET AJAX发布R2 2019
Telerik UI for ASP.NET AJAX拥有构建ASP.NET AJAX和SharePoint应用程序的80+控件,将为任何浏览器和设备构建Web Forms应用程序的时间缩短一半.Te ...
- Visual Studio 2015和ASP.NET 5中可用的前端开发工具集
最近微软发布了一本白皮书,谈到了一些可以和Visual Studio 2015和ASP.NET 5配合使用的JS/前端Web开发工具(比如:函数库.任务执行器.框架等). 由于现在前端开发的生态系统在 ...
- 角落的开发工具集之Vs(Visual Studio)2017插件推荐
因为最近录制视频的缘故,很多朋友都在QQ群留言,或者微信公众号私信我,问我一些工具和一些插件啊,怎么使用的啊?那么今天我忙里偷闲整理一下清单,然后在这里面公布出来. Visual Studio 201 ...
- 【转】角落的开发工具集之Vs(Visual Studio)2017插件推荐
因为最近录制视频的缘故,很多朋友都在QQ群留言,或者微信公众号私信我,问我一些工具和一些插件啊,怎么使用的啊?那么今天我忙里偷闲整理一下清单,然后在这里面公布出来. Visual Studio 201 ...
- Android高效的应用程序开发工具集1---ant构建一个简单的Android工程
在java编译那些事通过提到ant编译Java工程,如今扩大到用它来构建Android目,事实上道理是相通的.变化的仅仅是使用的形式.ant构建相比IDE的优点是多个子项目使用自己定义jar包时,an ...
- iOS程序员的React Native开发工具集
本文整理了React Native iOS开发过程中有用的工具.服务.测试.库以及网站等. 工具 你可以选择不同的开发环境:DECO.EXPO或者你可以使用Nuclide+Atom,目前我使用EXPO ...
- sanri-tools-maven 企业软件开发工具集
9420 开发工具包 sanri-tools-maven 是一个开源的用于企业开发的工具包,重点想解决项目开发中一些比较麻烦的问题 根据表和模板生成相应代码:一些身份证,企业代码,车架号的验证与生成: ...
- iOS网络开发工具集----字符串操作和时间操作
一.字符串的操作方法 #pragma mark - 创建字符串 - (void)CreatString { // <1> 创建字符串 NSString *strS = @"Thi ...
- kettle系列-4.kettle定制化开发工具类
要说的话这个工具类还是比较简单的,每个方法体都比较小,但用起来还是可以的,把开发中一些常用的步骤封装了下,不用去kettle源码中找相关操作的具体实现了. 算了废话不多了,直接上重点,代码如下: im ...
随机推荐
- tcp的粘包现象与解决方案
粘包现象: 粘包1:连续的小包,会被优化机制给合并 粘包2:服务端一次性无法完全就收完客户端发送的数据,第二再次接收的时候,会接收到第一次遗留的内容 模拟一个粘包现象 服务端 import socke ...
- C#中五种访问修饰符作用范围 public、private、protected、internal、protected internal
1.五种访问修饰符包括哪些? public.private.protected.internal.protected internal 2.五种访问修饰符的作用范围? public :公有访问.不受 ...
- python命令行运行py文件找不到模块的解决办法
问题: 新建了一个项目,目录结构如下: 然后在pycharm中运行glovar是没有问题的,但是在命令行中运行就会提示找不到init模块 这是因为在pycharm中运行的时候,pycharm会自动将项 ...
- 更改Windows更新源(解决公司内部网络无法下载语言包或更新的问题)
打开注册表 找到HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate 将WUServer.WUStatusServe ...
- Laravel写讯搜的ini配置文件的一处陷阱
讯搜客户端在连接服务端之前需要读取配置文件里的配置信息. 配置文件里, 我一开始这样写: server.index = 127.0.0.1:8383 ; 表示索引接口 server.search = ...
- linux服务器共享给windows的client打印机配置
最近实验室新进来一台服务器还有打印机,老大意思让服务器连接打印机并进行网络共享,其他的人可以通过自己的PC连接到共享打印机,打印各自电脑的文件.这样的需求可能很多人都有遇到,我也是遇到这件事,在网上搜 ...
- oo第四次博客
一.测试与正确性论证比较 正确性论证是论证程序达到预期目的的一般性陈述,而该论证与程序输入数据的特定值无关,能够代表穷举性测试. 程序测试是指测试者特意跳出一批输入数据,通过运行程序,检查每个输入数据 ...
- 克拉美罗界(CRB)
转载自:http://www.cnblogs.com/rubbninja/p/4512765.html 各种研究领域(包括无线定位方向)都会碰到参数估计的问题,这时常常会看到克拉美罗界 (Cramér ...
- 对C语言指针的理解
一个小程序引发对于C语言指针的思考: #include <bits/stdc++.h> using namespace std; void my_swap (int* a,int* b) ...
- Vue基础之数据绑定
我们学习一门新语言或者框架时,第一件事是什么呢,那必然是向世界say Hello. 创建一个Vue应用 话不多说,先上代码,让我们感受一下Vue的核心功能 <!DOCTYPE html> ...