Hallo Zusammen,
ich versuche gerade das Library "libGeographic.so" einzubinden, aber ohne Erfolg! Ich habe es bereits statisch und dynamisch probiert, entweder crashed das Programm, oder ich lande bei einem Link-Fehler!
Hier das Beispiel aus dem Original-Packet:
MGRS::Reverse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int&, bool&, double&, double&, int&, bool)
{
// Sample reverse calculation
string mgrs = "38SMB4488";
int zone, prec;
bool northp;
double x, y;
MGRS::Reverse(mgrs, zone, northp, x, y, prec);
double lat, lon;
UTMUPS::Reverse(zone, northp, x, y, lat, lon);
cout << prec << " " << lat << " " << lon << "\n";
}
Ergebnis meines Test (Siehe Anhang):
loadlibrary OK
Funktion nicht gefunden
Vielen Dank für eure Unterstützung
BerLin
Mein System aktuelles OpenLeap 15.2
lib libGeographic.so einbinden
lib libGeographic.so einbinden
- Dateianhänge
-
- u_main.pas
- (1.57 KiB) 123-mal heruntergeladen
Re: lib libGeographic.so einbinden
Ist das eine C++ Lib?
Dann brauchst du wohl einen Wrapper.
ftp://ftp.freepascal.org/fpc/docs-pdf/CinFreePascal.pdf
Dann brauchst du wohl einen Wrapper.
ftp://ftp.freepascal.org/fpc/docs-pdf/CinFreePascal.pdf
-
- Beiträge: 955
- Registriert: Mi 3. Jun 2020, 07:18
- OS, Lazarus, FPC: L 2.0.8, FPC Trunk, OS Win/Linux
- CPU-Target: Aarch64 bis Z80 ;)
- Wohnort: München
Re: lib libGeographic.so einbinden
Du kannst in FPC keinen C++ Code direkt ansprechen. Deine Verwendung von PChar für den std::string zum Beispiel ist komplett falsch. Wie theo sagt, musst du dir dafür einen Wrapper schreiben, der das C-kompatibel exportiert.BerLin hat geschrieben: Di 13. Apr 2021, 09:28 MGRS::Reverse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int&, bool&, double&, double&, int&, bool)
FPC Compiler Entwickler