dllの作り方
dllになる方のソース
int foo(int x){ return x+1; }
dll,def,aを一気に作成
インポートライブラリのファイル名をlibfoo.aにしているのは、gccの-lオプションのため。
出来たdllのサイズは6KBくらい。
> gcc -shared -o foo.dll foo.c -Wl,--output-def,foo.def,--out-implib,libfoo.a
本体の方のソース
#include<stdio.h> int foo(int); main(){ printf("%d\n",foo(1)); }
本体のコンパイル
> gcc main.c -L. -lfoo
生成されたfoo.defの中身
EXPORTS DllMainCRTStartup@12 @1 __do_global_ctors @2 __do_global_dtors @3 __main @4 atexit @5 foo @6