AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Qt statisch linken?

Ein Thema von cookie22 · begonnen am 19. Aug 2013 · letzter Beitrag vom 26. Mär 2020
 
DualCoreCpu
(Gast)

n/a Beiträge
 
#11

AW: Qt statisch linken?

  Alt 25. Mär 2020, 10:40
Zitat:
Wie funktioniert so ein statischer Import?
Vermutlich gar nicht, ich kenne mich mit dem QT-Linker jetzt nicht aus,
aber es ist wohl sehr wahrscheinlich das die Binärcodes völlig inkompatibel sind.
Wenn schon VC und C++Builder nicht zusammenpassen.

Ein Linken könnte vielleicht über einen kleinen Wrapper auf die QT-"Dll" gemacht werden.

Du schreibst von Linux/Macos zu EXE, also vermischt Du hier Windows/Linux ?
Ich vermute mal das es dann nicht um "DLL" sondern um .so/.dylib geht.
Ich frage, weil ich mehrere statische Bibliotheken in ein Freepascal Projekt einbinden will. Das Projekt soll OpenSource werden, die Bibliotheken sind auch alle OpenSource und sollen dann im Projekt mitgeliefert werden. Aufrufkonvention ist stdcall. Ich weiß, dass die Syntax für die external Deklaration sich für statische Bibliotheken von der bei DLLs unterscheidet. Biher werden meine Bibliotheken nicht gefunden, obwohl ich den Bibliothekspfad korrekt angegeben habe, sicherheitshalber die Bibliotheken nochmals in das BIN Verzeichnis von Freepascal und nochmals in den Pfad meines Projektes kopiert habe. Ich habe nun die gemagelten Namen aus den Bibliotheken mit vorangestelltem Unterstrich und der Bytezahl der übergebenen Parameter hinter external geschrieben. Wie stelle ich nun sicher, dass das statische Linken auch jederzeit funktioniert. Ich nutze Freepascal 3.0.4. Objektformat ist COFF.

Delphi-Quellcode:
function MyLibfunc(Param: Longint): Boolean;
  stdcall; external name '_MyLibfunc@4';
Wenn ich ...external name 'MyLibfunc' schreibe, wird die Bibliothek nicht gefunden, also muss es neben den gemangleten Namen noch was anderes sein, was das Linken fehlschlagen lässt. Aber was?

In der IDE habe ich statisches Linken eingestellt.

.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz