Skip to content

Pycolmap installation ERror #23

@lucas-vitrus

Description

@lucas-vitrus

I have successfully installed COLAMP

COLMAP 3.12.0.dev0 -- Structure-from-Motion and Multi-View Stereo
(Commit 9a278671 on 2025-04-24 with CUDA)

However, pycolmap installation has been really hard to crack.

cd /root/colmap && python -m pip install . 

Breaks with the following error:

  [61/61] Linking CXX shared module _core.cpython-312-x86_64-linux-gnu.so
      FAILED: _core.cpython-312-x86_64-linux-gnu.so
      : && /usr/bin/clang++ -fPIC -O3 -DNDEBUG  -flto -shared  -o _core.cpython-312-x86_64-linux-gnu.so CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/absolute_pose.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/affine_transform.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/alignment.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/bundle_adjustment.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/ceres_bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/cost_functions.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/covariance.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/essential_matrix.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/fundamental_matrix.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/generalized_absolute_pose.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/homography_matrix.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/manifold.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/similarity_transform.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/triangulation.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/estimators/two_view_geometry.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/feature/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/feature/sift.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/feature/types.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/geometry/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/geometry/eigen.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/geometry/essential_matrix.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/geometry/homography_matrix.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/geometry/pose_prior.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/geometry/rigid3.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/geometry/sim3.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/geometry/triangulation.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/image/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/image/undistortion.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/main.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/optim/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/pipeline/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/pipeline/extract_features.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/pipeline/images.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/pipeline/match_features.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/pipeline/meshing.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/pipeline/mvs.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/pipeline/sfm.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/retrieval/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/retrieval/visual_index.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/camera.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/constants.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/correspondence_graph.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/database.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/database_cache.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/image.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/point2d.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/point3d.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/reconstruction.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/reconstruction_manager.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/synthetic.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/track.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/scene/two_view_geometry.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/sensor/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/sensor/bitmap.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/sfm/bindings.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/sfm/incremental_mapper.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/sfm/incremental_triangulator.cc.o CMakeFiles/_core.dir/root/colmap/src/pycolmap/sfm/observation_manager.cc.o -L/usr/lib/x86_64-linux-gnu/stubs -Wl,-rpath,/usr/local/cuda/lib64:/usr/local/lib:  /usr/local/lib/libceres.a  /usr/local/lib/libcolmap_exe.a  /usr/local/lib/libcolmap_ui.a  /usr/local/lib/libcolmap_controllers.a  /usr/local/lib/libcolmap_feature.a  /usr/local/lib/libcolmap_retrieval.a  /usr/lib/x86_64-linux-gnu/libflann.so  /usr/lib/x86_64-linux-gnu/liblz4.so  /usr/local/lib/libcolmap_sfm.a  /usr/local/lib/libcolmap_estimators.a  /usr/local/lib/libcolmap_optim.a  /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.74.0  /usr/local/lib/libcolmap_mvs_cuda.a  /usr/local/lib/libcolmap_mvs.a  /usr/local/lib/libcolmap_image.a  /usr/local/lib/libcolmap_lsd.a  /usr/local/lib/libcolmap_scene.a  /usr/local/lib/libcolmap_feature_types.a  /usr/local/lib/libcolmap_sensor.a  /usr/local/lib/libceres.a  /usr/local/lib/libabsl_log_flags.a  /usr/local/lib/libabsl_flags_internal.a  /usr/local/lib/libabsl_flags_reflection.a  /usr/local/lib/libabsl_flags_config.a  /usr/local/lib/libabsl_flags_program_name.a  /usr/local/lib/libabsl_flags_private_handle_accessor.a  /usr/local/lib/libabsl_flags_commandlineflag.a  /usr/local/lib/libabsl_flags_commandlineflag_internal.a  /usr/local/lib/libabsl_flags_marshalling.a  /usr/local/lib/libabsl_log_internal_check_op.a  /usr/local/lib/libabsl_log_internal_conditions.a  /usr/local/lib/libabsl_log_internal_message.a  /usr/local/lib/libabsl_log_internal_nullguard.a  /usr/local/lib/libabsl_examine_stack.a  /usr/local/lib/libabsl_log_internal_format.a  /usr/local/lib/libabsl_log_internal_proto.a  /usr/local/lib/libabsl_log_internal_log_sink_set.a  /usr/local/lib/libabsl_log_globals.a  /usr/local/lib/libabsl_vlog_config_internal.a  /usr/local/lib/libabsl_log_internal_fnmatch.a  /usr/local/lib/libabsl_log_internal_globals.a  /usr/local/lib/libabsl_log_sink.a  /usr/local/lib/libabsl_log_entry.a  /usr/local/lib/libabsl_strerror.a  /usr/local/lib/libabsl_raw_hash_set.a  /usr/local/lib/libabsl_hash.a  /usr/local/lib/libabsl_city.a  /usr/local/lib/libabsl_bad_variant_access.a  /usr/local/lib/libabsl_low_level_hash.a  /usr/local/lib/libabsl_hashtablez_sampler.a  /usr/local/lib/libabsl_cord.a  /usr/local/lib/libabsl_bad_optional_access.a  /usr/local/lib/libabsl_cordz_info.a  /usr/local/lib/libabsl_cord_internal.a  /usr/local/lib/libabsl_cordz_functions.a  /usr/local/lib/libabsl_exponential_biased.a  /usr/local/lib/libabsl_cordz_handle.a  /usr/local/lib/libabsl_synchronization.a  /usr/local/lib/libabsl_graphcycles_internal.a  /usr/local/lib/libabsl_kernel_timeout_internal.a  /usr/local/lib/libabsl_time.a  /usr/local/lib/libabsl_civil_time.a  /usr/local/lib/libabsl_time_zone.a  /usr/local/lib/libabsl_stacktrace.a  /usr/local/lib/libabsl_symbolize.a  /usr/local/lib/libabsl_malloc_internal.a  /usr/local/lib/libabsl_demangle_internal.a  /usr/local/lib/libabsl_crc_cord_state.a  /usr/local/lib/libabsl_crc32c.a  /usr/local/lib/libabsl_str_format_internal.a  /usr/local/lib/libabsl_crc_internal.a  /usr/local/lib/libabsl_crc_cpu_detect.a  /usr/local/lib/libabsl_strings.a  /usr/local/lib/libabsl_strings_internal.a  /usr/local/lib/libabsl_string_view.a  /usr/local/lib/libabsl_base.a  /usr/local/lib/libabsl_spinlock_wait.a  -lrt  /usr/local/lib/libabsl_int128.a  /usr/local/lib/libabsl_throw_delegate.a  /usr/local/lib/libabsl_debugging_internal.a  /usr/local/lib/libabsl_raw_logging_internal.a  /usr/local/lib/libabsl_log_severity.a  /usr/local/cuda/lib64/libcusolver.so  /usr/local/cuda/lib64/libcublas.so  /usr/local/cuda/lib64/libcusparse.so  /usr/local/lib/libceres_cuda_kernels.a  /usr/lib/x86_64-linux-gnu/liblapack.so  /usr/lib/x86_64-linux-gnu/libblas.so  /usr/lib/x86_64-linux-gnu/libf77blas.so  /usr/lib/x86_64-linux-gnu/libatlas.so  /usr/local/lib/libcolmap_geometry.a  /usr/local/lib/libcolmap_math.a  /usr/lib/x86_64-linux-gnu/libmetis.so  /usr/lib/x86_64-linux-gnu/libboost_graph.so.1.74.0  /usr/lib/x86_64-linux-gnu/libboost_regex.so.1.74.0  /usr/local/lib/libcolmap_vlfeat.a  /usr/lib/x86_64-linux-gnu/libfreeimage.so  /usr/local/lib/libcolmap_poisson_recon.a  /usr/lib/llvm-14/lib/libomp.so  /lib/x86_64-linux-gnu/libpthread.a  /usr/lib/x86_64-linux-gnu/libgmpxx.so  /usr/lib/x86_64-linux-gnu/libmpfr.so  /usr/lib/x86_64-linux-gnu/libgmp.so  /usr/local/lib/libcolmap_util_cuda.a  /usr/local/lib/libcolmap_util.a  /usr/local/lib/libglog.so.0.6.0  /usr/lib/x86_64-linux-gnu/libgflags.so.2.2.2  -lpthread  /usr/lib/x86_64-linux-gnu/libsqlite3.so  /usr/lib/x86_64-linux-gnu/libcurl.so  /usr/lib/x86_64-linux-gnu/libcrypto.so  /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5.15.3  /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.15.3  /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5.15.3  /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.15.3  /usr/local/lib/libcolmap_sift_gpu.a  /usr/local/cuda/lib64/libcudart.so  /usr/lib/x86_64-linux-gnu/libGL.so  /usr/local/cuda/lib64/libcurand.so  /usr/lib/x86_64-linux-gnu/libGLEW.so  /usr/local/lib/libPoseLib.a  -lcudadevrt  -lcudart_static  -lrt  -lpthread  -ldl && cd /tmp/tmp065rw47_/build && /usr/bin/strip /tmp/tmp065rw47_/build/_core.cpython-312-x86_64-linux-gnu.so && cd /tmp/tmp065rw47_/build && /usr/bin/cmake -E env PYTHONPATH=/tmp/tmp065rw47_/build:/tmp/pip-build-env-n1c60o2u/site bash /root/colmap/python/generate_stubs.sh /usr/local/bin/python /tmp/tmp065rw47_/build
      /usr/bin/ld: /usr/local/lib/libcolmap_feature.a(pairing.cc.o): in function `_GLOBAL__sub_I_pairing.cc':
      pairing.cc:(.text.startup+0x79): undefined reference to `colmap::retrieval::InvertedFile<64>::hamming_dist_weight_functor_'
      /usr/bin/ld: /usr/local/lib/libcolmap_feature.a(pairing.cc.o): relocation R_X86_64_PC32 against undefined hidden symbol `_ZN6colmap9retrieval12InvertedFileILi64EE28hamming_dist_weight_functor_E' can not be used when making a shared object
      /usr/bin/ld: final link failed: bad value
      clang: error: linker command failed with exit code 1 (use -v to see invocation)
      ninja: build stopped: subcommand failed.
      
      *** CMake build failed
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for pycolmap
Failed to build pycolmap

[notice] A new release of pip is available: 25.1 -> 25.1.1
[notice] To update, run: pip install --upgrade pip
ERROR: Failed to build installable wheels for some pyproject.toml based projects (pycolmap)
Terminating task due to error: failed to run builder command "cd /root/colmap && colmap_DIR=/usr/local python -m pip install .": container exit status: 1
Runner failed with exit code: -1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions