1.打包dll:在当前目录下,在终端下执行下面两句:
gcc -c hello.c -o hello.o -fpic
gcc hello.o -o hello.dll -shared
打包lib:在当前目录下,在终端下执行下面语句:
gcc -c myMath.c -o myMath.o -static
ar -crus libmymath1.lib myMath.o
2.main.c中引用动态库hello.dll
main中内容如下:
#include <stdio.h>
#include"hello.h"
int main(){
helloworld();
return 0;
}
3.编译,链接(如果库不多,只有一个,单文件就不写Makefile了,直接使用gcc命令即可。 库多的情况用makefile)
(1)对于lib:
编辑完main后,终端执行如下命令(单目录):
gcc -c main.c -o main.o
gcc main.o -L. -lhello -o main.exe
编辑完main后,终端执行如下命令(多目录,-I参数是用来指定头文件目录,表明include文件夹为目录):
gcc -c src/main.c -o obj/main.o -I include
gcc main.o -L./lib -llibmymath1 -o bin/main.exe
(2)对于dll:
和lib同理
版权归原作者 拉丁 liang 所有, 如有侵权,请联系我们删除。