首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编译搅拌机BPY :用-fPIC重新编译?

编译搅拌机BPY :用-fPIC重新编译?
EN

Stack Overflow用户
提问于 2016-04-21 20:29:45
回答 1查看 1.2K关注 0票数 0

我试图在Ubuntu14.04.4中编译Blender BPY,使用:

代码语言:javascript
复制
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

它编译,但以一个错误结尾:

代码语言:javascript
复制
[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

我在页码中也有同样的错误。

知道吗?

有可能在某个地方下载搅拌器BPY的编译库吗?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-21 20:37:43

好的,它尝试将静态库链接到动态库,而静态库(/opt/lib/python3.5/lib/libpython3.5m.a)不适合这样做(编译了w/o -fPIC,这使得在共享库中无法使用它)。用标志重新编译那个库(或者简单地提供一个正确编译的),然后用Blender BPY重试。

我刚刚检查过,Ubuntu-14.04在官方回复中没有python-3.5,但是有一堆专用的PPA。但是,由于现在是16月底,最好将apt sources.list切换到Xenial,如果您觉得勇敢,最好将系统更新到下一个LTS,如果不这样做,最好只更新python :)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36779834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档