Shared Library - Export/Import Symbole

Alles rund um die Programmierung mit Qt
Antworten
jumpfunky
Beiträge: 3
Registriert: 4. Juni 2012 10:02

Shared Library - Export/Import Symbole

Beitrag von jumpfunky »

Hallo zusammen,

ich entwickle eine Anwendung, die durch Plugins in Form von Shared Librarys erweitert werden kann. Als ich damals damit begonnen habe, hatte ich Probleme damit, das einige Methoden nicht gefunden werden konnten. Daraufhin habe ich diese Anleitung http://qt-project.org/doc/qt-4.8/sharedlibrary.html befolgt und alles funktionierte.

Bisher habe ich dieses Makro in jeder Klassendefinition innerhalb eines Plugins verwendet. Eigentlich sollte das ja nicht notwendig sein, sondern nur in den Klassen, wo tatsächlich Qt eingesetzt wird. Wie auch immer: Ich habe nun einfach alle Makros entfernt und wollte Sie nacheinander wieder hinzufügen, um zu sehen, welche Klassen nun tatsächlich das Marko benötigen. Nun läuft das Plugin aber überraschender Weise ohne irgend ein Marko. Daher meine Frage:

Benötigt man diese Makros noch? Ist die obige Seite evtl. nicht aktuell?

Viele Grüße
Thorsten

Edit: Vielleicht ist es noch wichtig, welchen Compiler ich nutze: GCC 4.6
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Shared Library - Export/Import Symbole

Beitrag von Christian81 »

Ein Plugin benötigt keine Exports bzw. genauer - beim Plugin muss nur die Einsprungfunktion exportiert werden. Die Doku geht ja auch über Shared Libraries und nicht Plugins!.
Und unter Linux ist die default Visibility sowieso 'visible' - d.h. alle Symbole sind auch extern sichtbar. Und mit Qt-Klassen hat das auch nichts zu tun...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
jumpfunky
Beiträge: 3
Registriert: 4. Juni 2012 10:02

Re: Shared Library - Export/Import Symbole

Beitrag von jumpfunky »

Hallo Christian,
vielen Dank schonmal für deine Antwort.

Ich benutze keine Plugins im Sinne von:
http://qt-project.org/doc/qt-4.8/plugins-howto.html

Kurz zur Architektur:
Ich erstelle Shared-Librarys die unter anderem einen QT-Dialog beinhalten, die aus der Shared-Library heraus gestartet werden. Die Library bietet eine Extern-C-Methode an, die ich als Einstiegspunkt verwende.

Ich benötige dennoch kein Symbol Import/Export?

Grüße
Thorsten
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Shared Library - Export/Import Symbole

Beitrag von Christian81 »

Also ein Plugin - Du hat eine Methode die Du per extern exportierst, also nach außen hin sichtbar ist.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
jumpfunky
Beiträge: 3
Registriert: 4. Juni 2012 10:02

Re: Shared Library - Export/Import Symbole

Beitrag von jumpfunky »

Gut, dann kann ich die Makros wohl entfernen.

Danke!

Gruß
Thorsten
Antworten