Rpy und py2exe

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
The Spirit
User
Beiträge: 276
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

Hi.
Ich versuche gerade mit py2exe aus meinem Programm eine exe zu bauen.
Dies funktioniert auch einwandfrei.
Benutze ich jetzt jedoch rpy, dann "kompiliert" er zwar alles ohne fehler aber die Ausführung geht dann nicht.
Ich habe dazu auch schon alles bezüglich rpy aus meinem Code zu testzwecken auskommentiert und die dann erzeugte exe läuft einwandfrei.
Als fehlermeldung mit importiertem rpy kommt folgendes:

Code: Alles auswählen

RuntimeError: No module named _rpy2070

      RPy module can not be imported. Please check if your rpy
      installation supports R 2.7.0. If you have multiple R versions
      installed
Lasse ich den python code jedoch so laufen, findet er alles. Auch die spezielle datei liegt im ordner site-packages von python 2.5.x.

Habe nun versucht, das setup file für py2exe anzupassen und es sieht aktuell wie folgt aus:

Code: Alles auswählen

from distutils.core import setup
import py2exe
from rpy import *
import sys
sys.argv.append("py2exe")

setup( windows = ['main_wx.py'],
options = { "py2exe":
					{ "packages": "rpy", } } )
Jedoch funktioniert es noch immer nicht.
Hat hier vielleicht jemand ne idee?
Thx
Zuletzt geändert von The Spirit am Mittwoch 19. August 2009, 09:45, insgesamt 1-mal geändert.
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Warum importierst du denn ``rpy`` im setup? oO

Ist rpy, denn auch ein Package, andernfalls ist es unter ``includes`` besser aufgehoben? Daneben kannst du mal die Option ``"includes" : "_rpy2070"`` testen.
The Spirit
User
Beiträge: 276
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

danke für die tips.
hab jetzt mal so umgebaut

Code: Alles auswählen

from distutils.core import setup
import py2exe


setup( windows = ['main_wx.py'],
options = { "py2exe":
					{ "packages": "rpy", "includes": "rpy"} } )
Jedoch geht es noch immer nicht.
Hänge ich bei den incluse noch "_rpy2070" mit rein bekomme ich während des py2exe machens einen error, das er dir R.dll nicht finden kann.
Die Datei ist selber keine DLL sonder sieht so aus

Code: Alles auswählen

_rpy2070.pyd
The Spirit
User
Beiträge: 276
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

juhu, es klappt.
hab jetzt einfach mal die ganzen dll´s von R in den ordner site-packages von python 2.5.x geworfen.
danach lies es sich auch kompilieren.
nochmal danke für den tip mit includes im setup.py script
Antworten