Extra python modules in FreeCAD für Windows (7) bringt mich zur Verzweiflung: http://www.freecadweb.org/wiki/index.php?title=Extra_python_modules#Windows_3 Wie bringt man denn FreeCAD pyCollada bei ?? Bin leider weder "Experte" für FreeCAD und schon gar nicht für python. Was ist zu tun?
null plan schrieb: > Bin leider weder "Experte" für FreeCAD und schon gar nicht für python. ... und ich leider kein Experte für Windows :) Ich würde es folgendermaßen versuchen: Die Datei pycollada-x.y.z-tar.gz hier herunterladen: https://pypi.python.org/pypi/pycollada/ Auspacken (sollte auch mit WinZip gehen, falls du kein tar hast). Unter den ausgepackten Dateien gibt es ein Installationsskript namens setup.py, das die mit folgendem Befehl startest:
1 | python setup.py install |
Ist python.exe nicht in einem in der PATH-Variablen aufgeführten Verzeichnisse, musst du es als absoluten Pfad angeben. Wenn das nicht funktioniert, musst du warten, bis ein Windows-Experte des Weges kommt :)
> python setup.py install
Leider alles schon probiert ohne Erfolg. Ich hab mich schon mal vor
einiger Zeit an dem Mist stundenlang abgearbeitet und dann irgendwann
frustriert hingeworfen. Beim ersten mal bin ich vom Hölzchen aufs
Stöckchen gekommen, soll heißen, fing damit an python zu installieren.
Nur welches? v2.6 v2.7 3er Version? (FreeCAD nutzt 2.6 selbst in der
BEta 0.14) Irgendwann hatte ich 2.7 installiert. Das war noch die
einfachste Übung. Dann wollte er plötzlich Zusatzpakete wie numpy,
matplotlib und andere. Finde die erstmal als jemand der python bisher
nicht angepackt hat - eine Suchorgie. Dann meinte er setuptools würden
fehlen. Was für setuptools? OK, auch die hab ich irgendwann gefunden.
Zudem kommen die ganzen Pfadprobleme unter Win hinzu. Irgendwann hab ich
ihn dann einfach unter C:\python27 installieren lassen, was ja auch
nicht Sinn der Sache von Sicherheit sein sollte. FreeCAD schweigt sich
zur Windows installation von pycollada völlig aus
" Windows
To Be Documented "
Ja toll!! :( Ich wollte auf die schnelle auch kein Python lernen,
sondern nur ein schnödes Modul FreCAD hinzufügen. FreeCAD ist sowieso
eines der schlimmsten OS Programme hinsichtlich der Bedingung die ich
kenne. Eine Zumutung ist das. Nichtmal das Undo funktioniert richtig.
Absturzsicherheit um Welten verfehlt. Das Problem ist, es ist keine OS
vorhanden, die mir die Lücke füllt zwischen Sketchup (ein phantastisches
Werkzeug) und einem für meine Zwecke nutzbaren 3D-Format, bei dem ich
die Farbinformation ohne Konversionskrampf über zig Ecken in mein
Ausgangs 3D-Modell bekomme. Sketchup könnte das zwar in der Pro Version,
aber eben nur für 500 Euro. Nur eben nicht in der Freeware. Da kennt es
nur ein umfängliches 3D-Exportformat, nämlich dae (collada) und das
weiterzuverarbeiten führt zu neuen Problemen mit anderen Tools. Mit
Blender geht zwar auch was, aber das ist auch nicht viel besser als
FreeCAD zu verwenden und bedeutet umfangreiche Einarbeitung, nur für ein
paar Konversionen. Mir reicht schon Wings3D, für das ich sehr viel Zeit
investieren musste und wenn mans nicht dauernt bedient vergisst man
schnell wieder die trickreiche Bedienung.
Zurück zu python. Ich hab es zwar geschafft einmal einen
Compiliervorgang (ich nenn's mal so) anzustoßen, aber das Ergebnis war
kein fertiges Modul, sondern ein Verzeichnis
setuptools-0.6c11-py2.6.egg-info
mit
dependency_links.txt
entry_points.txt
PKG-INFO
SOURCES.txt
top_level.txt
zip-safe
Sagt mir gar nichts, aber was es mir sagt ist, 13 kBytes insgesamt kann
nicht das fertige Modul sein :).
Irgendwas mit ".pyc" müsste wohl heraus kommen oder?
Im moment geb' ich's (mal wieder) auf und verbuche es unter "OS
Erfahrung" der schlechten Seite.
Einer hat wohl das gleiche Dilemma gehabt und hat im FreeCAD Forum
nachgefragt und gleich eine Abfuhr abbekommen, so nach dem Motto,
"benutzt hier keiner". Irgendwie auch typisch. Naja.
Warum FreeCAD damit wirbt, aber so vieles im Unklaren lässt ist mir
völlig unverständlich. Was mir immer wieder auffällt ist, grundlegende
intuitive Bedienweisen werden völlig vernachlässigt, dafür lieber alle
möglichen halbgaren Gimmicks hinzugefügt und die Programme verharren
eine gefühlte Ewigkeit im halbfertigen, instabilen Zustand.
Vielen Dank einstweilen für deine Anteilnahme.
1. Alle alten Pythonversionen löschen und Python 3.4.1 installieren, das bringt pip mit (endlich!) 2. In der Kommandozeile eingeben: pip install pycollada 3. Glücklich sein
Hi, unter https://pypi.python.org/pypi/setuptools#windows-7-or-graphical-install findest Du eine Installationsanleitung für die Setuptools unter Windows7, die im Wesentlichen daraus bestehen, das Skript https://bootstrap.pypa.io/ez_setup.py herunterzuladen und es auf Deinem Windows-System auszuführen. Das Skript sollte dann die Setuptools automatisch herunterladen und installieren. Danach solltest Du mit dem Skript easy_install aus den Setuptools nacheinander die Pakete lxml, numpy, dateutil und collada installieren können:
1 | easy_install lxml |
2 | easy_install numpy |
3 | easy_install dateutil |
4 | easy_install collada |
Da ich kein Windows7 habe, kann ich das hier leider nicht ausprobieren. HTH, Karl
Kaj (Gast) schrieb: > 1. Alle alten Pythonversionen löschen und Python 3.4.1 installieren, das > bringt pip mit (endlich!) gesagt, getan > 2. In der Kommandozeile eingeben: pip install pycollada gesagt, getan > 3. Glücklich sein gesagt, getan pip install pycollada ^ Syntax Error: invalid syntax
null plan schrieb: > pip install pycollada > ^ > Syntax Error: invalid syntax Dann stimmt was mit deiner Installation nicht, denn die Syntax ist exakt so richtig. Ist Python richtig in PATH eingetragen? C:\>pip install pycollada So muss das aussehen, und so ist die Syntax auch richtig
> Da ich kein Windows7 habe, kann ich das hier leider nicht ausprobieren.
Das ist das Problem. So macht das keinen Sinn. Das ganze geskripte das
auf eurem Linux wie erwartet seinen Dienst tut läuft so einfach nicht.
lxml, numpy, dateutil hatte ich bereits vorher schon drauf, als
ordentliche Windows Setup.exe Programme. Damit gab's soweit auch keine
Probleme. Easy_install.exe ist vorhanden. Nur lässt sich damit weder
lxml installieren (er findet angeblich eine XML .h Datei vom VC nicht)
noch lässt sich damit numpy installieren.
Nur mal ein Ausschnitt der Fehlermeldungen:
C:\work\Python34\lib\distutils\dist.py:260: UserWarning: Unknown
distribution option: 'define_macros'
warnings.warn(msg)
Could not locate executable g77
Could not locate executable f77
Could not locate executable ifort
Could not locate executable ifl
Could not locate executable f90
Could not locate executable DF
Could not locate executable efl
Could not locate executable gfortran
Could not locate executable f95
Could not locate executable g95
Could not locate executable efort
Could not locate executable efc
don't know how to compile Fortran code on platform 'nt'
_configtest.exe.manifest : general error c1010070: Failed to load and
parse the manifest. Das System kann die angegebene
Datei nicht finden.
Traceback (most recent call last):
File "C:\work\Python34\lib\runpy.py", line 170, in _run_module_as_main
"__main__", mod_spec)
File "C:\work\Python34\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\work\Python34\Scripts\easy_install.exe\__main__.py", line 9,
in <module>
File
"C:\work\Python34\lib\site-packages\setuptools\command\easy_install.py",
line 1909, in main
with_ei_usage(lambda:
File
"C:\work\Python34\lib\site-packages\setuptools\command\easy_install.py",
line 1896, in with_ei_usage
return f()
File
"C:\work\Python34\lib\site-packages\setuptools\command\easy_install.py",
line 1913, in <lambda>
distclass=DistributionWithoutHelpCommands, **kw
-----
Ich hab keine Lust auf so eine Orgie von Fehlerbüscheln.
Und ich hab auch keine Lust mir hier allenmöglichen Kram wie Fortran
Zeugs und weiß der Geier was zu installieren, nach dem Motto .. und noch
'n Paket und noch 'n Paket und ..
Alles um ein blödes kleines Modul zu übersetzen. Das ist vollkommen
verrückt, aber die Erfahrung macht man, wenn man sich den Linux
Skriptkram auf den Windows Rechner holt.
Hallo, null plan schrieb: >> Da ich kein Windows7 habe, kann ich das hier leider nicht ausprobieren. > > Das ist das Problem. So macht das keinen Sinn. Das ganze geskripte das > auf eurem Linux wie erwartet seinen Dienst tut läuft so einfach nicht. Wenn Du es richtig machst, funktioniert es gemeinhin auch unter Windows ganz gut. > lxml, numpy, dateutil hatte ich bereits vorher schon drauf, als > ordentliche Windows Setup.exe Programme. Damit gab's soweit auch keine > Probleme. Easy_install.exe ist vorhanden. .exe-Dateien? Merkwürdig. Was ist denn das für ein Python? > Ich hab keine Lust auf so eine Orgie von Fehlerbüscheln. Dafür bist Du aber selbst verantwortlich. Natürlich könnte Python einfach "Das Modul KlausDieter hat eine Ausnahme festgestellt und wird beendet. Bitte fragen Sie den Systemadministrator." ausgeben. Aber "Fehlerbüschel" haben häufig den Vorteil, daß man Fehler analysieren und dann beheben kann. Bitte entscheide Dich, ob Du Dich beschweren, oder ob Du Hilfe willst. Einfach wild immer mehr Python-Versionen womöglich aus verschiedenen Quellen übereinander zu installieren, ist sicherlich keine gute Idee. Liebe Grüße, Karl
Karl Käfer schrieb: > .exe-Dateien? Merkwürdig. Was ist denn das für ein Python? Fuer Python unter Windows gibt es einige Pakete als .exe-Installer, weil der gemeine Windows-Benutzer sonst nicht weiss wie er das Paket installieren soll... willkommen in der klickibunti-windowswelt null plan schrieb: > Alles um ein blödes kleines Modul zu übersetzen. Das ist vollkommen > verrückt, aber die Erfahrung macht man, wenn man sich den Linux > Skriptkram auf den Windows Rechner holt. Unter Linux bemuehe ich meine Paketverwaltung, und die Installiert das alles da hin wo es hin soll, und dann funktioniert das auch alles sauber. Windows ist an dieser stelle das Problem und nicht der "Linux Scriptkram"... Ich geb dir den Tipp: Mach es einmal ordentlich! 1. Alle Pythoninstallationen deinstallieren! 2. Verbleibene Pythonordner loeschen! 3. Die einzige .exe-Datei die du benutzt ist diese! (https://www.python.org/ftp/python/3.4.1/python-3.4.1.msi) Die Version 3.4.1 bringt pip mit! pip macht das gleiche wie easy_install, ist aber gleich mit bei! easy_install brauchst du also nicht! Du musst nur die Pythonversion runterladen und installieren. Achte bei der Installation darauf das Python in PATH eingetragen wird. vorher vielleicht noch mal in PATH reinschauen und alte Pythonversion daraus loeschen, falls die noch drin stehen. um zu pruefen ob pip funktioniert kannst du gerne einfach mal pyserial installieren. C:\>pip install pyserial Wenn dabei Fehlermeldungen auftauchen, hier posten und dann sehen wir weiter. Wenn das alles geklappt hat dann einfach: Kaj schrieb: > C:\>pip install pycollada Wenn dabei Fehlermeldungen kommen, hier posten. null plan schrieb: > Nur mal ein Ausschnitt der Fehlermeldungen: Das zeigt schon das da was ganz anderes nicht stimmt. Das kommt davon wenn man einfach alles moegliche installiert... null plan schrieb: > Und ich hab auch keine Lust mir hier allenmöglichen Kram wie Fortran > Zeugs und weiß der Geier was zu installieren, nach dem Motto .. und noch > 'n Paket und noch 'n Paket und .. Musst du auch gar nicht, denn darum kuemmert sich pip... Deine installation ist einfach fuer die Tonne! Nochmal alles neu machen, und keinen extra bullshit installieren, den du gar nicht brauchst, wie z.B. easy_install! null plan schrieb: > Das ist das Problem. So macht das keinen Sinn. Das ganze geskripte das > auf eurem Linux wie erwartet seinen Dienst tut läuft so einfach nicht. Doch, das funktioinert ganz wunderbar, auch unter Windows, wenn man es denn richtig macht, Forenbeitraege und Dokumentation richtig liest und es einfach mal so macht, wie es da steht... Wenn du diese Hilfe nicht willst, oder dir das zu anstrengend ist, dann lass die Finger von Computern...
FreeCad hat eine integrierte Python console (Version 2.6.2) und nutz nicht die Windows Python installation. Es finded auch normale Python Modul instllationen nicht. Das ist nötig, um mögliche Versionsprobleme zu vermeiden (FreeCAD Python 2.6, Windows Python 3.0 --> crash) Versuche es in FreeCAD mal mit
1 | import sys |
2 | sys.path.append("C:\mein\Pfad\zu\Pycollada") |
und dann pycollada importieren. Natürlich wäre es gut eine Pycollada Version zu haben die auch für Python 2.6.2 gemacht ist.
Jetzt habe ich natürlich vergessen zu schreiben, wie FreeCAD es zum startzeitpunkt finden kann. Wenn du in der FreeCAD console folgendes Eingibst:
1 | import sys |
2 | print(sys.path) |
siehst du alle Ordner, in denen FreeCAD nach Python modulen sucht. Da sind unter anderem das FreeCAD bin und lib directory drin, aber auch dein in den Einstellugnen gewählten Macro-Ordner. In einen von denen kannst du pycollada rein installieren (oder kopieren) Alternativ: Du kannst FreeCAD beim starten zusaätzliche python pfade übergeben, führe einfach in cmd aus:
1 | FreeCAD -P"C:\mein\pfad\zu\collada" |
Also als Info für alle helfenden Geister Yalu, Kaj, Karl Käfer, Stefam es hatte gestern Nacht schon geklappt. Juchei! Ein wichtiger Hinweis war zunächst mal der Pfad zum Python Verzeichnis. Der war bei mir natürlich nach der Uminstallation zunächst zu v3.4 nicht mehr richtig (hatte ich vergessen anzupassen; die Installation hat mich natürlich nicht darauf hingewiesen. Ärgerlich.). Dann lief plötzlich 'import collada' erstmal unter Python 3.4 ohne Fehlermeldung. Nur lief damit trotzdem nicht das Modul in FreeCAD ohne Fehlermeldungen im Ausgabefenster. Mein Fehler war auch, ich wollte das collada-Verzeichnis aus Python 3.4 immer in den Verzeichnisbaum von FreeCAD kopieren (nur wohin genau, wenn man keinen Plan hat von Python?? ;)). Also zurück zu Python 2.6 und das WICHTIGSTE, fertig installierbare Exe-Pakete verwenden!! Also nicht Python überlassen sich alles mögliche herunterzuladen, um es zu kompilieren (sonst landet man bei Fortran Paketen und weiß der Geier was). Damit gab es nur Fehlermeldungen satt, trotz installiertem Visual C 2008 und 2010 (wahrscheinlich auch dort hauptsächlich ein Pfadproblem). Hier die Anleitung für Python unter Windows 7 (32-bit), die zum Erfolg führt python-2.6.6.msi installieren, gibt es hier: https://www.python.org/ftp/python/ Python habe ich bei mir aktuell unter C:\work\Python26 installiert (wollte den sicheren Weg gehen zunächst mal nicht unter 'C:\Program Files' zu installieren). Danach den Pfad für Windows 7 unter Sytemsteuerung Erweiterte Systemeinstellungen Umgebungsvariablen / Systemvariablen / Path mit ';C:\work\Python26' angehängt. Anschließend zunächst NEUSTART!! Zur Kontrolle, cmd im Windows Suchfeld eingeben, in Konsole 'path' tippen. Pfad am Ende vorhanden? Ja, dann alles OK. Jetzt kommen die weiteren Pakete dran. Dazu auf die phantastische Seite von Christoph Gohlke gehen (rieeesen Dank an diesen guten Geist!! Schon die Installation zeigt, da hat sich einer wirklich Gedanken gemacht. Perfekt!) http://www.lfd.uci.edu/~gohlke/pythonlibs/ numpy-MKL-1.8.1.win32-py2.6.exe lxml-3.3.5.win32-py2.6.exe python-dateutil-2.2.win32-py2.6.exe unittest2-0.5.1.win32-py2.6.exe setuptools-3.8.1.win32-py2.6.exe Die Pakete werden alle im Python-Verzeichnisstrang C:\work\Python26\Lib\site-packages installiert. Die Setuptools sind das Entscheidende, damit es einfach geht. Damit braucht man (nicht wie ich das andauernd tat) das collada Verzeichnis gar nicht selber manuell herunterladen. Python macht alles selber Vom Windows 7 Startmenü mit cmd eine Konsole öffnen (als ganz normaler user; die python shell braucht es hier nicht). Ich bin dann direkt ins Verzeichnis 'C:\work\Python26\Scripts' gewechselt und habe ein 'easy_install.exe pycollada' eingegeben. Dann .. ratter .. ratter .. Python lädt sich collada herunter und werkelt daran herum. Voila! Im Verzeichnis C:\work\Python26\Lib\site-packages befindet sich nun ein Ordner 'pycollada-0.4.1-py2.6.egg'. Darin sind zwei weitere Ordner 'collada' und 'EGG-INFO'. Im collada Ordner finden sich nun endlich auch die übersetzten Dateien Bsp. _init_.py _init_.pyc _main_.py _main_.pyc usw. (das hatte ich bisher so nicht im gleichen Ordner) Wenn man jetzt ganz normal die Python Shell vom Windows Startmenü aus aufruft (es meldet sich der Python Interpreter 2.6.6) und ein 'import collada' aufruft, passiert "nichts" und das ist genau richtig, heißt keine Fehlermelgung, Modul collada erfolgreich geladen. Nun mal FreeCAD starten (bei mir 0.14 Build 3389 - die aktuellste 32-bit Version). Auch dort muss in der Python Konsole am unteren Bildrand ein 'import collada' eigegeben ohne Fehlermeldung ablaufen. Tut es auch. Ganz ohne, dass irgendetwas im FreeCAD Verzeichnisbaum hinzugefügt wurde. Die Python-Installation wirkt. Ab jetzt kann das Austesten mit dem Import von collada Dateien unter FreeCAD dann starten. Wunder erwarte ich nicht, aber ich bin jedenfalls froh, dass nun erst mal alles wie erwartet läuft. Mein Python 3.4 Verzeichnis habe ich im Ordner work belassen. Stört momentan nicht. Der Pfad verweißt ja auch v2.6. Danke für die Hilfe! Manchmal sind es einfach scheinbar banale Kleinigkeiten die den Ausschlag geben am Ball zu bleiben. Hab extra mal alles so ausführlich wie möglich beschrieben. Hoffe es war nicht zu lang. ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.