Seite 1 von 1

template namensgebung von libs overriden

Verfasst: 22. Januar 2009 18:25
von PhilippM
Servus,

ich erstelle dynamische Bibliotheken, die als Plugin in ein anderes Programm kommen und da eine andere Endung haben.
Unter windows habe ich qmake schon beigebracht, dass er das binary bitteschön xxx.xpl nennen soll und nicht xxx.dll
Aber unter Linux nennt er es immer libxxx.xpl.so.1.0.0 und erstellt noch drei Symlinks...
Habe TARGET_EXT und TARGET_X.Y.Z gesetzt im .pro-file aber es wird ignoriert. Desgleichen auf dem Mac. Hab ich ne andere Chance als von hand im Makefile rumzufuchteln?

Gruß,
Phil

Verfasst: 22. Januar 2009 19:20
von solarix
Aber unter Linux nennt er es immer libxxx.xpl.so.1.0.0 und erstellt noch drei Symlinks..
da fehlt vermutlich noch ein "CONFIG += plugin" in der Profile..
die als Plugin in ein anderes Programm kommen und da eine andere Endung haben.
Davon halte ich zwar nichts (Standards sind IMHO _nicht_ da, um gebrochen zu werden), aber solltest du das tatsächlich wollen/müssen und auch keine QMAKE-Variabel dafuer finden, koenntest du ein eigenes Target hinzufuegen ("install" oder ein "QMAKE_EXTRA_UNIX_TARGETS += ....") und dort das Ergebnis umbenennen... ("make install" oder "make plugin")..

Verfasst: 22. Januar 2009 20:32
von PhilippM
Das mit dem CONFIG+= plugin war ein guter Tipp, danke. Jetzt sind zumindest die symlinks weg. Aber er schreibt mit immer noch lib davor und ein .so dahinter. Wie kann ich das noch umgehen?
QMAKE_EXTRA_UNIX_TARGETS gibt'S laut Qt-Referenz nicht.