生成动态库
gcc -c -fPIC mylib_1.c -o mylib_1.o
gcc -c -fPIC mylib_2.c -o mylib_2.o
gcc -shared ./mylib_1.o ./mylib_2.o -o libmylib.so
方法二:一条命令合并编译和打包
gcc -shared -fPIC mylib_1.c mylib_2.c -o libmylib.so
生成静态库
方法一:先编译后打包
gcc -c mylib_1.c -o mylib_1.o
gcc -c mylib_2.c -o mylib_2.o
ar rsc libmylib.a ./mylib_1.o ./mylib_2.o
方法二:一条命令合并编译和打包
无
添加链接搜索路径
export LD_LIBRARY_PATH = ${LD_LIBRARY_PATH}:/home/mylibpath
在64位系统上编译生成32位二进制结果
gcc -m32 1.c -o 1
同理 -m64 可以用来指定生成64位二进制结果。
常见报错解决错误:
fatal error: bits/libc-header-start.h: No such file or directory
sudo apt-get install gcc-multilib
fatal error: bits/c++config.h: No such file or directory
sudo apt-get install g++-multilib