Closed Krasner closed 1 year ago
Here is the ldd print out because this looks like a linker error
ldd pixsfm/_pixsfm.cpython-39-x86_64-linux-gnu.so
linux-vdso.so.1 (0x00007ffda97e0000)
libglog.so.0 => /lib/x86_64-linux-gnu/libglog.so.0 (0x00007f96c0744000)
libboost_filesystem.so.1.71.0 => /lib/x86_64-linux-gnu/libboost_filesystem.so.1.71.0 (0x00007f96c0726000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f96c0703000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f96c06fd000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f96c06f1000)
libhdf5_serial.so.103 => /lib/x86_64-linux-gnu/libhdf5_serial.so.103 (0x00007f96c0374000)
libpython3.9.so.1.0 => /opt/conda/envs/hloc_env/lib/libpython3.9.so.1.0 (0x00007f96bffe6000)
libspqr.so.2 => /lib/x86_64-linux-gnu/libspqr.so.2 (0x00007f96bffb8000)
libcholmod.so.3 => /lib/x86_64-linux-gnu/libcholmod.so.3 (0x00007f96bfed5000)
libcxsparse.so.3 => /lib/x86_64-linux-gnu/libcxsparse.so.3 (0x00007f96bfea8000)
libcublas.so.11 => /usr/local/cuda/lib64/libcublas.so.11 (0x00007f96b6c48000)
libcusolver.so.11 => /usr/local/cuda/lib64/libcusolver.so.11 (0x00007f96a8a3c000)
libmkl_intel_lp64.so => /lib/x86_64-linux-gnu/libmkl_intel_lp64.so (0x00007f96a7ed0000)
libmkl_intel_thread.so => /lib/x86_64-linux-gnu/libmkl_intel_thread.so (0x00007f96a5964000)
libmkl_core.so => /lib/x86_64-linux-gnu/libmkl_core.so (0x00007f96a1644000)
libomp.so.5 => /lib/x86_64-linux-gnu/libomp.so.5 (0x00007f96a1553000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f96a1402000)
libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f96a1220000)
libgcc_s.so.1 => /opt/conda/envs/hloc_env/lib/libgcc_s.so.1 (0x00007f96a1205000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f96a1013000)
/lib64/ld-linux-x86-64.so.2 (0x00007f96c1378000)
libgflags.so.2.2 => /lib/x86_64-linux-gnu/libgflags.so.2.2 (0x00007f96a0fe8000)
libunwind.so.8 => /lib/x86_64-linux-gnu/libunwind.so.8 (0x00007f96a0fcb000)
libsz.so.2 => /lib/x86_64-linux-gnu/libsz.so.2 (0x00007f96a0fc4000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f96a0fa8000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f96a0fa3000)
libsuitesparseconfig.so.5 => /lib/x86_64-linux-gnu/libsuitesparseconfig.so.5 (0x00007f96a0f9e000)
liblapack.so.3 => /lib/x86_64-linux-gnu/liblapack.so.3 (0x00007f96a08be000)
libamd.so.2 => /lib/x86_64-linux-gnu/libamd.so.2 (0x00007f96a08b1000)
libcolamd.so.2 => /lib/x86_64-linux-gnu/libcolamd.so.2 (0x00007f96a08a8000)
libccolamd.so.2 => /lib/x86_64-linux-gnu/libccolamd.so.2 (0x00007f96a089b000)
libcamd.so.2 => /lib/x86_64-linux-gnu/libcamd.so.2 (0x00007f96a088f000)
libmetis.so.5 => /lib/x86_64-linux-gnu/libmetis.so.5 (0x00007f96a0621000)
libgomp.so.1 => /lib/x86_64-linux-gnu/libgomp.so.1 (0x00007f96a05df000)
libcublasLt.so.11 => /usr/local/cuda/lib64/libcublasLt.so.11 (0x00007f968c63c000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f968c613000)
libaec.so.0 => /lib/x86_64-linux-gnu/libaec.so.0 (0x00007f968c60a000)
I figured it out. COLMAP, pyceres, pixsfm all have to be built against the ceres-solver-2.1.0. On my machine colmap was built against ceres 1.14 which did not cause an issue for pycolmap or hloc, but did cause an issue for pixsfm
Here's the error message:
I built COLMAP from source because I need CUDA support. I was able to build and use hloc and pycolmap with no problems. I built and installed ceres-2.1.0 from source, and was able to build pyceres using pip install -e . Finally, I installed pixel-perfect-sfm with pip install -e . which took a while but succeeded.
However, when trying to import pixsfm I get this error above.