#include <stdio.h>
这个头文件在哪?在系统目录中,什么是系统目录呢?就是工具链的目录。
一个C/C++文件要经过预处理(preprocessing)、编译(compilation)、汇编(assembly)和链接(linking)等4步才能变成可执行文件。
#include<stdio.h>:要去工具链默认的所指定的目录中查找,是定死的,那怎么添加自己的目录?
#include"test.h":使用双引号包含的头文件说明是在当前目录下查找
怎么添加自己的目录,使用-I,比如gcc -c -o main.o main.c -I ./
-L:指定链接时库文件目录
-l:指定链接哪一个库文件
制作使用静态库:
gcc -c -o main.o main.c
gcc -c -o sub.o sub.c
ar crs libsub.a sub.o sub2.o sub3.o(可以使用多个.o生成静态库)
gcc -o test main.o libsub.a (如果.a不在当前目录下,需要指定它的绝对或相对路径)
所谓静态库就是使用的时候main.o 和libsub.a链接在一起,会打包在一起,生成的文件会比较大
制作使用动态库:
gcc -c -o main.o main.c
gcc -c -o sub.o sub.c
gcc -shared -o libsub.so sub.o sub2.o sub3.o(可以使用多个.o生成动态库)
gcc -o test main.o -lsub -L /libsub.so/所在目录/
hello程序引申
于 2022-04-17 21:15:08 首次发布