Napravi u MSVC-u prazan Win32 DLL projekat.
U CPP-u napisi funkciju koji zelis da exportujes kao npr:
Code:
extern "C" __declspec(dllexport) int NekaFunkcija(int a, int b)
{
return a+b;
}
Obrati paznju na
extern "C". To znaci da se forsira komajleru da generise _cdecl nacin pozivanja funkcije. Moguce je da to zasmeta fortranu pa ono "C" promeni u _stdcall ili _pascal ili nesto trece. Samo vodi racuna da ce ime funkcije biti modifikovano (kompajler ce dodati _ pre i @nesto posle imena) ako poziv funkcije nije _cdecl (tj. "C").
Kada prevedes projekat, dobices DLL u kome se nalazi exportovana tvoja funkcija.
Mozes je videti koriscenjem programa Dependency viewer (Depends.exe) koji dolazi uz MSVC.
E sada dolazi na red Fortran:
Fortran generalno ne podrzava rad sa DLL-ovima. Zato su proizvodjaci svaki na svoj nacin napravili resenje za ucitavanje DLL-a. U zavisnosti koji fortran kompajler koristis potrazi na googlu kako se ucitava DLL. Ima dosta primera ( [url]http://math.cl.uh.edu/~thompsonla/5537/call_c_fortran_splus.html[/url] )
yooyo