2016-04-21 5 views
0

Ich habe versucht Blender BPY in Ubuntu 14.04.4 mit kompilieren:Compiler Blender BPY: Kompilieren mit -fPIC?

mkdir ~/blender-git 
cd ~/blender-git 
git clone http://git.blender.org/blender.git 
cd blender 
git submodule update --init --recursive 
git submodule foreach git checkout master 
git submodule foreach git pull --rebase origin master 

sudo apt-get update; sudo apt-get install git build-essential 

cd ~/blender-git 
./blender/build_files/build_environment/install_deps.sh 

sudo apt-get install cmake cmake-curses-gui 

mkdir ~/blender-git/build 
cd ~/blender-git/build 

cmake ../blender \ 
    -DWITH_PYTHON_INSTALL=OFF \ 
    -DWITH_PLAYER=OFF \ 
    -DWITH_PYTHON_MODULE=ON 

cd ~/blender-git/build 
make 

Es kompiliert, aber es endet mit einem Fehler:

[100%] Building C object source/creator/CMakeFiles/blender.dir/buildinfo.c.o 
Linking CXX shared module ../../bin/bpy.so 
/usr/bin/ld.gold: error: /opt/lib/python-3.5/lib/libpython3.5m.a(abstract.o): requires dynamic R_X86_64_PC32 reloc against 'PyType_IsSubtype' which may overflow at runtime; recompile with -fPIC 

Ich habe den gleichen Fehler während der Seiten ...

Irgendeine Idee?

Ist es möglich, eine kompilierte Bibliothek von Blender BPY irgendwo herunterzuladen?

Danke!

+0

Ich frage mich, wie Sie das Problem schließlich gelöst haben? – Amir

Antwort

1

Nun, es versucht, eine statische Bibliothek in eine dynamische zu verbinden, und diese statische Bibliothek (/opt/lib/python-3.5/lib/libpython3.5m.a) ist dafür nicht geeignet (kompiliert w/o -fPIC, was es unmöglich macht, es in einer gemeinsamen Bibliothek zu verwenden). kompilieren Sie diese Bibliothek mit dem Flag neu (oder geben Sie einfach einen korrekt kompilierten an) und versuchen Sie es erneut mit Blender BPY.

Ich habe gerade überprüft, Ubuntu-14.04 hatte nicht Python-3.5 in den offiziellen Repos, aber es gibt eine Reihe von dedizierten PPAs. Aber da es Ende April 16 ist, ist es besser, die apt sources.list auf Xenial umzustellen und das System auf den nächsten LTS zu aktualisieren, wenn Sie sich mutig fühlen, oder einfach nur python :)

+0

lecker lecker ;-) Ich habe schon versucht, auf OSX ohne Erfolg zu kompilieren, ich kann meine VM neu installieren. LOL. Danke für Ihre Hilfe. – hotips

+0

eigentlich ist die Quelle Ihres Problems - ein falsch kompiliertes benutzerdefiniertes Python. Nimm das Problem aus dem Weg - und das Ziel ist erreicht. BTW das Problem gehört zu http://superuser.com oder ähnlich – user3159253

+0

Kompilieren Sie die python3.5 neu, indem Sie -fPIC irgendwo im Makefile für Python hinzufügen und es wreekd für mich. – foothill

Verwandte Themen