Linux下开发环境的搭建

说句实话,对于OIer来说,Linux真的是个很好的开发平台。

这里既没有游戏的喧嚣,也没有广告的打扰,gcc/g++早已预装,一切已为你准备好......(???)即使对于日常使用,也绰绰有余。

如果因为不熟悉、对新手不友好、不知道没有Dev-C++等理由,去放弃它,未免也太可惜了。

那么,如何在Linux下搭建一个好的开发环境呢?

在下面,我会分三部分叙述Linux开发环境搭建的过程,并推荐一些比较好用的软件,供大家平日使用参考。

(注:以下命令,请在终端中运行。如果因依赖关系报错,请用sudo apt install -f 命令修复)

机器环境:Ubuntu 14.04 LTS,GCC/G++ 4.8.4

一、编译器安装

GCC/G++ 安装命令:

sudo apt install gcc g++

Clang编译器:

sudo apt install clang

大家按需食用。

二、代码编辑

(注:下面的软件在严格意义上讲可能不是IDE,但同样适用于广大的OIer们。Enjoy it!

### No.1 入门级

1. Code::Blocks

(晒晒我的美照

这个IDE是开源、跨平台的,比较好用,代码补全功能也非常强大!

可能唯一不友好的地方就是全英文了的吧。

安装命令:

sudo add-apt-repository ppa:damien-moore/codeblocks-stable
sudo apt update
sudo apt install codeblocks

易用性:8分
功能性:9分
可扩展性:6分

2. gedit

gedit很多Linux发行版都自带,在NOI Linux中也是允许的。经过一些配置以后,还是非常好用的。

当然,gedit仅仅提供了基础的编辑功能。编译、调试/代码补全等功能,都是不具备的。

所以,这个可以平时不使用,考场备用。

易用性:8分
功能性:7分
可扩展性:6分

3. Visual Studio Code

(网上随便找的图)

很多朋友都听说过Visual Studio,却因为其庞大的体量而望而却步(动辄10~20G)。那么,就不妨试一下这款轻量级的IDE吧。

它拥有美观的界面,数以万计的扩展,可以轻松地搭建一个令人舒适的开发环境。最重要的是,它跨平台!!!

当然,它也是我最喜欢的代码编辑器之一(只是现在我没用它了,改用了vim) 。不过,它的调试功能并不是太好用,需要自己配置,请自行百度。

安装:上微软官网下载deb包,双击打开ubuntu软件中心安装即可。

在这里推荐几个扩展:

  1. C/C++
  2. C++ Intellisense
  3. Code Runner(运行代码用)
  4. One Dark Pro主题(用过Atom的人应该都知道)
  5. Material Theme(非常美观)
  6. Markdown All in One
  7. Settings Sync(自动同步配置)
  8. Python(对于某些人有用,当然频繁使用crayon的人应该也有点用处)

易用性:9分
功能性:9分
可扩展性:9分

No.2 进阶级

GNU Emacs

心动了?先别着急,这其实是配置过后的。

原版界面:

(一言难尽啊......)

安装命令:

sudo apt install emacs

Emacs,(所谓神的编辑器) 相信很多OIer都听说过,但却因为其清(chao)秀(chou)的界面望而却步。

不过,Emacs的可定制性弥补了他的缺点。通过一系列配置,你可以把它变成自己想要的样子,再加上几个一键编译的快捷键,岂不爽翻?

说到底,怎么配置Emacs呢?这篇文章可能可以帮到你:

emacs配置基础讲解

当然,你也可以自行百度。

不想费脑筋?把我的配置拿去:(F5一键编译,编译出的文件名为a.out)

(注:配置文件为~/.emacs,请将下面的文本复制后粘贴到此文件下)

(show-paren-mode 1)
(global-set-key (kbd "C-a") 'mark-whole-buffer)
(global-set-key (kbd "C-z") 'undo)
(global-set-key (kbd "RET") 'newline-and-indent)
(cua-mode t)
(show-paren-mode t)
(global-linum-mode t)
(blink-cursor-mode -1)
(setq kill-ring-max 200)
(setq default-cursor-type 'bar)
(setq default-tab-width 4)
(setq c-default-style "awk")
(set-background-color "gray15")
(set-foreground-color "gray")
(set-frame-parameter (selected-frame) 'alpha (list 85 50))
(defun your-g++-compile () (interactive) (compile (format "g++ %s -g -Wall -std=c++11" (buffer-file-name))))
(global-set-key (kbd "<f5>") #'your-g++-compile)

易用性:8分(熟悉后可以打9分)
功能性:9分
可扩展性:9.5分

No.3 大神级

看到这里,你应该知道我要说什么了吧?

没错,那就是上天入地、翻江倒海 (什么鬼) 、出神入化的——

Vim!

摘用度娘的一句话:

  • Vim是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。

而且插件丰富,扩展性极高!

安装命令:

sudo apt install vim

然额,它的原始界面似这样的:

(比Emacs好不了多少,一个宣传GNU,一个帮助可怜儿童)

更让人崩溃的是,这个vim居然不知如何使用!进入界面,一通乱打,却一个字也敲不进,更不知如何调主题、保存文件......

甚至无法退出!!!

先别急着关掉这篇博客,别急,我们慢慢来,这些问题都好解决。如果你熟悉了vim的操作方式,会发现编程效率极高。

那么,如何学习vim的操作方式?

别急着网上搜教程,你的vim自带了一个教程——vimtutor。
终端输入vimtutor,回车运行即可(还是中文版的,好评)。
学了这篇教程,差不多vim的基本操作都会了。

说完了操作,再说说配置(配置文件为~/.vimrc)

相对而言,vim配置比emacs简单多了。为什么呢?因为网上有人已经帮我们配置好了啊!

参见这个链接:vimplus

在此必须感谢vimplus的维护者chxuan。如果没有他,可能我们就无法轻松、快速地配置好vim。

不过,vimplus的配置没有什么一键编译,甚至不能从系统剪贴板复制、粘贴。
所以,附上我的附加配置(+c 复制,+v 粘贴,+x 剪切,编译,运行):
(复制后粘贴在.vim的最后)

hi Normal ctermfg=252 ctermbg=none
command -nargs=0 Compile !clear&&g++ "%" -o "%<" -Wall -std=c++11 -g
command -nargs=0 Run !clear&&time "./%<"
map <F5> <ESC>:w<CR> <ESC>:Compile<CR>
map <F6> <ESC>:w<CR> <ESC>:Run<CR>
map <leader>v "+gp
map <leader>c "+y
map <leader>x "+d
set mouse=a

配置后界面:

(还要打分么......)

易用性:5分(熟悉后可以打9.5分)
功能性:10分
可扩展性:10分

三、调试器

很多OIer们,想必都用过Dev-C++下的调试器。确实,Dev-C++下的调试器方便好用(除了不支持STL),但在Linux下,又有什么调试器可用呢?

1. gdb

gdb是一个CLI调试器,没有图形化界面,但在熟练使用后,是非常方便的。而且他拥有很多高级功能(如给断点设置一个条件,满足这个条件才在该断点停下来)。

启动方式:终端运行gdb [文件名] 即可。

教程吗,请自行百度。顺便提一句,gdb有个半图形化界面,用gdb -tui即可进入。

2.ddd

安装命令:

  sudo apt install ddd

ddd虽说是一个图形化调试器,但他界面真的极其怪异,Like this:

但是,它的功能真的非常强大,包括但不限于:

  • 图形化显示结构体
  • 图形化显示链表、二维数组(矩阵)、树、图
  • 显示变量变化图像
  • ...

当然,其也是可以配置的。请自行百度。

3.nemiver

这应该是三者之中,界面最好看、最友好的,但功能也最弱,对于一般调试需求也够了。

安装命令:

  sudo apt install nemiver


当然,可能有很多好用的软件,限于作者学识,没有在本文中提到。大家可以在评论区留言,给我一些适当的建议!

讲了这么多,希望能对大家有点用处!

蒟蒻第一次写博客,请大佬多多关照,顺便别忘点个赞再走哦!

原文地址:https://www.cnblogs.com/acceptedzhs/p/12111600.html

时间: 2024-10-10 14:51:03

Linux下开发环境的搭建的相关文章

VS2010 + OpenNI2 + Kinect SDK1.8 在win8.1下开发环境的搭建

 VS2010 + OpenNI2 + Kinect SDK1.8 在win8.1下开发环境的搭建 1. 先安装kinect1.8,再安装openni2,默认路径就好. 2.配置VS2010建立的openni的project所需要的头文件和库文件,在项目的属性中配置. (1)Configuration Properties,C/C++,Gerenal,在Additiaonal Include Directories项中选择openni头文件的文件夹 默认路径为C:\Program Files

wxWidgets 在 Linux 下开发环境配置

本文基于 CodeBlocks (16.0.1) 和 wxWidgets (3.0.2) 搭建 Linux 下 GUI 开发环境. 1. 安装 CodeBlocks Ubuntu 默认的源当前 CodeBlocks 版本为 13.x,为安装最新稳定版,如下步骤, $ sudo add-apt-repository ppa:damien-moore/codeblocks-stable $ sudo apt-get update $ sudo apt-get codeblocks 2. 下载 wxW

Linux 下java环境的搭建

1,准备好相应的jdk,tomcat 的安装包  (版本与linux的操作系统位数 一致) 查看linux 的操作系统位数 file /sbin/init--->/sbin/init: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped===>代表你的操作系统是64位 如果是aix系统   查看方

Linux下python环境的搭建

一.安装linux最小化系统(CentOS6) 安装最小系统即可 二.安装pyenv多版本管理工具 (一)pyenv的安装步骤 1.安装git yum install git -y 2.安装python编译所需要用到的包 yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel 3.创建python用户 useradd python 给pyth

Linux下自动化测试环境的搭建

1.安装Linux虚拟机,详情参考  https://blog.csdn.net/qq_22770715/article/details/78558374     https://www.cnblogs.com/Q277227/p/8176564.html 1.1   需要确定IP  ,使用 ifconfig 1.2  linux的用户名跟密码: 1.3   确定可以远程ssh登录: 1.4  确定防火墙处于关闭状态 service iptables stop  用户关闭防火墙: 2.java

linux嵌入式&amp;开发环境的搭建&amp;VMware的安装与使用

学习linux嵌入式开发,顾名思义,需要在linux操作系统下进行开发,所以我们需要先有一个linux操作系统.这里由于我们是在 Windows 下进行开发的,如果想在不安装双系统的前提下进行linux嵌入式开发,这里我们就要用到虚拟机VMware软件了,使用VMware的目的就是可以在该软件下构建出多个操作系统.那么VMware又是如何安装和使用的呢? 1.VMware的安装 下载 VMware-workstation-full-11.1.2.61471.1437365244 软件,这里以WM

linux下LAMP环境的搭建

LAMP=mysql+appache+php,搭建lamp必须按步骤,先mysql再appahe,最后才是PHP 1.mysql安装 本文mysql 用的是二进制源码包(提供二个镜像免费下载点:A:https://github.com/aminglinux/resource/wiki B:http://mirrors.sohu.com/?qq-pf-to=pcqq.c2c) 首先下载二进制包:mysql-5.7.11-linux-glibc2.5-x86_64.tar.gz包 (X86是64位系

linux下LNMP环境的搭建

lamp=linux+apache+mysql+php; lnmp=Linux+nginx+mysql+php 他们的区别在于apache和nginx和php结合的模式不同,我们讲的这两个架构中,php在编译的时候以一个模块的形式和apache成为了一个整体,这种情况下我们是可以把php的安装目录/usr/local/php删除的.而lnmp中的php启动了一个服务php-fpm,这种模式相当于nginx处理php脚本时,直接把请求转发给了php-fpm,说白了就是一个代理.这个php的安装目录

Linux下Qt环境的搭建

之前一直使用Ubuntu软件中心中的Qt4开发Qt的应用程序,现在转到Linux下来做Qt5开发,但是必须从Qt官网上面下载对应的安装包,配置起来相对麻烦一些,这里介绍整个开发流程. 首先,在官网上面可以找到离线安装包,最新的为qt-opensource-linux-x86-5.4.1.run,这是一个可执行文件,下载下来后可以修改权限后直接运行.另外,你也可以在官网上面找到源代码的压缩包,因为这是一个开源的GUI类库,所以你可以下载所有的源代码,然后自己在本机上面编译并安装. 这里我先介绍直接