Linux底软开发基础路线
$ Linux学习路线
0. Git工具的使用
超直观的图形化Git学习在线网站 https://learngitbranching.js.org/?locale=zh_CN
1. C, C++, Linux命令行与Shell脚本编程
《C/C++ primer plus》[vimg] 《Linux命令行与shell脚本编程大全》[idps]
2. Makefile
《跟我一起写Makefile》
作者:陈皓
3. CMake
https://cmake.org/cmake/help/latest/guide/tutorial/index.html
https://github.com/ShieldQiQi/cmake-examples
4. 汇编基础
-
http://www.ruanyifeng.com/blog/2018/01/assembly-language-primer.html
汇编语言了解 作者: 阮一峰 -
Professional Assembly Language
AT&T语法 x86How to complie x86 assembly on x64 ubuntu:
sudo apt-get install gcc-multilib sudo apt-get install lib32z1 lib32ncurses5
Use the following two lines to assembly and link:
as power.s -o power.o --32 ld power.o -o power -m elf_i386
These tell the computer that you're only working in 32-bit (despite the 64-bit architecture).
If you want to use gdb debugging, then use the assembler line:as --gstabs power.s -o power.o --32
-
Ed, Jorgensen (May 2018). x86-64 Assembly Language Programming with Ubuntu (PDF) (1.0.97 ed.). p. 367.
Intel语法,X86-64平台
5. Linux内核
《程序员的自我修养-链接、装载与库》 《Linux内核设计与实现》 《深入理解Linux内核》 《Linux设备驱动程序》