cairo und pycairo Problem

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
iclou
User
Beiträge: 4
Registriert: Montag 26. November 2007, 07:03

Hallo

Ich habe die folgende Konfiguration under suse 9.3

python 2.4
cairo 1.4.10
pycairo 1.4.0

Wenn ich python -c 'import cairo' aufrufe, erhalte ich den folgenden Fehler:

Traceback (most recent call last):
File "<string>", line 1, in ?
File "/usr/lib/python2.4/site-packages/cairo/__init__.py", line 1, in ?
from _cairo import *
ImportError: /usr/lib/python2.4/site-packages/cairo/_cairo.so: undefined symbol: cairo_pdf_surface_set_dpi

Kann mir jemand hier helfen, das zu korrigieren?

--
Vielen Dank für jeglichen Tipp
Mike
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Hallo Mike, willkommen im Forum,

Die `/usr/lib/python2.4/site-packages/cairo/_cairo.so` ist nicht gegen die richtige cairo-Version gelinkt, das ABI scheint sich geändert zu haben. Wenn du das über eine Binär-Distribution bekommen hast, ist das ein Bug. Neukompilieren löst das Problem aber (das hat man manchmal bei Gentoo).
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
iclou
User
Beiträge: 4
Registriert: Montag 26. November 2007, 07:03

Hallo!

Vielen Dank für die nette Begrüssung!
Ich hatte cairo und pycairo durch configure/make/make install installiert. Python durch binary install.

Muss ich denn Python auch neu compilieren, oder wie kann ich das sonst lösen?

--
Danke für jegliche Hilfe.
Grüsse
Mike
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

iclou hat geschrieben:Ich hatte cairo und pycairo durch configure/make/make install installiert. Python durch binary install.
Komisch, sowas sollte eigentlich nicht passieren, denn die Fehlermeldung sagt eigentlich, dass das ABI von pycairo nicht zum ABI von cairo passt.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
iclou
User
Beiträge: 4
Registriert: Montag 26. November 2007, 07:03

Ich hatte nun cairo und pycairo de-installiert und hatte dann noch eine alte cairo Version installiert - diese habe ich nun auch de-installiert.

Dann habe ich nochmals cairo und pycairo installiert. Nach dem make von cairo habe ich make check gemacht und da sieht alles gut aus.

Wenn ich aber python -c 'import cairo' mache, dann erhalte ich den folgenden Fehler:

Traceback (most recent call last):
File "<string>", line 1, in ?
ImportError: No module named cairo

Wenn mir da jemand helfen kann, dann wäre ich echt dankbar!
Gruss
Mike
iclou
User
Beiträge: 4
Registriert: Montag 26. November 2007, 07:03

Cairo ist in einem anderen directory installiert worden - ich habe nun das cairo dir einfach an das richtige Ort kopiert und nun läuft alles.

Trotzdem habe ich 2 Fragen:
1) Hat das manuell kopieren Konsequenzen

2) Warum wird das nicht im standard Pfad installiert?

--
Danke jedenfalls für die Hilfe
Mike
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

iclou hat geschrieben:1) Hat das manuell kopieren Konsequenzen
Sofern es gefunden wird - nein.
iclou hat geschrieben:2) Warum wird das nicht im standard Pfad installiert?
Weil es einen anderen Default-Pfad hat? In autoconf-basierten Skripten kannst du `--prefix` angeben. Und Python-Module nutzen meist für die Installation `distutils`, die kümmern sich normalerweise darum, dass alles im richtigen Ordner landet.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten