linux开发工具

一、自行查找资料, 调研除了vim, 还有哪些常用的牛逼的编辑器, 并能够横向对比编辑器之间的区别和优缺点.1.vimVim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。2.eclipseEclipse是一款很酷的开源代码编辑器,同时它也是最受程序员亲睐的代码编辑器之一,它拥有代码高亮和智能提示等强大的功能。在Eclipse中,你可以完全胜任以下编程语言的工作——Python, R, Ruby, JavaScript, Natural, Lasso, C, C++, COBOL, Scheme, Clojure, Groovy等等,它也是非常著名的Java集成开发环境,甚至提供了对Java 8的支持。在一些Web开发IDE特性的帮助下,你可以非常方便地对代码文件进行组织和访问。3.sublime text 3这是一款绝对值得一提的Linux代码编辑器,因为它有简单而且超酷的功能特性。Sublime Text 3最独特的地方就是它没有独特的功能,它仅仅是一个简单的代码编辑器,有了它,你就可以非常方便地对多行代码进行修改了。利用Sublime Text 3你可以做操作文件、重命名变量、分离编辑和其他有趣的操作。4.bracketsBrackets也是一款为Linux开发者设计的开源代码编辑器,使用Brackets写代码,你不会被任何事情所打断。比如在写HTML代码时,即便你没有保存代码也可以及时预览你的Web页面效果。你也可以使用Theseus来检查变量,Brackets默认提供一种主题,当然你也可以在扩展中心获取更多的主题。5.emacsEmacs不仅仅是一个编辑器,他是一个整合环境,或可称它为集成开发环境,这些功能如让使用者置身于全功能的操作系统中。Emacs不仅可以作为文本编辑器,还可以用来收发电子邮件、通过FTP/TRAMP编辑远程档案、通过Telnet登录主机、上新闻组、登陆IRC和朋友交流、查看日历等功能。二、自行查找资料, 调研除了gcc, 还有哪些常用的牛逼的编译器(不限制编程语言, 不限制平台).windows常用的都是vs 、vs,OSX用clang,clang的错误提示比其他要好很多语言支持比较好,但是编出来的程序性能比gcc差很多,很多细粒度的优化没有人做。三、为什么调试的时候需要编译选项中添加 -g. 同学们自行调研readelf命令. 调试的时候需要编译选项中添加 -g. 加选项-g是为了能够调试。不加可以运行,但不能调试。四、 在Linux下实现进度条程序. 通过makefile进行编译. 建议自主完成一个彩色的进度条.五、 同学们自行调研Linux下软件安装的几种方式(源码安装, rpm安装, yum安装). 重点要理解rpm安装和yum安装的区别.yum工具yum list 列出所有可用rpm包资源 搜索某个包: yum search ‘keywords’或 yum list |grep ‘keywords’ yum 安装包: yum install -y filename(包名) yum 卸载包: yum remove -y filename (包名) yum 升级包: yum update -y filename(包名)yum 查找包:yum provides “*/vim” //这里用通配,可以查找一个命令由哪个包安装来的yum grouplist 列出所有的套件 yum groupinstall 安装套件 yum groupremove 卸载套件创建本地的yum源 mount /dev/cdrom /mnt cp -r /etc/yum.repos.d /etc/yum.repos.d.bak //先备份一下 rm -f /etc/yum.repos.d/* vim /etc/yum.repos.d/dvd.repo #加入如下内容: [dvd] name=install dvd baseurl=file:///mnt enabled=1 gpgcheck=0 yum list //查看是否有dvd的标志出现安装完成之后yum list 右侧可以列出很多epel的包,供以后使用;使用yum下载rpm包,而不安装,方法1: yum有一个plugin(插件)叫做yum-downloadonly,可以实现让用户只下载软件包的功能; 首先需要安装插件:yum install -y yum-plugin-downloadonly 安装完成后:yum install 包名 -y –downloadonly 这样就已经下载,centos6默认在 /var/cache/yum/i386/6/base/packages 我这里是32位的显示为i386目录; yum install 包名 -y –downloadonly –downloaddir=/usr/local/src #指定一个下载目录,如果是已经安装过的rpm包这样不成功,需要使用reinstall: yum reinstall 包名 -y –downloadonly –downloaddir=/usr/local/src reinstall 重新安装;使用yum下载rpm包,而不安装,方法2:通过一个专门的包下载工具–yumdownloader。 这个工具是yum工具包(包含了用来进行yum包管理的帮助工具套件)的子集。使用命令安装:yum install -y yum-utlis 安装完成后,下载rpm包,使用命令:yumdownloader 包名 下载的包保存到当前的目录,你需要使用root权限,因为yumdownloader会在下载过程中更新包索引文件。与yum命令不同的是,任何依赖包不会被下载。设置yum保留下载的rpm包 yum 默认情况下,升级或者安装后,会删除下载的rpm包。修改 /etc/yum.conf 配置文件保留下载的包; [main] cachedir=/home/soft/yumcache keepcache=1 debuglevel=2 cachedir 存放下载包的地址,可以修改为自己放置的地址; keepcacahe设置为1,表示保存已经下载的rpm包;rpm工具rpm全称为RedHat Package Manager,红帽软件包管理工具,设计理念是开放的,不仅仅是在RedHat平台上,在其他上也是可以使用的。 rpm包名字构成由-和.分成了若干部分,如abrt-cli-2.0.8-15.el6.CentOS.i686.rpm,abrt-cli是包名,2.0.8-15是版本号,el6指的是redhat企业版6,centos指的是这是在centos上用的,i686指的是平台类型。有些rpm包并没有写具体的平台而是noarch,这代表这个rpm包没有硬件平台限制。安装过程安装一个包:rpm -ivh [安装路径] -i 表示安装 -v 可视化 -h 显示安装进度 –force : 强制安装,即使覆盖属于其他包的文件也要安装 –nodeps : 当要安装的rpm包依赖其他包时,即使其他包没有安装,也要安装这个包 升级:rpm -Uvh filename.rpm -U 就是升级的意思rpm的卸载: rpm -e filename //这里的filename是通过rpm的查询功能所查询到的 echo $? 查看上一条命令执行状态,返回0表示执行成功,非0为不成功; 查询一个包是否安装 rpm -q 包名 (不带有平台信息以及后缀名 ) 查询当前系统所有安装过的rpm包 rpm -qa 查询rpm包的相关信息 : rpm -qi 包名 列出一个rpm所安装的文件: rpm -ql 包名查看某个文件属于哪个rpm包: rpm -qf filenameyum与rpm的区别yum是从网络安装源(例如网易镜像,可以自己配置)上下载rpm,如果存在依赖关系会把依赖的rpm同时下载安装。rpm是安装本地存在的rpm包,如果存在依赖也需要安装上,如果某个rpm是自己修改编译的,那么只能用rpm安装了。源码包安装源码包是开源的可自行更改的程序包,大多用C语言开发,不能直接使用,需要编译成二进制的可执行文件; 编译源码包的必须有gcc支持,如果没有需要安装 yum install -y gcc 通常情况编译三步曲: ./configure 配置各种编译参数; make 根据指定的编译参数进行编译;make install 安装到指定目录实例: 1、下载源码包#cd /usr/local/src/ #约定目录; 首先安装wget,安装命令:yum install -y wget #wget http://mirrors.hust.edu.cn/apache//httpd/httpd-2.2.29.tar.gz 2、解压tar zxvf httpd-2.2.29.tar.gz //查看README或者INSTALL说明文件 3、指定编译参数 ./configure –help 可以查看帮助 #./configure –prefix=/usr/local/apache2 指定一个路径; 执行时提示checking for gcc… no 需要安装gcc编译器;安装命令#yum install -y gcc 4、#echo $? 验证是否成功 5、#make 编译成二进制的文件; 6、#make install 安装编译后的文件;
————————————————
版权声明:本文为CSDN博主「wuxinrenping」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wuxinrenping/article/details/79759188

你可能感兴趣的:(linux开发工具)