编译baidu Familia时报错
g++ -I./include/ -I./include/familia -I./third_party/include -I/home/.pyenv/versions/2.7.13/include/python2.7 -pipe -W -Wall -fPIC -std=c++11 -fno-omit-frame-pointer -fpermissive -O3 -ffast-math -shared python/cpp/familia_wrapper.o -L/home/experiments/Familia/third_party/lib -L/home/.pyenv/versions/2.7.13/lib -L./build/ -lfamilia -lprotobuf -lglog -lgflags -lpython2.7 -o python/demo/familia.so
/usr/bin/ld: /home/.pyenv/versions/2.7.13/lib/libpython2.7.a(listobject.o): relocation R_X86_64_32 against `_Py_NoneStruct' can not be used when making a shared object; recompile with -fPIC
/home/.pyenv/versions/2.7.13/lib/libpython2.7.a: could not read symbols: Bad value
collect2: error: ld returned 1 exit status
make: *** [python/demo/familia.so] Error 1
解决方法
PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install --force 2.7.13
参考
https://stackoverflow.com/questions/42582712/relocation-r-x86-64-32s-against-py-notimplementedstruct-can-not-be-used-when