Ok, this is the situation on Os X. Using: boost_1_66_0, Ilmbase 2.2.0, c-blosc 1.14.4, openexr 2.2.0, tbb 2018_U3_1, glfw 3.2.1.
-> entering openvdb lib installation
max:python3.5 ll
total 124576
drwxr-xr-x 3 max staff 96 Apr 25 10:57 ..
lrwxr-xr-x 1 max staff 12 Apr 25 10:57 pyopenvdb.so.5.1 -> pyopenvdb.so
drwxr-xr-x 4 max staff 128 Apr 25 10:57 .
-rwxr-xr-x 1 max staff 63780604 Apr 25 11:03 pyopenvdb.so
max:python3.5
max:python3.5 python
Python 3.5.3 (default, Apr 18 2018, 15:48:57)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/Users/max/.pyenv/versions/3.5.3/Python.framework/Versions/3.5/lib/python35.zip', '/Users/max/.pyenv/versions/3.5.3/Python.framework/Versions/3.5/lib/python3.5', '/Users/max/.pyenv/versions/3.5.3/Python.framework/Versions/3.5/lib/python3.5/plat-darwin', '/Users/max/.pyenv/versions/3.5.3/Python.framework/Versions/3.5/lib/python3.5/lib-dynload', '/Users/max/Library/Python/3.5/lib/python/site-packages', '/Users/max/.pyenv/versions/3.5.3/Python.framework/Versions/3.5/lib/python3.5/site-packages']
>>>
-> that's python 3.5.3. Blender is 2.79a rc (same goes for 2.79) and uses the same python, symlinked from blender install to my pyenv dir. It works normally. Everything has been compiled against this python installation.
>>> import pyopenvdb as vdb
>>> g=vdb.FloatGrid()
>>> dir(g)
['Accessor', 'ConstAccessor', 'Value', 'ValueAllCIter', 'ValueAllIter', 'ValueOffCIter', 'ValueOffIter', 'ValueOnCIter', 'ValueOnIter', '__class__', '__contains__', '__delattr__', '__delitem__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getstate__', '__getstate_manages_dict__', '__gt__', '__hash__', '__init__', '__instance_size__', '__iter__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__nonzero__', '__reduce__', '__reduce_ex__', '__repr__', '__safe_for_unpickling__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'activeLeafVoxelCount', 'activeVoxelCount', 'addStatsMetadata', 'background', 'citerAllValues', 'citerOffValues', 'citerOnValues', 'clear', 'combine', 'convertToPolygons', 'convertToQuads', 'copy', 'copyFromArray', 'copyToArray', 'createLevelSetFromPolygons', 'creator', 'deepCopy', 'empty', 'evalActiveVoxelBoundingBox', 'evalActiveVoxelDim', 'evalLeafBoundingBox', 'evalLeafDim', 'evalMinMax', 'fill', 'getAccessor', 'getConstAccessor', 'getIndexRange', 'getStatsMetadata', 'gridClass', 'info', 'iterAllValues', 'iterOffValues', 'iterOnValues', 'iterkeys', 'leafCount', 'mapAll', 'mapOff', 'mapOn', 'memUsage', 'merge', 'metadata', 'name', 'nodeLog2Dims', 'nonLeafCount', 'oneValue', 'prune', 'pruneInactive', 'saveFloatAsHalf', 'sharesWith', 'signedFloodFill', 'transform', 'treeDepth', 'updateMetadata', 'valueTypeName', 'vectorType', 'zeroValue']
>>>
-> functions looks like ok
max:python3.5 otool -L pyopenvdb.so
pyopenvdb.so:
pyopenvdb.so (compatibility version 0.0.0, current version 0.0.0)
/Users/max/.pyenv/versions/3.5.3/Python.framework/Versions/3.5/Python (compatibility version 3.5.0, current version 3.5.0)
/Users/max/Developer/Library/Build/boost_1_66_0/release/lib/libboost_numpy3-xgcc42-mt-x64-1_66.dylib (compatibility version 0.0.0, current version 0.0.0)
/Users/max/Developer/Library/Build/boost_1_66_0/release/lib/libboost_python3-xgcc42-mt-x64-1_66.dylib (compatibility version 0.0.0, current version 0.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)
/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
/usr/local/lib/libHalf.12.dylib (compatibility version 13.0.0, current version 13.0.0)
/usr/local/opt/tbb/lib/libtbb.dylib (compatibility version 0.0.0, current version 0.0.0)
/Users/max/Developer/Library/Build/boost_1_66_0/release/lib/libboost_iostreams-xgcc42-mt-x64-1_66.dylib (compatibility version 0.0.0, current version 0.0.0)
/Users/max/Developer/Library/Build/boost_1_66_0/release/lib/libboost_system-xgcc42-mt-x64-1_66.dylib (compatibility version 0.0.0, current version 0.0.0)
/Users/max/Developer/Library/Build/c-blosc/build/blosc/libblosc.dylib (compatibility version 1.0.0, current version 1.14.4)
/usr/local/opt/jemalloc/lib/libjemalloc.2.dylib (compatibility version 0.0.0, current version 0.0.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 400.9.0)
max:python3.5
-> libraries looks like ok, too. They're full path dirs so moving the .so should give no problem...
I copy .so in ...addon/modules dir, then start Blender. Go to console and import pyopenvdb; or enable the addon: Blender crashes.
Here's the crash log. I removed jemalloc and tbb for mallocin because the crash log show they were culprits... but now I can't find anything else...
Attachments
crash_log.txt.zip (20.8 KB)