⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gcc_build_so.txt

📁 基于LINUX操作系统下的各种详细配置(如FTP
💻 TXT
字号:
怎么用gcc生成.so文件GCC=gccCFLAGS=-Wall -ggdb -fPIC#CFLAGS=all: libfunclibfunc:func.o func1.o        $(GCC) -shared -Wl,-soname,libfunc.so.1 -o libfunc.so.1.1 $<        ln -sf libfunc.so.1.1 libfunc.so.1        ln -sf libfunc.so.1 libfunc.so%.o:%.c        $(GCC) -c $(CFLAGS) -o $@ $<clean:        rm -fr *.o        rm -fr *.so*最主要的是GCC命令行的一个选项:-shared 该选项指定生成动态连接库(让连接器生成T类型的导出符号表,有时候也生成弱连接W类型的导出符号),不用该标志外部程序无法连接。相当于一个可执行文件。你也可以加上(一般这么做)-fPIC (不是必需的,只是保证二进制在solaris上的可移植性,生成相对固定的符号指针)你还可以加上-soname <库内部名称>,该名称被动态连接器用来运行时查找这个库,而不是用编译时用-o指定的文件名来找这个库。.a 是静态库,由 ar 打包 .o 对象文件得到;.so 是 shared object 也是动态库,由 gcc -shared 编译得到。

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -