└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # 🤸♀️🤾♀️🤸♂️硬核总结linux环境开发工具,包含linux,虚拟机,编译器,编辑器,测试工具,加密工具 2 | 3 | ## 🚩源码(提取码1024) 4 | 5 | - [linux-5.15(最新版本).tar](https://pan.baidu.com/s/1cRp-cH7Cmn9AWmxtIKetxw) 6 | - [linux-5.13.5(稳定版).tar](https://pan.baidu.com/s/1HNYQ6UktSU5UxRVWZEELHg) 7 | - [linux-5.10.53(长期版).tar](https://pan.baidu.com/s/1yLIRgxPrbmYGw1JLXWNjkg) 8 | - [linux-5.4.135(长期版).tar](https://pan.baidu.com/s/18r4Rt8jNnBK9nsARLMWs_A) 9 | - [linux-4.19.198(长期版).tar](https://pan.baidu.com/s/1I1wrVUshb855G7v7dhGBpA) 10 | - [linux-4.14.240(长期版).tar](https://pan.baidu.com/s/1ZHoEubSFZ0JFH2uV6WK6Rg) 11 | - [linux-4.12(长期版).tar](https://pan.baidu.com/s/1bLpchNMkYXMYjspqen0MOw) 12 | - [linux-4.9.276(长期版).tar](https://pan.baidu.com/s/1k43C6q5ckiweyvWC9kkxkw) 13 | - [linux-4.4.276(长期版).tar](https://pan.baidu.com/s/1NvTBB-zPwrmaUYIb6i9ERA) 14 | 15 | ## 👍好用的Linux发行版推荐(提取码:1024 ) 16 | 17 | - ### [elementary OS](https://elementary.io/) 18 | 19 | 网盘地址:https://pan.baidu.com/s/1lzfjKpeC5yIFz_C2zlRIlA 20 | 21 | - ### [Linux Mint](https://linuxmint.com/) 22 | 23 | 网盘地址:https://pan.baidu.com/s/1A4pfV3xKTv_STPU1P04-AA 24 | 25 | - ### [Arch Linux](https://archlinux.org/) 26 | 27 | 网盘地址:https://pan.baidu.com/s/1TaL-wtlSrhr3Z0UdglFBoQ 28 | 29 | - ### [Ubuntu](https://ubuntu.com/) 30 | 31 | 网盘地址:https://pan.baidu.com/s/1OuG0zvvc3b3kbeNTUQjZIw 32 | 33 | - ### [Tails](https://tails.boum.org/index.en.html) 34 | 35 | 网盘地址:https://pan.baidu.com/s/1GrVE8s_7GVo1xTo-4D99Ug 36 | 37 | - ### [CentOS](https://www.centos.org/) 38 | 39 | 网盘地址:https://pan.baidu.com/s/1fsSk39UHGazEjp1XCog6yg 40 | 41 | - ### [Ubuntu Studio](https://ubuntustudio.org/) 42 | 43 | 网盘地址:https://pan.baidu.com/s/19-Z7kuG3OI2B2LN4oqyjtw 44 | 45 | - ### [openSUSE](https://www.opensuse.org/) 46 | 47 | 网盘地址:https://pan.baidu.com/s/1t72-mM09xCeER6zczdrY_A 48 | 49 | 50 | ## 🥇国产之光(提取码:1024 ) 51 | 52 | - ### [deepin](https://www.deepin.org/) 53 | 54 | 网盘地址:https://pan.baidu.com/s/1G2-jZ-XgAQLWV_pZcpvi_A 55 | 56 | - ### [优麒麟](https://www.ubuntukylin.com/) 57 | 58 | 网盘地址:https://pan.baidu.com/s/1pSFjP8qRpQKtVrBtsHEo7g 59 | 60 | - ### [StartOS](https://www.startos.com/) 61 | 62 | 网盘地址:https://pan.baidu.com/s/1Sj5I1au_z6S4wtwy06TNag 63 | 64 | - ### [CutefishOS](https://cn.cutefishos.com/) 65 | 66 | 网盘地址:https://pan.baidu.com/s/1EU7FNst_ttmhf1xHgACkdw 67 | 68 | - ### [红旗 linux](https://www.chinaredflag.cn/) 69 | 70 | 网盘地址:https://pan.baidu.com/s/1R0hIWBSfL3fkq8L5RFVCZA 71 | 72 | - ### [中兴新支点操作系统](https://www.gd-linux.com/desktop/) 73 | 74 | 网盘地址:https://pan.baidu.com/s/1-4P6KVTd51VTC1uC-HG4bA 75 | 76 | - ### [UOS](https://www.chinauos.com/) 77 | 78 | 网盘地址:https://pan.baidu.com/s/1nZuII3wBJTPyNGUILZ3nQQ 79 | 80 | - ### [中标麒麟](https://www.kylinos.cn/) 81 | - ### [JingOS](https://cn.jingos.com/) 82 | - ### [openEuler](https://www.openeuler.org/zh/) 83 | - ### [AliOS](https://www.alios.cn/) 84 | 85 | ## 🏳🌈虚拟机(提取码:1024 ) 86 | 87 | - ### [Bochs](https://bochs.sourceforge.io/) 88 | 89 | Bochs 是一个高度便携的开源 IA-32 (x86) PC 仿真器,用 C++ 编写,可在大多数流行平台上运行。它包括对 Intel x86 CPU 的仿真、通用 I/O 设备和自定义 BIOS。 90 | 91 | - ### [DOSBox](https://www.dosbox.com/) 92 | 93 | 是一款免费、开源的模拟器,用于运行适用MS-DOS兼容操作系统的软件(主要是电子游戏)。它的最初版本于2002年发布。 94 | 95 | DOSBox支持许多IBM PC兼容的显卡和声卡,为本地的DOS程序提供执行环境,使这些程序可以正常运行于大多数现代计算机上的不同操作系统。DOSBox主要以C++编写,是以GNU通用公共许可证许可发布的自由软件。 96 | 97 | DOSBox所运行的MS-DOS软件通常不能在现代计算机上直接运行,它们通常与现代的主流硬件和操作系统不兼容。DOSBox在模拟MS-DOS同时,还增加了一些可用特性,包括虚拟磁盘、点对点网络、对模拟画面截图和录像。有些非官方的DOSBox变体,如DOSBox SVN Daum和DOSBox SVN-lfn提供了更多的功能,比如存档、长文件名支持等[4]。有些游戏开发商重新发行早期的DOS游戏时,也会使用DOSBox,使其可以在现代计算机上运行。 98 | 99 | - ### [DOSEMU](http://www.dosemu.org/) 100 | 101 | 一个兼容层软件包,它使DOS操作系统(例如,MS-DOS、DR-DOS、FreeDOS)和应用软件能够在基于x86的 PC(IBM PC 兼容计算机)上的Linux上运行。 102 | 103 | - ### [Hyper-V](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/) 104 | 105 | 代号Viridian,旧称Windows Server Virtualization,是Microsoft的本地虚拟机管理程序,它可以在运行x86-64位的Windows上创建虚拟机。[2] 从Windows 8开始,Hyper-V取代Windows Virtual PC作为Windows客户端版本的硬件虚拟化组件。可以配置运行Hyper-V的服务器计算机能够将单个虚拟机公开到一个或多个网络。Hyper-V是与Windows Server 2008一起首次发布,自Windows Server 2012和Windows 8以来一直无需额外付费。独立的Windows Hyper-V Server是免费的,但仅具有命令行接口。 106 | 107 | - ### [KVM](https://www.linux-kvm.org/page/Main_Page) 108 | 109 | KVM(用于基于内核的虚拟机)是适用于 x86 硬件上的 Linux 的完整虚拟化解决方案,包含虚拟化扩展(Intel VT 或 AMD-V)。它由一个可加载的内核模块 kvm.ko 组成,该模块提供核心虚拟化基础架构和一个处理器特定模块 kvm-intel.ko 或 kvm-amd.ko。 110 | 111 | - ### [Logical Domains](https://docs.oracle.com/cd/E19053-01/ldoms.mgr11/820-4913-10/chapter1.html) 112 | 113 | SPARC 虚拟机管理程序是一个小型固件层,它提供了一个稳定的虚拟机架构,可以在其中写入操作系统。使用管理程序的 Sun 服务器提供硬件功能来支持管理程序对逻辑操作系统活动的控制。 114 | 115 | - ### [OpenVZ](https://openvz.org/) 116 | 117 | OpenVZ是基于Linux内核的操作系统级虚拟化技术。OpenVZ允许物理服务器运行多个操作系统,该技术常用于虚拟专用服务器(VPS,Virtual Private Server)。 118 | 119 | 与VMware这种虚拟机和Xen这种硬件辅助虚拟化技术相比,OpenVZ的主机与客户系统都必须是Linux(虽然在不同的虚拟环境里可以用不同的Linux发行版)。但是,OpenVZ声称这样做有性能上的优势。根据OpenVZ网站的说法,使用OpenVZ与使用独立的实体服务器相比,性能只会有1-3%的损失。 120 | 121 | OpenVZ的Linux客户系统其实是共享OpenVZ主机Linux系统的内核,也就意味着OpenVZ的Linux客户系统不能升级内核。 122 | 123 | OpenVZ是SWsoft, Inc.公司开发的专有软件Virtuozzo(Virtuozzo虚拟机还支持Windows客户系统)的基础。OpenVZ的授权为GPLv2。 124 | 125 | OpenVZ由两部分组成,一个经修改过的Linux内核与一套用户工具。 126 | 127 | - ### [Oracle VM VirtualBox](https://www.virtualbox.org/) 128 | 129 | 甲骨文公司xVM虚拟化平台技术的一部分。它提供用户在32位或64位的Windows、Solaris及Linux 操作系统上虚拟其它x86的操作系统。用户可以在VirtualBox上安装并且运行Solaris、Windows、DOS、Linux、OS/2 Warp、OpenBSD及FreeBSD等系统作为客户端操作系统[1]。 130 | 131 | 与同性质的VMware及Virtual PC比较下,VirtualBox独到之处包括远程桌面协议(RDP)、iSCSI及USB的支持,VirtualBox在客户机操作系统上已可以支持USB 3.0的硬件设备,不过要安装Virtualbox Extension Pack。 132 | 133 | Win 下载地址:https://pan.baidu.com/s/1Mj-MElyPxkllSRqUVqWXxQ 134 | 135 | Mac 下载地址:https://pan.baidu.com/s/1Eamo0Ar03HIrZs299IpGSA 136 | 137 | Linux 下载地址:https://pan.baidu.com/s/1M0dsBJjXhi6jy_mAjVIG2g 138 | 139 | - ### [Parallels Workstation](https://www.parallels.com/) 140 | 141 | 由Parallels推出的一款为使用英特尔处理器的苹果电脑提供硬件虚拟化的软件。在版本16.5后也为使用Apple Silicon的苹果电脑提供x86-64架构的虚拟化。用户可以通过Parallels Desktop for Mac在苹果电脑上安装Windows、Linux发行版、FreeBSD、MS-DOS、EComStation、OS/2、Solaris等系统。 142 | 143 | Mac 安装包:https://pan.baidu.com/s/1H2n00Dt7z9WI-Q5PqOoqkg 144 | 145 | - ### [PearPC](http://pearpc.sourceforge.net/) 146 | 147 | PearPC是一个在PC平台上独立模拟PowerPC中Mac OS、Apple Darwin及Linux软体,它遵循GPL,可以运行于基于X86平台上的Windows、Linux,以及Intel架构的Mac OS X。[1]它的第一官方版本于2004年5月10日释出。 148 | 149 | PearPC拥有一个可以动态转换PPC代码到x86代码并进行高速缓存的“运行时编译执行”(JIT,Just-In-Time)技术处理器模拟核心。尽管只涉及x86主机体系机构,JIT模拟核心至少比体系结构独立的普通处理器模拟内核快十倍,这是完成可用的实时模拟的关键。 150 | 151 | Win 下载地址:https://pan.baidu.com/s/1kn2fl9ojESafuXmcFkP_0w 152 | 153 | - ### [QEMU](https://www.qemu.org/) 154 | 155 | QEMU(quick emulator)是一款由法布里斯·贝拉(Fabrice Bellard)等人编写的免费的可执行硬件虚拟化的(hardware virtualization)开源托管虚拟机(VMM)。 156 | 157 | 其与Bochs,PearPC类似,但拥有高速(配合KVM),跨平台的特性。 158 | 159 | QEMU是一个托管的虚拟机镜像,它通过动态的二进制转换,模拟CPU,并且提供一组设备模型,使它能够运行多种未修改的客户机OS,可以通过与KVM一起使用进而接近本地速度运行虚拟机(接近真实电脑的速度)。 160 | 161 | QEMU还可以为user-level的进程执行CPU仿真,进而允许了为一种架构编译的程序在另外一种架构上面运行(借由VMM的形式)。 162 | 163 | Win 下载地址:https://pan.baidu.com/s/15qfv7MkI8ugDTVr8zeCfuA 164 | 165 | Mac 从 Homebrew 安装 :```brew install qemu``` 166 | 167 | Mac 从 MacPorts 安装 :```sudo port install qemu``` 168 | 169 | Linux 安装: 170 | 171 | Arch: `pacman -S qemu` 172 | 173 | Debian/Ubuntu: `apt-get install qemu` 174 | 175 | Fedora: `dnf install @virtualization` 176 | 177 | Gentoo: `emerge --ask app-emulation/qemu` 178 | 179 | RHEL/CentOS: `yum install qemu-kvm` 180 | 181 | SUSE: `zypper install qemu` 182 | 183 | - ### [Xen](https://xenproject.org/) 184 | 185 | Xen是一个开源的可直接运行于硬件层之上的虚拟化软件,它可在传统虚拟技术极度不友好的X86架构上也有上佳的表现它是英国剑桥大学开发的开源虚拟化软件,它的初衷是在一台物理机上运行上百台虚拟机; 186 | 187 | Xen的设计十分精巧,它属于虚拟化type-I ,因为Xen实际是一个简化版的Hypervisor层;相对于Type-II类型的基于Host的虚拟化(如:VMware Workstattion),其性能相对会较好;Xen仅对CPU和Memory直接接管,而其它IO硬件驱动则由其上运行的第一个虚拟机来提供支持.这样做的原因是: Xen无法为众多IO设备开发驱动,而硬件设备的开发商也不会专为Xen提供驱动,因此Xen采用了这样一种特别的设计方式。 188 | 189 | - ### [VMware Workstation Pro](https://www.vmware.com/cn.html) 190 | 191 | VMware Workstation是VMware公司推出的一款桌面虚拟计算软件。此软件可以提供虚拟机功能,使计算机可以同时运行多个不同操作系统,以及进行开发、测试 、部署新的应用程序的最佳解决方案。该软件具有Windows、Linux版本。VMware Workstation可在一部实体机器上模拟完整的网络环境,以及可便于携带的虚拟机器,其更好的灵活性与先进的技术胜过了市面上其他的虚拟计算机软件。对于企业的 IT开发人员和系统管理员而言, VMware在虚拟网路,实时快照,拖曳共享文件夹,支持 PXE 等方面的特点使它成为必不可少的工具。 192 | 193 | Win 下载地址:https://pan.baidu.com/s/1kdFEFD_sljhbfbPw9mibOQ 194 | 195 | Linux 下载地址:https://pan.baidu.com/s/1nLya-sqPkffgFIflVijy6g 196 | 197 | 198 | ## 🛠SSH客户端推荐 199 | 200 | - ### [MobaXterm](https://mobaxterm.mobatek.net/) 201 | 202 | MobaXterm是一个功能强大的SSH工具,除了支持基本的SSH终端管理外,还有非常多的增强和扩展功能 203 | 204 | ``` 205 | 1. 有绿色版本软件,使用方便 206 | 2. 多标签管理,随时切换 207 | 3. 支持SSH、Telent、FTP、SFTP等多种协议 208 | 4. 支持RDP远程连接Windows 209 | 5. 图形化SFTP管理,可上传下载文件 210 | 6. 内置MobaTextEditor,可以直接在服务端编辑和保存文件 211 | 7. 应用内分屏,最多支持4个屏幕 212 | 8. 支持安装插件 213 | ``` 214 | 215 | MobaXterm 是一个非常好的一站式服务器管理工具,对于多种协议的支持,让其不管是Linux、Windows还是VNC等,都可以在一个软件中进行操作管理,配合内置的SFTP文件管理和MobaTextEditor,可以让远程终端文件管理更加便捷。 216 | 217 | - ### [Xshell](https://www.netsarang.com/zh/xshell/) 218 | 219 | Xshell 是国内比较流行的SSH软件,和其他的SSH客户端相比,Xshell更加注重用户体验的一些东西,比如其现代化的界面,多种语言包括简体中文支持,代码高亮等,对于新手非常友好。 220 | 221 | Xshell中还提供了一些高级功能,比如标签管理、批量命令等,不过有一些为高级功能,需要升级付费版才能使用,当然,因为现在很多操作都可以在网站面板完成,对于新手来说,其实Xshell免费版本已经足够了,而专业人员使用频率足够高的话付费购买也是非常值得的 222 | 223 | - ### [Termius](https://termius.com/) 224 | 225 | Termius 是一款全平台的SSH客户端,该软件最大的特点就是支持全部平台,包括Windows、Mac、Linux、iOS、Android等,有了移动设备支持,只要有网络,你可以在任何时间地点管理服务器 226 | 227 | 如果你的工作经常用到SSH连接,还可以升级高级版实现全平台同步,全平台的好处就是只要你在一个平台添加或修改了服务器,其他平台会自动同步,随时随地管理主机,而且也不用在手机上输入复杂的密码了 228 | 229 | 在功能上,Termius 也有很多实用的东西,比如SFTP、代码片段、选项卡等,可以省下很多事情 230 | 231 | - ### [PuTTY](https://www.putty.org/) 232 | 233 | PuTTY 是一款开源免费的SSH客户端,支持SCP,SSH,Telnet,rlogin等多种网络协议,该软件的特点非常小巧,大小只有1M左右, 而且有绿色版本下载下来就能使用,再加上其开源的特性,很多人都一直在使用PuTTY管理Linux服务器,不过由于软件是全英文的界面,而且有些东西需要学习设置,对新手来说可能并不是那么友好 234 | 235 | - ### [SimpleRemote](http://www.91fk.net/) 236 | 237 | SimpleRemote 是一款免费开源的远程连接管理工具,软件非常的小巧,解压后只有不到3MB的大小 238 | 239 | 虽然是一款很小的软件,但是基本远程连接功能都有,比如常用的多标签、配色方案、密钥连接、RDP、Telnet等,对于大多数人来说,功能完全够用,而且对于重要的信息,还可以为SimpleRemote设置打开密码,只有输入正确的密码才能使用. 240 | 241 | - ### [ZOC Terminal](https://www.emtec.com/zoc/) 242 | 243 | ZOC Terminal 是一款强大的终端模拟器,其支持Windows和Mac平台,软件使用很方便,可以快速连接、也可以保存主机,支持多标签、多窗口,如果你对基础的界面不满意,还可以定制样式,包括背景、字体、颜色等,组成自己喜欢的界面,不过这款软件并没有提供免费版本,需要付费购买 244 | 245 | - ### [Finalshell](http://www.hostbuf.com/) 246 | 247 | Finalshell 是一款国人开发的远程连接工具,支持 Windows、Linux 和 macOS,通过界面我们可以看出这款软件非常强大,你不仅可以在远程窗口上执行命令,还可以实时监测到系统的消耗,比如CPU、内存、网络等资源的使用量 248 | 249 | Finalshell 还有比较方便的一点就是文件的传输,在软件的右下角有一个文件夹管理界面,让你可以像在FTP软件中那样传输文件,支持右键上传下载,支持鼠标拖拽文件上传到服务器,省去了很多命令行的繁琐步骤 250 | 251 | 除了基础功能,Finalshell 还可以升级到专业版,包括打包传输、高级网络监控、高级进程管理、多地点ping监控等 252 | 253 | - ### [JuiceSSH](https://juicessh.com/) 254 | 255 | JuiceSSH是一款Android上的免费SSH客户端,你可以用它快速连接到Linux服务器,也可以添加账号密码或密钥保存多台机器,Juice 让你在手机上就能非常方便地执行这些操作 256 | 257 | 它的主要功能有 258 | 259 | ``` 260 | 1. 全彩色终端显示,多个主题可选 261 | 2. 轻松输入,弹出键盘可以方便地输入常用的特殊字符 262 | 3. Telnet 和 本地 Shell 命令执行 263 | 4. 第三方插件支持,比如性能监控、OpenSSH导入等 264 | 5. 其他高级功能 265 | ``` 266 | 267 | 对于想要在安卓手机上管理服务器的人来说,JuiceSSH 是一个非常好的选择,免费版本以及足够使用,付费版还有更多强大功能,包括端口转发、自动执行代码段、快捷方式等,能够极大提升运维效率。 268 | 269 | - ### [ServerCat](https://apps.apple.com/cn/app/servercat-linux-%E7%9B%91%E6%8E%A7-ssh-%E7%BB%88%E7%AB%AF/id1501532023) 270 | 271 | ServerCat 是一款iOS平台上的Linux管理软件,它可以让你在iPhone上连接远程服务器,用来监视系统性能、管理Docker和执行SSH命令,软件内提供了很多监控参数,比如CPU、内存、系统负载、网速、硬盘等,并且以可视化的形式展示,你可以随时查看自己服务器的系统状态,避免因负载过高则影响产品服务。 272 | 273 | - ### [ShellFish](https://apps.apple.com/cn/app/secure-shellfish/id1336634154) 274 | 275 | ShellFish 是一款SFTP和SSH结合的软件,支持iPhone和iPad,你可以用它来连接远程服务并管理上面的文件,它专为移动设备做了很多优化,比如你可以使用SFTP管理服务器上的文件,使用专用键盘执行命令,创建代码片段快速使用等,而且还有一个很不错的地方在于它是支持快捷指令的,你可以和其他APP配合使用,使用语音执行命令等。 276 | 277 | ## ⛵编译器(提取码:1024 ) 278 | 279 | - ### [GCC编译器](https://gcc.gnu.org/) 280 | 281 | GCC 是開放原始碼 (open source) 的跨平台編譯器 (compiler) ,支援編譯 C 、 C++ 、 Objective-C 、 Fortran 、 Ada 及 Go 等程式語言 282 | 283 | Win 安装包:https://pan.baidu.com/s/1EORzRJ6WwaoHnQpHNKxvdQ 284 | 285 | - ### g++ 286 | 287 | g++是GNU组织开发出的编译器软件集合(GCC)下的一个C++编译器。它是Unix 和 Linux 系统下标配的 基于命令行的 C++编译器。如果你的系统是Windows,可以按照下面的教程安装g++。 288 | 289 | win 安装教程:https://www.cnblogs.com/xiaolantian/p/10746206.html 290 | 291 | 安装包:https://pan.baidu.com/s/19lkCrn7zO-03L-6LijxO6Q 292 | 293 | - ARMCC 294 | - IAR 295 | - LLVM 296 | - IL2CPP 交叉编译器 297 | - Watcom C/C++ 298 | - Tiny C Compiler(TCC) 299 | - MinGW 300 | 301 | 302 | 303 | 304 | ## 🚧编辑器 305 | 306 | - ### [Netbeans](https://netbeans.org/features/cpp/index.html) 307 | 308 | Netbeans 是一个自由而开源的、流行的跨平台 IDE ,可用于 C/C++ 以及其他编程语言,可以使用由社区开发的插件展现了其完全的扩展性。 309 | 310 | 它包含了用于 C/C++ 开发的项目类型和模版,并且你可以使用静态和动态函数库来构建应用程序。此外,你可以利用现有的代码去创造你的工程,并且也可以通过拖放的方式导入二进制文件来从头构建应用。 311 | 312 | 让我们来看看关于它的特性: 313 | 314 | ``` 315 | 1. C/C++ 编辑器很好的整合了多线程的 GNU GDB 调试工具 316 | 2. 支持代码协助 317 | 3. 支持 C++11 标准 318 | 4. 在里面创建和运行 C/C++ 测试程序 319 | 5. 支持QT工具包 320 | 6. 支持将已编译的应用程序自动打包到 .tar,.zip 等归档文件 321 | 7. 支持多个编译器,例如: GNU、Clang/LLVM、Cygwin、Oracle Solaris Studio 和 MinGW 322 | 8. 支持远程开发 323 | 9. 文件导航 324 | 10. 源代码检查 325 | ``` 326 | - ### [Code::Blocks](http://www.codeblocks.org) 327 | 328 | Code::Blocks 是一个免费的、具有高度扩展性的、并且可以配置的跨平台 C++ IDE,它为用户提供了必备而典范的功能。它具有一致的界面和体验。 329 | 330 | 最重要的是,你可以通过用户开发的插件扩展它的功能,一些插件是随同 Code::Blocks 发布的,而另外一些则不是,它们由 Code::Block 开发团队之外的个人用户所编写的。 331 | 332 | 其功能分为编译器、调试器、界面功能,它们包括: 333 | 334 | ``` 335 | 1. 支持多种编译器如 GCC、clang、Borland C++ 5.5、digital mars 等等 336 | 2. 非常快,不需要 makefile 337 | 3. 支持多个目标平台的项目 338 | 4. 支持将项目组合起来的工作空间 339 | 5. GNU GDB 接口 340 | 6. 支持完整的断点功能,包括代码断点,数据断点,断点条件等等 341 | 7. 显示本地函数的符号和参数 342 | 8. 用户内存导出和语法高亮显示 343 | 9. 可自定义、可扩展的界面以及许多其他的的功能,包括那些用户开发的插件添加功能 344 | ``` 345 | 346 | - ### [Eclipse](http://www.codeblocks.org) 347 | 348 | Eclipse 在编程界是一款著名的、开源的、跨平台的 IDE。它给用户提供了一个很棒的界面,并支持拖拽功能以方便界面元素的布置。 349 | 350 | Eclipse CDT 是一个基于 Eclipse 主平台的项目,它提供了一个完整功能的 C/C++ IDE,并具有以下功能: 351 | 352 | ``` 353 | 1. 支持项目创建 354 | 2. 管理各种工具链的构建 355 | 3. 标准的 make 构建 356 | 4. 源代码导航 357 | 5. 一些知识工具,如调用图、类型分级结构,内置浏览器,宏定义浏览器 358 | 6. 支持语法高亮的代码编辑器 359 | 7. 支持代码折叠和超链接导航 360 | 8. 代码重构与代码生成 361 | 9. 可视化调试存储器、寄存器的工具 362 | 10. 反汇编查看器以及更多功能 363 | ``` 364 | 365 | - ### [CodeLite ](http://codelite.org/) 366 | 367 | CodeLite 也是一款为 C/C++、JavaScript(Node.js)和 PHP 编程专门设计打造的自由而开源的、跨平台的 IDE。 368 | 369 | 它的一些主要特点包括: 370 | ``` 371 | 1. 代码补完,提供了两个代码补完引擎 372 | 2. 支持多种编译器,包括 GCC、clang/VC++ 373 | 3. 以代码词汇的方式显示错误 374 | 4. 构建选项卡中的错误消息可点击 375 | 5. 支持下一代 LLDB 调试器 376 | 6. 支持 GDB 377 | 7. 支持重构 378 | 8. 代码导航 379 | 9. 使用内置的 SFTP 进行远程开发 380 | 10. 源代码控制插件 381 | 11. 开发基于 wxWidgets 应用的 RAD(快速应用程序开发)工具,以及更多的特性 382 | ``` 383 | - ### [Bluefish](http://bluefish.openoffice.nl) 384 | 385 | Bluefish 不仅仅是一个一般的编辑器,它是一个轻量级的、快捷的编辑器,为程序员提供了如开发网站、编写脚本和软件代码的 IDE 特性。它支持多平台,可以在 Linux、Mac OSX、FreeBSD、OpenBSD、Solaris 和 Windows 上运行,同时支持包括 C/C++ 在内的众多编程语言。 386 | 387 | 下面列出的是它众多功能的一部分: 388 | 389 | ``` 390 | 1. 多文档界面 391 | 2. 支持递归打开文件,基于文件名通配模式或者内容模式 392 | 3. 提供一个非常强大的搜索和替换功能 393 | 4. 代码片段边栏 394 | 5. 支持整合个人的外部过滤器,可使用命令如 awk,sed,sort 以及自定义构建脚本组成(过滤器的)管道文件 395 | 6. 支持全屏编辑 396 | 7. 网站上传和下载 397 | 8. 支持多种编码等许多其他功能 398 | ``` 399 | 400 | - ### [Brackets](http://brackets.io/) 401 | 402 | Brackets 是一个现代化风格的、开源的文本编辑器,专为 Web 设计与开发打造。它可以通过插件进行高度扩展,因此 C/C++ 程序员通过安装 C/C++/Objective-C 包来使用它来开发,这个包用来在辅助 C/C++ 代码编写的同时提供了 IDE 之类的特性。 403 | 404 | - ### [Atom](https://atom.io/) 405 | 406 | Atom 也是一个现代化风格、开源的多平台文本编辑器,它能运行在 Linux、Windows 或是 Mac OS X 平台。它的定制可深入底层,用户可以自定义它,以便满足各种编写代码的需求。 407 | 408 | 它功能完整,主要的功能包括: 409 | 410 | ``` 411 | 1. 内置了包管理器 412 | 2. 智能的自动补完 413 | 3. 内置文件浏览器 414 | 4. 查找、替换以及其他更多的功能 415 | ``` 416 | 417 | 安装指南: http://www.tecmint.com/atom-text-and-source-code-editor-for-linux/ 418 | 419 | - ### [Sublime Text](https://www.sublimetext.com) 420 | 421 | Sublime Text 是一个完善的、跨平台的文本编辑器,可用于代码、标记语言和一般文字。它可以用来编写 C/C++ 代码,并且提供了非常棒的用户界面。 422 | 423 | 它的功能列表包括: 424 | 425 | ``` 426 | 1. 多重选择 427 | 2. 按模式搜索命令 428 | 3. 抵达任何一处的功能 429 | 4. 免打扰模式 430 | 5. 窗口分割 431 | 6. 支持项目之间快速的切换 432 | 7. 高度可定制 433 | 8. 支持基于 Python 的 API 插件以及其他特性 434 | ``` 435 | 安装指南: http://www.tecmint.com/install-sublime-text-editor-in-linux/ 436 | 437 | - ### [JetBrains CLion](https://www.jetbrains.com/clion/) 438 | 439 | JetBrains CLion 是一个收费的、强大的跨平台 C/C++ IDE。它是一个完全整合的 C/C++ 程序开发环境,并提供 Cmake 项目模型、一个嵌入式终端窗口和一个主要以键盘操作的编码环境。 440 | 441 | 它还提供了一个智能而现代化的编辑器,具有许多令人激动的功能,提供了理想的编码环境,这些功能包括: 442 | 443 | ``` 444 | 1. 除了 C/C++ 还支持其他多种语言 445 | 2. 在符号声明和上下文中轻松导航 446 | 3. 代码生成和重构 447 | 4. 可定制的编辑器 448 | 5. 即时代码分析 449 | 6. 集成的代码调试器 450 | 7. 支持 Git、Subversion、Mercurial、CVS、Perforcevia(通过插件)和 TFS 451 | 8. 无缝集成了 Google 测试框架 452 | 9. 通过 Vim 仿真插件支持 Vim 编辑体验 453 | ``` 454 | 455 | - ### [Visual Studio Code](https://www.visualstudio.com) 456 | 457 | Visual Studio 是一个功能丰富的、完全整合的、跨平台开发环境,运行在 Linux、Windows 和 Mac OS X 上。 最近它向 Linux 用户开源了,它重新定义了代码编辑这件事,为用户提供了在 Windows、Android、iOS 和 Web 等多个平台开发不同应用所需的一切工具。 458 | 459 | 它功能完备,功能分类为应用程序开发、应用生命周期管理、扩展和集成特性。你可以从 Visual Studio 官网阅读全面的功能列表。 460 | 461 | - ### [KDevelop](https://www.kdevelop.org) 462 | 463 | KDevelop 是另一个自由而开源的跨平台 IDE,能够运行在 Linux、Solaris、FreeBSD、Windows、Mac OS X 和其他类 Unix 操作系统上。它基于 KDevPlatform、KDE 和 Qt 库。KDevelop 可以通过插件高度扩展,功能丰富且具有以下显著特色: 464 | 465 | ``` 466 | 1. 支持基于 Clang 的 C/C++ 插件 467 | 2. 支持 KDE 4 配置迁移 468 | 3. 支持调用二进制编辑器 Oketa 469 | 4. 支持众多视图插件下的差异行编辑 470 | 5. 支持 Grep 视图,使用窗口小部件节省垂直空间等 471 | ``` 472 | 473 | - ### [Geany](http://www.geany.org/) 474 | 475 | Geany 是一个免费的、快速的、轻量级跨平台 IDE,只需要很少的依赖包就可以工作,独立于流行的 Linux 桌面环境下,比如 GNOME 和 KDE。它需要 GTK2 库实现功能。 476 | 477 | 它的特性包括以下列出的内容: 478 | 479 | ``` 480 | 1. 支持语法高亮显示 481 | 2. 代码折叠 482 | 3. 调用提示 483 | 4. 符号名自动补完 484 | 5. 符号列表 485 | 6. 代码导航 486 | 7. 一个简单的项目管理工具 487 | 8. 可以编译并运行用户代码的内置系统 488 | 9. 可以通过插件扩展 489 | ``` 490 | 491 | - ### [Ajunta DevStudio](http://anjuta.org/) 492 | 493 | Ajunta DevStudio 是一个简单,强大的 GNOME 界面的软件开发工作室,支持包括 C/C++ 在内的几种编程语言。 494 | 495 | 它提供了先进的编程工具,比如项目管理、GUI 设计、交互式调试器、应用程序向导、源代码编辑器、版本控制等。此外,除了以上特点,Ajunta DeveStudio 也有其他很多不错的 IDE 功能,包括: 496 | 497 | ``` 498 | 1. 简单的用户界面 499 | 2. 可通过插件扩展 500 | 3. 整合了 Glade 用于所见即所得的 UI 开发 501 | 4. 项目向导和模板 502 | 5. 整合了 GDB 调试器 503 | 6. 内置文件管理器 504 | 7. 使用 DevHelp 提供上下文敏感的编程辅助 505 | 8. 源代码编辑器支持语法高亮显示、智能缩进、自动缩进、代码折叠/隐藏、文本缩放等 506 | ``` 507 | 508 | - ### [GNAT Programming Studio](http://libre.adacore.com/tools/gps/) 509 | 510 | GNAT Programming Studio 是一个免费的、易于使用的 IDE,设计的目的用于统一开发人员与他/她的代码和软件之间的交互。 511 | 512 | 它通过高亮程序的重要部分和逻辑从而提升源代码导航体验,打造了一个理想的编程环境。它的设计目标是为你带来更舒适的编程体验,使用户能够从头开始开发全面的系统。 513 | 514 | 它丰富的特性包括以下这些: 515 | 516 | ``` 517 | 1. 直观的用户界面 518 | 2. 对开发者的友好性 519 | 3. 支持多种编程语言,跨平台 520 | 4. 灵活的 MDI(多文档界面) 521 | 5. 高度可定制 522 | 6. 使用喜欢的工具获得全面的可扩展性 523 | ``` 524 | 525 | - ### [Qt Creator](https://www.qt.io/ide/) 526 | 527 | 这是一款收费的、跨平台的 IDE,用于创建连接设备、用户界面和应用程序。Qt Creator 可以让用户比应用的编码做到更多的创新。 528 | 529 | 它可以用来创建移动和桌面应用程序,也可以连接到嵌入式设备。 530 | 531 | 它的优点包含以下几点: 532 | 533 | ``` 534 | 1. 复杂的代码编辑器 535 | 2. 支持版本控制 536 | 3. 项目和构建管理工具 537 | 4. 支持多屏幕和多平台,易于构建目标之间的切换等等 538 | ``` 539 | 540 | - ### [Emacs](https://www.gnu.org/software/emacs/) 541 | 542 | Emacs 是一个自由的、强大的、可高度扩展的、可定制的、跨平台文本编辑器,你可以在 Linux、Solaris、FreeBSD、NetBSD、OpenBSD、Windows 和 Mac OS X 这些系统中使用该编辑器。 543 | 544 | Emacs 的核心也是一个 Emacs Lisp 的解释器,Emacs Lisp 是一种基于 Lisp 的编程语言。在撰写本文时,GNU Emacs 的最新版本是 24.5,Emacs 的基本功能包括: 545 | 546 | ``` 547 | 1. 内容识别编辑模式 548 | 2. Unicode 的完全支持 549 | 3. 可使用 GUI 或 Emacs Lisp 代码高度定制 550 | 4. 下载和安装扩展的打包系统 551 | 5. 超出了正常文本编辑的功能生态系统,包括项目策划、邮件、日历和新闻阅读器等 552 | 6. 完整的内置文档,以及用户指南等等 553 | ``` 554 | 555 | - ### [Nano](https://www.nano-editor.org/) 556 | 557 | Nano是一款小巧友好的文本编辑器。nano 是 Pico 编辑器的自由克隆版本,也是 Pico 的功能增强版本。 558 | 559 | 功能列表: 560 | 561 | ``` 562 | 1. 基本文本编辑 563 | 2. 搜索 564 | 3. 拼写检查 565 | 4. 国际化支持 566 | 5. 自动缩进 567 | ``` 568 | 569 | 570 | - ### [Vim](https://www.vim.org/) 571 | 572 | Vim,一款 VI 编辑器的改进版本,是一款自由的、强大的、流行的并且高度可配置的文本编辑器。它为有效率地文本编辑而生,并且为 Unix/Linux 使用者提供了激动人心的编辑器特性,因此,它对于撰写和编辑 C/C++ 代码也是一个好的选择。 573 | 574 | 总的来说,与传统的文本编辑器相比,IDE 为编程提供了更多的便利,因此使用它们是一个很好的选择。它们带有激动人心的特征并且提供了一个综合性的开发环境,有时候程序员不得不陷入对最好的 C/C++ IDE 的选择。 575 | 576 | 在互联网上你还可以找到许多 IDE 来下载,但不妨试试我们推荐的这几款,可以帮助你尽快找到哪一款是你需要的。 577 | 578 | 579 | - Joe 580 | - Notepad++ 581 | - Light Table 582 | 583 | ## 🌋测试工具 584 | 585 | 586 | ### 压力测试 587 | 588 | - ApacheBench 589 | - IOmeter 590 | - webbench 591 | - siege 592 | - nbench 593 | - stress 594 | - prime 595 | - Memtester 596 | 597 | ### 性能测试 598 | 599 | - WebLOAD 600 | - LoadUI NG Pro 601 | - SmartMeter.io 602 | - Tricentis Flood 603 | - LoadView 604 | - Apache JMeter 605 | - LoadRunner 606 | - Rational performance tester 607 | - NeoLoad 608 | - LoadNinja 609 | - WAPT 610 | - Loadster 611 | - LoadImpact 612 | - Testing Anywhere 613 | - QEngine (ManageEngine) 614 | - OpenSTA 615 | - Sysbench 616 | 617 | ### 性能监控工具 618 | 619 | - dstat - 多类型资源统计工具 620 | - top - 相比top更好的ASCII码体验 621 | - Nmon - 类Unix系统的性能监控 622 | - slabtop - 显示内核slab缓存信息 623 | - sar - 性能监控和瓶颈检查 624 | - Saidar - 简单的统计监控工具 625 | - top - 经典的Linux任务管理工具 626 | - Sysdig - 系统进程的高级视图 627 | - netstat - 显示开放的端口和连接 628 | - tcpdump - 洞察网络封包 629 | - vmstat - 虚拟内存统计信息 630 | - free - 内存统计信息 631 | - Htop - 更加友好的top 632 | - ss - 网络管理的现代替代品 633 | - lsof - 列表显示打开的文件 634 | - iftop - 类似top的了网络连接工具 635 | - iperf - 网络性能工具 636 | - Smem - 高级内存报表工具 637 | - Icinga - Nagios的社区分支版本 638 | - Nagios - 最为流行的监控工具 639 | - Linux process explorer - Linux下的procexp 640 | - Collectl - 性能监控工具 641 | - MRTG - 经典网络流量监控图形工具 642 | - Monit - 简单易用的监控工具 643 | - Munin - 为服务器提供监控和提醒服务 644 | 645 | 646 |