oktatas:programozas:c:mingw_dll
Tartalomjegyzék
MingW DLL
DLL készítése Linux alatt
- Makefile
main.exe: main.c i586-mingw32msvc-gcc -o main.exe main.c kiir.dll
- kiir.h
void ir(void);
#include <stdio.h> #include "kiir.h" void ir() { printf("Helló Világ\n"); }
A dll fordítása (Linux alatt):
sudo apt-get install mingw32 i586-mingw32msvc-gcc -c kiir.c i586-mingw32msvc-gcc -shared -o kiir.dll kiir.o
A DLL használata:
- main.c
#include <stdio.h> main() { ir(); }
Még egyszer
Az alábbiak Windowson MinGW32 fordítóval működnek.
A DLL létrehozása
- sajat.c
__declspec(dllexport) int __cdecl dupla(int szam) { return 2 * szam; }
- Makefile
sajat.dll: sajat.c gcc -c -o sajat.o sajat.c gcc -o sajat.dll -s -shared sajat.o -Wl,--subsystem,windows
A DLL felhasználása
- main.c
#include <stdlib.h> #include <stdio.h> __declspec(dllimport) int __cdecl dupla(int szam); int main(int argc, char** argv) { printf("%d\n", dupla(6)); return EXIT_SUCCESS; }
- Makefile
main.exe: main.c gcc -c -o main.o main.c gcc -o main.exe -s -L. -lsajat main.o
A -s kapcsoló a szimbólumtábla törlésére ad utasítást. A -L. kapcsolóval megmondjuk, hogy a -l kapcsoló után megadott állományt, az aktuális könyvtárban kell keresni.
Linkek
oktatas/programozas/c/mingw_dll.txt · Utolsó módosítás: 2019/08/21 18:35 szerkesztette: admin