weinford
Aktives Mitglied
Thread Starter
- Dabei seit
- 24.01.2004
- Beiträge
- 398
- Reaktionspunkte
- 0
Moin, früher hatte ich immer mit den Rechten Probleme (wegen meiner langen Haare), heute klappts nicht mit dem Linken (von Programmen)
Aaaalso,
ich versuche schon seit geraumer Zeit, das Programm SIM unter OSX zum Laufen zu bringen. Das ist ein Multiprotocol ICQ/AIM/MSN-Clone, den ich mit großer Freude schon unter Linux und Windows benutzt habe. Das Ding benutzt QT als GUI-Bibliothek. Auf ihrer Homepage http://sim-icq.sf.net behaupten die Enbtwickler auch, daß das Programm unter OSX läuft, allein ich schaffe es nicht, es zum Laufen zu bekommen (weder den 0.9.2er release, noch das aktuelle CVS).
Nach einigem Tweaken (eines der plugins aus dem makefile entfernt, weil das nicht richtig kompilierte, und das hinzufügen von .dylib als extension für dynamische Libraries in ./libtool, siehe sim-Foren) habe ich es geschafft, daß make durchläuft, aber wenn ich das Programm dann starten will, behauptet es:
baier@pubber:~/cvs/sim $ sim
17:40:09 [ERR] Can't access /usr/local/lib/sim or directory contains no plugins!
baier@pubber:~/cvs/sim $
Das Verzeichnis gibt es aber, und lesbar ist es auch, und lauter *.a Dateien sind auch drin, mit namen der plugins. Allerdings gibts sowohl bei make als auch bei make install schon Fehlermeldungen und Warnungen:
*** Warning: This system can not link to static lib archive ../../sim/api/libsimapi.la.
*** I have the capability to make that library automatically link in when
*** you link to this library. But I can only do this if you have a
*** shared version of the library, which you do not appear to have.
*** But as you try to build a module library, libtool will still create
*** a static module, that should work as long as the dlopening application
*** is linked with the -dlopen flag to resolve symbols at runtime.
und dann
ranlib: file: .libs/__homedir.a(__homedir_la_meta_unload.o) has no symbols
, die ranlib Meldung gitbs bei make install dann wieder.
Ich werd da leider nicht schlau draus. Unter Linux hatte ich solche Probleme nie.
Fragen:
Was ist die dlopening application, und wie kann ich sie mit -dlopen linken? Wie kann ich ../../sim/api/libsimapi.la dynamisch erstellen, wenn ich ./configure --enable-shared angebe, passiert auch nichts anderes. Hat das ganze was mit prebinding zu tun, muß ich da noch irgendeinen Prozeß anschmeissen?
Jede Hilfe ist willkommen =)
Grüße,
Toby
EDIT: Die warnings gibt es bei jedem Plugin, das kompiliert wird, nicht nur bei __homedir.
Aaaalso,
ich versuche schon seit geraumer Zeit, das Programm SIM unter OSX zum Laufen zu bringen. Das ist ein Multiprotocol ICQ/AIM/MSN-Clone, den ich mit großer Freude schon unter Linux und Windows benutzt habe. Das Ding benutzt QT als GUI-Bibliothek. Auf ihrer Homepage http://sim-icq.sf.net behaupten die Enbtwickler auch, daß das Programm unter OSX läuft, allein ich schaffe es nicht, es zum Laufen zu bekommen (weder den 0.9.2er release, noch das aktuelle CVS).
Nach einigem Tweaken (eines der plugins aus dem makefile entfernt, weil das nicht richtig kompilierte, und das hinzufügen von .dylib als extension für dynamische Libraries in ./libtool, siehe sim-Foren) habe ich es geschafft, daß make durchläuft, aber wenn ich das Programm dann starten will, behauptet es:
baier@pubber:~/cvs/sim $ sim
17:40:09 [ERR] Can't access /usr/local/lib/sim or directory contains no plugins!
baier@pubber:~/cvs/sim $
Das Verzeichnis gibt es aber, und lesbar ist es auch, und lauter *.a Dateien sind auch drin, mit namen der plugins. Allerdings gibts sowohl bei make als auch bei make install schon Fehlermeldungen und Warnungen:
*** Warning: This system can not link to static lib archive ../../sim/api/libsimapi.la.
*** I have the capability to make that library automatically link in when
*** you link to this library. But I can only do this if you have a
*** shared version of the library, which you do not appear to have.
*** But as you try to build a module library, libtool will still create
*** a static module, that should work as long as the dlopening application
*** is linked with the -dlopen flag to resolve symbols at runtime.
und dann
ranlib: file: .libs/__homedir.a(__homedir_la_meta_unload.o) has no symbols
, die ranlib Meldung gitbs bei make install dann wieder.
Ich werd da leider nicht schlau draus. Unter Linux hatte ich solche Probleme nie.
Fragen:
Was ist die dlopening application, und wie kann ich sie mit -dlopen linken? Wie kann ich ../../sim/api/libsimapi.la dynamisch erstellen, wenn ich ./configure --enable-shared angebe, passiert auch nichts anderes. Hat das ganze was mit prebinding zu tun, muß ich da noch irgendeinen Prozeß anschmeissen?
Jede Hilfe ist willkommen =)
Grüße,
Toby
EDIT: Die warnings gibt es bei jedem Plugin, das kompiliert wird, nicht nur bei __homedir.
Zuletzt bearbeitet: