Linux系统使用入门进阶总结(1)
转载请注明出处:https://blog.csdn.net/VennyJin/article/details/84998926
本文出自@VennyJin的博客
- 相对较少的资源占用(同样的运行效率需要更少的硬件资源成本!)
- 多任务、多用户,方便系统管理,多人协作。
- 稳定(该项建立在对系统非常熟悉的情况下,否则呵呵,一行命令就可以搞崩你的电脑)、安全(讲道理Linux系统是没有杀毒软件的!),系统更新维护周期较短
- 系统自定义,稳稳地感觉系统在自己的掌控之中好嘛,完全不用担心windows的各种莫名奇妙的更新和崩溃bug
- 好看!!!可选择多种图形用户界面(如GNOME、KDE),漂亮的界面+命令行界面整整的就一极客范好嘛
- 之后说到重点当然是这样一个新的操作系统对于团队的视觉组和控制组的好处咯
- 源码公开
视觉这边大概就是,各种流行的视觉库呀,环境呀,框架呀,配置起来要比windows方便很多,而且开发的项目可移植性特别好,基本上github上面的各种项目拿来编译一下就可以直接运行了,不必像windows那样各种折腾。
- 广泛的硬件支持
Linux可以支持多种体系结构以及各种微处理器,最常见的x86、ARM、是完全没有任何问题的,包括偏硬件一点的FPGA开发也可以使用linux嵌入式系统,按道理来说应该是嵌入式系统开发的首选系统。只是团队之前一直用的windows,然后各种传承可能也比较容易罢了。
好处还有很多,但一切都是建立在对它足够熟悉的前提之下!
熟悉操作系统的话可以主要学习一下《鸟哥的Linux私房菜》,熟悉操作开发的话
主要看一看5,6,7,10章就够了
主流发行版本有Ubuntu,Fedora,Debian,还有使用于树莓派的Raspbian和Ubuntu Mate
一般非专业人士用Ubuntu就行了,团队的树莓派上装的是Ubuntu Mate(轻量、使用起来和Ubuntu差不多)
详细的PC端 Ubuntu系统安装和初期配置流程可以参考我写的文档,也可以去网上搜,都很详细的
树莓派上的
在熟悉了操作系统的基础之上,当然就是项目开发咯,(我们一切都以从c\c++\opencv为例)还是从最基础的开始。
前期环境准备:
- 编辑器vim,编译器gcc/g++,就这俩就够一般的c++程序编译执行了
- Cmake,工程比较大的时候,需要链接各种库呀,多源文件的时候,就需要cmake了,cmake是一种跨平台编译工具,emm反正个人觉得就是个类似VisualStudio里边属性表之类的东西啦,功能非常强大,建议好好学习一下编写规则!!!
- 当你能够熟悉使用上面的两种工具之后,就可以考虑开始使用IDE了,个人推荐的话就是QT Creator和CodeLite了,其中Qt界面非常友好简介,对于新手来说很容易上手,但是需要自己编辑CMakeLists.txt,可能会有一些问题,但是网上帮助资料丰富,很适合单步调试,而CodeLite可以自动生成CMakeLists.txt,但是适应IDE需要花点时间,而且帮助文档比较少。
- 当然,作为一个有积累的技术男,还要学习一下子Markdown编写技术总结啦,还有代码说明文件啦之类的东西,推荐的markdown编辑器当然就是Typora咯,markdown也是一门语言,但是不用刻意学习,直接看看CSDN上的那个markdown说明就够了