我的建议是:勇敢地迈出第一步,安装ubuntu,并且按着一本书看完linux的基础操作,你就会明白你对它的需求,或者说是它对你的吸引力了。
————————————————————————————————————————————————————
如果说 Ubuntu 是现今最受桌面用户欢迎的 Linux 操作系统,那么 CentOS 就是最受公司、企业、IDC 喜爱的 Linux 服务器版 发行版了。
CentOS 是基于 Red Hat Enterprise Linux (收费昂贵但口碑极佳RHTL) 的源代码再编译出来的免费版,
因此不仅继承 RHEL 优越的稳定性,还提供免费更新,因此在服务器提供商、中小型公司中装机量几乎是最大的 Linux 发行版,现在也已正式加入红帽公司。
回到这个问题上来。(注:有些文字来源于知乎和博客,较为琐碎,未作引用说明,在此感谢原作!)
从大的方面讲,它们的设计理念不同。借用一位知乎前辈说的“windows为不知道自己正在做什么的人设计,linux为知道自己要做什么,正在做什么的人设计”。从小的方面讲,用户体验不同。windows将机器置于一个和人对等的位置,它会对你提出要求,让你跟着它去做。linux将机器置于服务于人的位置,它是一台服务于你的机器,听你指挥,接受你的配置,适当时候会提示你,但绝不会命令你。
从windows到ubuntu,一开始不习惯是正常的。因为ms office变成了libre office,没有了qq(微信有linux的),双击exe安装程序也不复存在,甚至连接个网络也得敲命令。但是当你熟悉了这些操作,你会发现这是更高效的方法,这是另一种体验,你发号命令的体验,让机器为你而运转。很多在windows中莫名其妙的内容都是简洁而透明的,比如进程管理。
(1)ubuntu为你提供了学习编程的基础。在这里,先是命令,再是shell脚本,再是python,R这些脚本语言,再是搭建服务器,学习数据库,搭网站。用空闲的时间学习这些一方面是满足求知欲,另一方面是增加技能。
(2)ubuntu给你了干净的环境。让你能够专注于手头的事情,更少被莫名其妙的弹窗,提示所骚扰。所以也可以说它更适合干活。
(3)ubuntu系统很少崩溃,一般大型服务器运行的都是unix/linux系统。此时Windows就只能凭借桌面系统的低门槛用于人们的日常生活中。
<1> 不用说首先是大名鼎鼎的《鸟叔的linux私房菜》。
如果觉得烂大街了(烂大街的东西不一定不好噢),也可以试试《linux从入门到精通》(清华大学出版社)第二版,是基于ubuntu讲的,适合新手入门。
<2>然后就是学习Linux shell编程了。
Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。基本的Linux 命令行是每次执行一个命令,那通过shell脚本编程,将很多条命令放到一起批量执行,并且还可以加入判断、循环等稍复杂的控制逻辑。这里推荐《Linux命令行与shell脚本编程大全》第3版,这本书比较清晰地讲解了怎么进行Shell编程。
<3>以上两个方面搞熟悉后,相信正常的linux管理肯定是没问题的了。
如果还想要继续深入去学习的话,推荐去了解下《Linux内核介绍》《TCP/IP网络协议》一些原理讲解的书籍,能够帮助你从依葫芦画瓢,提升到知其所以然的水平。
gcc 最开始的时候是 GNU C Compiler, 如你所知,就是一个c编译器。但是后来因为这个项目里边集成了更多其他不同语言的编译器,所以表示一堆编译器的合集。 g++则是GCC的c++编译器。
现在你在编译代码时调用的gcc,已经不是当初那个c语言编译器了。更确切的说他是一个驱动程序,根据代码的后缀名来判断调用c编译器还是c++编译器 (g++)。比如你的代码后缀是.c,他会调用c编译器还有linker去链接c的library。如果你的代码后缀是.cpp, 他会调用g++编译器,当然library call也是c++版本的。
当然我说了这么多你可能感到有些混乱,没关系,你就把gcc当成c语言编译器,g++当成c++语言编译器用就是了。
安装有两种方法:
1、使用二进制包安装,这个要看你使用的Linux发行版是哪种?
1).Ubuntu/Debian系列: sudo apt-get install g++
2).RedHat/CentOS系列: yum install gcc-c++
2、ubuntu下g++的安装
安装g++编译器的命令:build-essential是一整套工具,执行完后,就完成了gcc,g++,make的安装。
sudo apt-get install build-essential
注:下面这个命令是修补安装build-essential。
sudo apt-get install build-essential --fix-missing
即已安装了部分build-essential,但没有安装完全,此时可以使用该命令继续安装build-essential。
在shell中输入下列命令中的任何一个即可:
g++ --version
g++ -v
输出版本信息就是安装了,提示命令未找到,就是没装。