Volumes Of Fun http://www.volumesoffun.com/phpBB3/ |
|
Problem with Python Bindings http://www.volumesoffun.com/phpBB3/viewtopic.php?f=14&t=577 |
Page 1 of 1 |
Author: | pozzoe [ Sat Mar 22, 2014 6:50 pm ] |
Post subject: | Problem with Python Bindings |
I'm trying to compile pyhton bindings from git source. The bindings compile correctly but then, when trying to run the example I get: Code: Traceback (most recent call last): File "./PythonExample.py", line 29, in <module> import PolyVoxCore as pv File "../../library/bindings/PolyVoxCore.py", line 26, in <module> _PolyVoxCore = swig_import_helper() File "../../library/bindings/PolyVoxCore.py", line 22, in swig_import_helper _mod = imp.load_module('_PolyVoxCore', fp, pathname, description) ImportError: dynamic module does not define init function (PyInit__PolyVoxCore) Also, python related tests fail: Code: 87% tests passed, 2 tests failed out of 15 Total Test time (real) = 289.53 sec The following tests FAILED: 1 - PythonSurfaceExtractorTest (Failed) 2 - PythonRaycastTest (Failed) Errors while running CTest make: *** [test] Error 8 I'm using Python 3.2.3 on Ubuntu 12.04 LTS. The rest of the examples work correctly. Any ideas? |
Author: | milliams [ Sun Mar 23, 2014 12:09 pm ] |
Post subject: | Re: Problem with Python Bindings |
Ok, I just did a clean rebuild on my computer which means it should work and likely there's a configuration problem. The first, most likely problem is the SWIG version you're using. What version do you have and can you upgrade it? The PolyVox Python bindings only support Python3 so you need a version of SWIG which supports that too. |
Author: | pozzoe [ Mon Mar 24, 2014 5:47 pm ] |
Post subject: | Re: Problem with Python Bindings |
I have Swig 2.0.4. I have python 2.7 and 3.2.3. What I just did, just to make sure, is making python default to 3.2.3 and rebuilding. But I'm having the same issue... Should I try uninstalling python 2.7 completely? Should I try a different python version? |
Author: | pozzoe [ Sat Mar 29, 2014 2:28 pm ] |
Post subject: | Re: Problem with Python Bindings |
After updating Ubuntu I have the following problem: Code: Could NOT find PythonLibs: Found unsuitable version "2.7.3", but required is at least "3" (found /usr/lib/python2.7/config/libpython2.7.so) But I do have file /usr/lib/python3.2/config-3.2mu/libpython3.2.so However, if I uninstall python-dev, leaving only python3-dev installed, cmake detects PythonLibs correctly. But then, during make install: Code: [ 24%] Building CXX object library/bindings/CMakeFiles/_PolyVoxCorePython.dir/PolyVoxCorePYTHON_wrap.cxx.o /home/pozzoe/Documents/polyvox/build/library/bindings/PolyVoxCorePYTHON_wrap.cxx:149:20: fatal error: Python.h: No such file or directory compilation terminated. What distribuition are you compiling under? What version of cmake do you use? Thank you |
Author: | pozzoe [ Sun Mar 30, 2014 6:25 pm ] |
Post subject: | Re: Problem with Python Bindings |
I was able to solve the problem with cmake not finding PythonLibs > 3 and a compilation issue: Code: /home/pozzoe/Documents/polyvox/library/bindings/PolyVoxCore.i:4: Error: Unable to find 'Impl/TypeDef.h' /home/pozzoe/Documents/polyvox/library/bindings/Vector.i:7: Error: Unable to find 'Vector.h' /home/pozzoe/Documents/polyvox/library/bindings/DefaultMarchingCubesController.i:6: Error: Unable to find 'DefaultMarchingCubesController.h' /home/pozzoe/Documents/polyvox/library/bindings/Region.i:16: Error: Unable to find 'Region.h' /home/pozzoe/Documents/polyvox/library/bindings/Block.i:6: Error: Unable to find 'Block.h' /home/pozzoe/Documents/polyvox/library/bindings/CompressedBlock.i:6: Error: Unable to find 'CompressedBlock.h' /home/pozzoe/Documents/polyvox/library/bindings/UncompressedBlock.i:6: Error: Unable to find 'UncompressedBlock.h' /home/pozzoe/Documents/polyvox/library/bindings/BlockCompressor.i:6: Error: Unable to find 'BlockCompressor.h' /home/pozzoe/Documents/polyvox/library/bindings/Pager.i:6: Error: Unable to find 'Pager.h' /home/pozzoe/Documents/polyvox/library/bindings/FilePager.i:6: Error: Unable to find 'FilePager.h' /home/pozzoe/Documents/polyvox/library/bindings/MinizBlockCompressor.i:6: Error: Unable to find 'MinizBlockCompressor.h' /home/pozzoe/Documents/polyvox/library/bindings/RLEBlockCompressor.i:6: Error: Unable to find 'RLEBlockCompressor.h' /home/pozzoe/Documents/polyvox/library/bindings/BaseVolume.i:6: Error: Unable to find 'BaseVolume.h' /home/pozzoe/Documents/polyvox/library/bindings/SimpleVolume.i:6: Error: Unable to find 'SimpleVolume.h' /home/pozzoe/Documents/polyvox/library/bindings/RawVolume.i:6: Error: Unable to find 'RawVolume.h' /home/pozzoe/Documents/polyvox/library/bindings/LargeVolume.i:6: Error: Unable to find 'LargeVolume.h' /home/pozzoe/Documents/polyvox/library/bindings/VertexTypes.i:8: Error: Unable to find 'Impl/TypeDef.h' /home/pozzoe/Documents/polyvox/library/bindings/VertexTypes.i:9: Error: Unable to find 'Vector.h' /home/pozzoe/Documents/polyvox/library/bindings/VertexTypes.i:10: Error: Unable to find 'VertexTypes.h' /home/pozzoe/Documents/polyvox/library/bindings/SurfaceMesh.i:8: Error: Unable to find 'Region.h' /home/pozzoe/Documents/polyvox/library/bindings/SurfaceMesh.i:9: Error: Unable to find 'VertexTypes.h' /home/pozzoe/Documents/polyvox/library/bindings/SurfaceMesh.i:10: Error: Unable to find 'SurfaceMesh.h' /home/pozzoe/Documents/polyvox/library/bindings/MarchingCubesSurfaceExtractor.i:6: Error: Unable to find 'MarchingCubesSurfaceExtractor.h' /home/pozzoe/Documents/polyvox/library/bindings/CubicSurfaceExtractor.i:6: Error: Unable to find 'CubicSurfaceExtractor.h' /home/pozzoe/Documents/polyvox/library/bindings/CubicSurfaceExtractorWithNormals.i:6: Error: Unable to find 'CubicSurfaceExtractorWithNormals.h' /home/pozzoe/Documents/polyvox/library/bindings/Raycast.i:52: Error: Unable to find 'Raycast.h' /home/pozzoe/Documents/polyvox/library/bindings/Picking.i:6: Error: Unable to find 'Picking.h' make[2]: *** [library/bindings/PolyVoxCoreCSHARP_wrap.cxx] Error 1 make[1]: *** [library/bindings/CMakeFiles/PolyVoxCoreCSharp.dir/all] Error 2 make: *** [all] Error 2 To do this I REMOVED libpython2.7-dev package and kept only libpython3-dev. After that, cmake is able to detect the installed version of libpython3 Code: Found PythonLibs: /usr/lib/python3.3/config-3.3m-x86_64-linux-gnu/libpython3.3.so (Required is at least version "3") But now I'm stucked at a different problem: PolyVox compiles, but then Code: Test project /home/pozzoe/Documents/polyvox/build Start 1: PythonSurfaceExtractorTest 1/15 Test #1: PythonSurfaceExtractorTest .......***Failed 0.31 sec Start 2: PythonRaycastTest 2/15 Test #2: PythonRaycastTest ................***Failed 0.12 sec Start 3: TestAmbientOcclusionGenerator ... The following tests FAILED: 1 - PythonSurfaceExtractorTest (Failed) 2 - PythonRaycastTest (Failed) Errors while running CTest And Code: pozzoe@ubuntu:~/Documents/polyvox/build/examples/Python$ ./PythonExample.py Traceback (most recent call last): File "./PythonExample.py", line 29, in <module> import PolyVoxCore as pv File "../../library/bindings/PolyVoxCore.py", line 26, in <module> _PolyVoxCore = swig_import_helper() File "../../library/bindings/PolyVoxCore.py", line 22, in swig_import_helper _mod = imp.load_module('_PolyVoxCore', fp, pathname, description) File "/usr/lib/python3.3/imp.py", line 188, in load_module return load_dynamic(name, filename, file) ImportError: dynamic module does not define init function (PyInit__PolyVoxCore) Googling "ImportError: dynamic module does not define init function" shows a variety of issues that could be causing this. Swig version is 2.0.10. I'll appreciate any help you could give me. |
Author: | milliams [ Mon Apr 14, 2014 9:30 am ] |
Post subject: | Re: Problem with Python Bindings |
I've just tested on Fedora 19 which has SWIG 2.0.10 and it's working there so at least it's not a SWIG version problem. Could you go to the build/library/bindings directory and run: Code: nm _PolyVoxCore.so | grep PyInit__PolyVoxCore You should get an output like:Code: 000000000021f7ad T PyInit__PolyVoxCore If not, could you let me know what you see?
0000000000674060 d _ZZ19PyInit__PolyVoxCoreE11SWIG_module |
Page 1 of 1 | All times are UTC |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |