我尝试安装vowpalwabbit python的包装器。
exectution后:
$ brew install libtool autoconf automake
$ brew install boost-python --with-python3
$ pip install vowpalwabbit
我收到了以下错误:
Using Python 3.6
/usr/bin/g++ -std=c++0x -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I /usr/local/include -I ../rapidjson/include -fPIC -c pylibvw.cc -o pylibvw.o
/usr/bin/g++ -shared pylibvw.o -L /usr/local/lib -L/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config -lpython2.7 -ldl -framework CoreFoundation ../vowpalwabbit/libvw.a ../vowpalwabbit/liballreduce.a -L /usr/local/lib -lboost_program_options-mt -lboost_serialization-mt -l pthread -l z -l boost_python3-mt -o pylibvw.so
Undefined symbols for architecture x86_64:
"boost::python::detail::init_module(char const*, void (*)())", referenced from:
_initpylibvw in pylibvw.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [pylibvw.so] Error 1
make: *** [python] Error 2
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/n6/lhgdgsns3z5gh0q93s3w_dz80000gn/T/pip-build-lesezaxg/vowpalwabbit/setup.py", line 202, in <module>
tests_require=['tox']
File "/Users/andrei/anaconda/lib/python3.6/distutils/core.py", line 148, in setup
dist.run_commands()
File "/Users/andrei/anaconda/lib/python3.6/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/Users/andrei/anaconda/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/Users/andrei/anaconda/lib/python3.6/site-packages/wheel/bdist_wheel.py", line 179, in run
self.run_command('build')
File "/Users/andrei/anaconda/lib/python3.6/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/Users/andrei/anaconda/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/Users/andrei/anaconda/lib/python3.6/distutils/command/build.py", line 135, in run
self.run_command(cmd_name)
File "/Users/andrei/anaconda/lib/python3.6/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/Users/andrei/anaconda/lib/python3.6/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/Users/andrei/anaconda/lib/python3.6/site-packages/setuptools-27.2.0-py3.6.egg/setuptools/command/build_ext.py", line 77, in run
File "/Users/andrei/anaconda/lib/python3.6/site-packages/Cython/Distutils/old_build_ext.py", line 185, in run
_build_ext.build_ext.run(self)
File "/Users/andrei/anaconda/lib/python3.6/distutils/command/build_ext.py", line 339, in run
self.build_extensions()
File "/Users/andrei/anaconda/lib/python3.6/site-packages/Cython/Distutils/old_build_ext.py", line 193, in build_extensions
self.build_extension(ext)
File "/private/var/folders/n6/lhgdgsns3z5gh0q93s3w_dz80000gn/T/pip-build-lesezaxg/vowpalwabbit/setup.py", line 113, in build_extension
subprocess.check_call(['make', 'python'], cwd=path.join(here, 'src'), env=env)
File "/Users/andrei/anaconda/lib/python3.6/subprocess.py", line 291, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['make', 'python']' returned non-zero exit status 2.
我尝试使用include并从PATH中排除anaconda bin来运行此命令,但仍然有此异常。
我做错了什么?
P.S。 full log