Linux C语言编程基础
任务详情
0 基于Ubuntu或OpenEuler完成下面的任务(OpenEuler有加分)
- 选择教材第二章的一节进行编程基础练习(2.10,2.11,2.12,2.13,2.14任选一个)
- 建立自己的项目目录,包含自己学号信息(如20190100linkedlist),构建项目结构(src, include,bin, lib, docs, test...),然后把相应代码和文档放置到正确位置,用tree命令查看项目结构,提交截图(5分)
- 进行gcc相关练习(ESc, iso, -I等)提交相关截图(5分)
- 进行静态库,动态库制作和调用练习,提交相关截图(5分)
- 进行gdb相关练习,至少包含四种断点的设置,提交相关截图(10分)
- 编写makefile(5分)
Linux C语言编程基础
一、选择教材第二章的一节进行编程基础练习(2.10,2.11,2.12,2.13,2.14任选一个)
树的相关操作(代码截图)
2、建立自己的项目目录,包含自己学号信息(如20190100linkedlist),构建项目结构(src, include,bin, lib, docs, test...)
mkdir 20121204linkedlist
cd 20191204linkedlist
mkdir src include bin lib docs test
3、3. 进行gcc相关练习(ESc, iso, -I等)
gcc -I../include -E 925main.c -o 925main.i
gcc -I../include -S 925main.c -o 925main.s
gcc -I../include -c 925main.c -o 925main.o
4、进行静态库,动态库制作和调用练习
静态库
ar rcs lib925lib.a *.o //创建静态库
gcc src/925main.c -Iinclude -Llib -l925lib -o bin/925main//链接静态库
动态库
gcc -Iinclude src/newnode.c src/insert.c -fPIC -shared -o lib/lib925.so //生成动态库
gcc src/925main.c -Iinclude -Llib -l925 -o bin/925 //建立生成文件
export LD_LIBRARY_PATH=../lib //设置链接
5、进行gdb相关练习,至少包含四种断点的设置
打开gdb调试
设置断点
6、编写makefile
修改925main.c文件
{{uploading-image-354488.png(uploading...)}}