Python SDK latest installation on Ubuntu over Python3.12 compiled

I’m trying to install the latest couchbase sdk over the latest python3.12 that I compiled in my Ubuntu 20.04 over WSL2 on a Windows machine.

I’m not sure why, but it is failing with this:

2024-06-13T11:37:49,032 – Declaring system library snappy
2024-06-13T11:37:49,032 – Declaring system library llhttp::llhttp
2024-06-13T11:37:49,032 – Declaring system library hdr_histogram_static
2024-06-13T11:37:49,032 – Declaring system library Microsoft.GSL::GSL
2024-06-13T11:37:49,032 – Declaring system library spdlog::spdlog
2024-06-13T11:37:49,032 – Declaring system library fmt::fmt
2024-06-13T11:37:49,032 – Declaring system library asio
2024-06-13T11:37:49,032 – Declaring system library taocpp::pegtl
2024-06-13T11:37:49,032 – Declaring system library taocpp::json
2024-06-13T11:37:49,033 – COUCHBASE_CXX_CLIENT_POST_LINKED_OPENSSL is set, assuming OpenSSL headers and symbols are available already
2024-06-13T11:37:49,033 – Using /tmp/pip-install-3gmyukbb/couchbase_8d8460bed9ea4c56a946fd210ff947b1/build/temp.linux-x86_64-cpython-312/deps/couchbase-cxx-client to keep Mozilla certificates
2024-06-13T11:37:49,033 – Download CA bundle checksum: https://curl.se/ca/cacert.pem.sha256
2024-06-13T11:37:49,232 – Download CA bundle: https://curl.se/ca/cacert.pem
2024-06-13T11:37:50,947 fatal: not a git repository (or any of the parent directories): .git
2024-06-13T11:37:50,948 fatal: not a git repository (or any of the parent directories): .git
2024-06-13T11:37:51,404 – Using std::filesystem
2024-06-13T11:37:51,404 – COUCHBASE_CXX_BINARY_DIR=/tmp/pip-install-3gmyukbb/couchbase_8d8460bed9ea4c56a946fd210ff947b1/build/temp.linux-x86_64-cpython-312/deps/couchbase-cxx-client
2024-06-13T11:37:51,404 CMake Error at CMakeLists.txt:172 (message):
2024-06-13T11:37:51,404 Python3 not found.

Can you show the command used?

It was nothing special:

python3 -m pip install couchbase. How can I add the full log here? I actually separated the output of the installation.

The instructions I find here Full Installation | Couchbase Docs uses

$ sudo -H python3 -m pip install couchbase

I’m actually running with root user, the sudo -H didn’t change anything on the execution, infact it failed the first step.

root@davilang03:~# sudo -H python3 -m pip install couchbase
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘NewConnectionError(’<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fb3d0519520>: Failed to establish a new connection: [Errno -2] Name or service not known’)‘: /simple/couchbase/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘NewConnectionError(’<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fb3d134a720>: Failed to establish a new connection: [Errno -2] Name or service not known’)‘: /simple/couchbase/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘NewConnectionError(’<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fb3d01dbdd0>: Failed to establish a new connection: [Errno -2] Name or service not known’)‘: /simple/couchbase/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘NewConnectionError(’<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fb3d0008500>: Failed to establish a new connection: [Errno -2] Name or service not known’)‘: /simple/couchbase/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘NewConnectionError(’<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fb3d0008530>: Failed to establish a new connection: [Errno -2] Name or service not known’)': /simple/couchbase/

Anything from this output gives a hint? I see some of the libs are “failing”, but after the failure it downloads it to compile them along, is that correct?

-- Looking for sys/mman.h
  -- Looking for sys/mman.h - found
  -- Looking for sys/resource.h
  -- Looking for sys/resource.h - found
  -- Looking for sys/time.h
  -- Looking for sys/time.h - found
  -- Looking for sys/uio.h
  -- Looking for sys/uio.h - found
  -- Looking for unistd.h
  -- Looking for unistd.h - found
  -- Looking for windows.h
  -- Looking for windows.h - not found
  -- Looking for zlibVersion in z
  -- Looking for zlibVersion in z - found
  -- Looking for lzo1x_1_15_compress in lzo2
  -- Looking for lzo1x_1_15_compress in lzo2 - found
  -- Looking for LZ4_compress_default in lz4
  -- Looking for LZ4_compress_default in lz4 - found
  -- Performing Test HAVE_VISUAL_STUDIO_ARCH_AVX
  -- Performing Test HAVE_VISUAL_STUDIO_ARCH_AVX - Failed
  -- Performing Test HAVE_VISUAL_STUDIO_ARCH_AVX2
  -- Performing Test HAVE_VISUAL_STUDIO_ARCH_AVX2 - Failed
  -- Performing Test HAVE_CLANG_MAVX
  -- Performing Test HAVE_CLANG_MAVX - Success
  -- Performing Test HAVE_CLANG_MBMI2
  -- Performing Test HAVE_CLANG_MBMI2 - Success
  -- Performing Test SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS
  -- Performing Test SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS - Success
  -- Performing Test HAVE_BUILTIN_EXPECT
  -- Performing Test HAVE_BUILTIN_EXPECT - Success
  -- Performing Test HAVE_BUILTIN_CTZ
  -- Performing Test HAVE_BUILTIN_CTZ - Success
  -- Performing Test HAVE_ATTRIBUTE_ALWAYS_INLINE
  -- Performing Test HAVE_ATTRIBUTE_ALWAYS_INLINE - Success
  -- Performing Test SNAPPY_HAVE_SSSE3
  -- Performing Test SNAPPY_HAVE_SSSE3 - Failed
  -- Performing Test SNAPPY_HAVE_X86_CRC32
  -- Performing Test SNAPPY_HAVE_X86_CRC32 - Failed
  -- Performing Test SNAPPY_HAVE_NEON_CRC32
  -- Performing Test SNAPPY_HAVE_NEON_CRC32 - Failed
  -- Performing Test SNAPPY_HAVE_BMI2
  -- Performing Test SNAPPY_HAVE_BMI2 - Failed
  -- Performing Test SNAPPY_HAVE_NEON
  -- Performing Test SNAPPY_HAVE_NEON - Failed
  -- Looking for mmap
  -- Looking for mmap - found
  -- Looking for sysconf
  -- Looking for sysconf - found
  -- CPM: Adding package snappy@1.1.10 (1.1.10 at /tmp/pip-install-wlmcvhge/couchbase_2e53c16e72004540a2db8b2d388a09d4/deps/couchbase-cxx-cache/snappy/76d5cfe9eb57e13784ae53647f505edbe9341bdf/snappy)
  CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
    CPM: Calling git status on folder
    /tmp/pip-install-wlmcvhge/couchbase_2e53c16e72004540a2db8b2d388a09d4/deps/couchbase-cxx-cache/json/4c7c23ac69aa1d72b3a9295ac9aceac10d32d9a1/json
    failed
  Call Stack (most recent call first):
    deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
    deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:135 (cpmaddpackage)
    deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


  -- Adding PEGTL as submodule from external/PEGTL
  -- Using std::filesystem
  -- CPM: Adding package json@1.0.0-beta.14 (1.0.0-beta.14 at /tmp/pip-install-wlmcvhge/couchbase_2e53c16e72004540a2db8b2d388a09d4/deps/couchbase-cxx-cache/json/4c7c23ac69aa1d72b3a9295ac9aceac10d32d9a1/json)
  CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
    CPM: Calling git status on folder
    /tmp/pip-install-wlmcvhge/couchbase_2e53c16e72004540a2db8b2d388a09d4/deps/couchbase-cxx-cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio
    failed
  Call Stack (most recent call first):
    deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
    deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:158 (cpmaddpackage)
    deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


  -- CPM: Adding package asio@1.29.0 (asio-1-29-0 at /tmp/pip-install-wlmcvhge/couchbase_2e53c16e72004540a2db8b2d388a09d4/deps/couchbase-cxx-cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio)
  -- Declaring system library snappy
  -- Declaring system library llhttp::llhttp
  -- Declaring system library hdr_histogram_static
  -- Declaring system library Microsoft.GSL::GSL
  -- Declaring system library spdlog::spdlog
  -- Declaring system library fmt::fmt
  -- Declaring system library asio
  -- Declaring system library taocpp::pegtl
  -- Declaring system library taocpp::json
  -- COUCHBASE_CXX_CLIENT_POST_LINKED_OPENSSL is set, assuming OpenSSL headers and symbols are available already
  -- Using /tmp/pip-install-wlmcvhge/couchbase_2e53c16e72004540a2db8b2d388a09d4/build/temp.linux-x86_64-cpython-312/deps/couchbase-cxx-client to keep Mozilla certificates
  -- Download CA bundle checksum: https://curl.se/ca/cacert.pem.sha256
  -- Download CA bundle: https://curl.se/ca/cacert.pem
  fatal: not a git repository (or any of the parent directories): .git
  fatal: not a git repository (or any of the parent directories): .git
  -- Using std::filesystem
  -- COUCHBASE_CXX_BINARY_DIR=/tmp/pip-install-wlmcvhge/couchbase_2e53c16e72004540a2db8b2d388a09d4/build/temp.linux-x86_64-cpython-312/deps/couchbase-cxx-client
  CMake Error at CMakeLists.txt:172 (message):
    Python3 not found.

run with pip -v (or --verbose) for more details.

I added the --debug and it gave me this:


│3rdparty/python3.12/lib/python3.12/site-packages/pip/_internal/commands │
│ /install.py:429 in run                                                                           │
│                                                                                                  │
│   426 │   │   │   )                                                                              │
│   427 │   │   │                                                                                  │
│   428 │   │   │   if build_failures:                                                             │
│ ❱ 429 │   │   │   │   raise InstallationError(                                                   │
│   430 │   │   │   │   │   "Could not build wheels for {}, which is required to "                 │
│   431 │   │   │   │   │   "install pyproject.toml-based projects".format(                        │
│   432 │   │   │   │   │   │   ", ".join(r.name for r in build_failures)  # type: ignore          │
│                                                                                                  │
│ ╭─────────────────────────────────────────── locals ───────────────────────────────────────────╮ │
│ │                                   _ = []                                                     │ │
│ │                                args = ['couchbase']                                          │ │
│ │                      build_failures = [                                                      │ │
│ │                                       │   <InstallRequirement object: couchbase from         │ │
│ │                                       https://files.pythonhosted.org/packages/01/25/c7db34e… │ │
│ │                                       editable=False>                                        │ │
│ │                                       ]                                                      │ │
│ │                       build_tracker = <pip._internal.operations.build.build_tracker.BuildTr… │ │
│ │                                       object at 0x7fc972b5da60>                              │ │
│ │                           directory = <repr-error 'Attempted to access deleted path:         │ │
│ │                                       /tmp/pip-install-0l0o3f1s'>                            │ │
│ │                              finder = <pip._internal.index.package_finder.PackageFinder      │ │
│ │                                       object at 0x7fc9727d5760>                              │ │
│ │                      global_options = []                                                     │ │
│ │ installing_into_current_environment = True                                                   │ │
│ │                       modifying_pip = False                                                  │ │
│ │                             options = <Values at 0x7fc97286e270: {'help': None,              │ │
│ │                                       'debug_mode': True, 'isolated_mode': False,            │ │
│ │                                       'require_venv': False, 'python': None, 'verbose': 1,   │ │
│ │                                       'version': None, 'quiet': 0, 'log': None, 'no_input':  │ │
│ │                                       False, 'keyring_provider': 'auto', 'proxy': '',        │ │
│ │                                       'retries': 5, 'timeout': 15, 'exists_action': [],      │ │
│ │                                       'trusted_hosts': [], 'cert': None, 'client_cert':      │ │
│ │                                       None, 'cache_dir': '/root/.cache/pip',                 │ │
│ │                                       'disable_pip_version_check': False, 'no_color': False, │ │
│ │                                       'no_python_version_warning': False,                    │ │
│ │                                       'features_enabled': [], 'deprecated_features_enabled': │ │
│ │                                       [], 'requirements': [], 'constraints': [],             │ │
│ │                                       'ignore_dependencies': False, 'pre': False,            │ │
│ │                                       'editables': [], 'dry_run': False, 'target_dir': None, │ │
│ │                                       'platforms': None, 'python_version': None,             │ │
│ │                                       'implementation': None, 'abis': None, 'use_user_site': │ │
│ │                                       False, 'root_path': None, 'prefix_path': None,         │ │
│ │                                       'src_dir': '/root/src', 'upgrade': None,               │ │
│ │                                       'upgrade_strategy': 'only-if-needed',                  │ │
│ │                                       'force_reinstall': None, 'ignore_installed': None,     │ │
│ │                                       'ignore_requires_python': None, 'build_isolation':     │ │
│ │                                       True, 'use_pep517': None, 'check_build_deps': False,   │ │
│ │                                       'override_externally_managed': None,                   │ │
│ │                                       'config_settings': None, 'global_options': None,       │ │
│ │                                       'compile': True, 'warn_script_location': True,         │ │
│ │                                       'warn_about_conflicts': True, 'format_control':        │ │
│ │                                       FormatControl(set(), set()), 'prefer_binary': False,   │ │
│ │                                       'require_hashes': False, 'progress_bar': 'on',         │ │
│ │                                       'root_user_action': 'warn', 'index_url':               │ │
│ │                                       'https://pypi.org/simple', 'extra_index_urls': [],     │ │
│ │                                       'no_index': False, 'find_links': [],                   │ │
│ │                                       'json_report_file': None, 'no_clean': False}>          │ │
│ │                            preparer = <pip._internal.operations.prepare.RequirementPreparer  │ │
│ │                                       object at 0x7fc9726e98b0>                              │ │
│ │                                 req = <InstallRequirement object: couchbase editable=False>  │ │
│ │                                reqs = [                                                      │ │
│ │                                       │   <InstallRequirement object: couchbase              │ │
│ │                                       editable=False>                                        │ │
│ │                                       ]                                                      │ │
│ │                       reqs_to_build = [                                                      │ │
│ │                                       │   <InstallRequirement object: couchbase from         │ │
│ │                                       https://files.pythonhosted.org/packages/01/25/c7db34e… │ │
│ │                                       editable=False>                                        │ │
│ │                                       ]                                                      │ │
│ │                     requirement_set = <RequirementSet object; 1 requirement(s): couchbase>   │ │
│ │                            resolver = <pip._internal.resolution.resolvelib.resolver.Resolver │ │
│ │                                       object at 0x7fc972cca000>                              │ │
│ │                                self = <pip._internal.commands.install.InstallCommand object  │ │
│ │                                       at 0x7fc972aadfa0>                                     │ │
│ │                             session = <pip._internal.network.session.PipSession object at    │ │
│ │                                       0x7fc9744a5490>                                        │ │
│ │                       target_python = <pip._internal.models.target_python.TargetPython       │ │
│ │                                       object at 0x7fc9726db100>                              │ │
│ │                     target_temp_dir = None                                                   │ │
│ │                target_temp_dir_path = None                                                   │ │
│ │                    upgrade_strategy = 'to-satisfy-only'                                      │ │
│ │                         wheel_cache = <pip._internal.cache.WheelCache object at              │ │
│ │                                       0x7fc9727d5850>                                        │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │

I added the --debug and it gave me this output:


│3rdparty/python3.12/lib/python3.12/site-packages/pip/_internal/commands │
│ /install.py:429 in run                                                                           │
│                                                                                                  │
│   426 │   │   │   )                                                                              │
│   427 │   │   │                                                                                  │
│   428 │   │   │   if build_failures:                                                             │
│ ❱ 429 │   │   │   │   raise InstallationError(                                                   │
│   430 │   │   │   │   │   "Could not build wheels for {}, which is required to "                 │
│   431 │   │   │   │   │   "install pyproject.toml-based projects".format(                        │
│   432 │   │   │   │   │   │   ", ".join(r.name for r in build_failures)  # type: ignore          │
│                                                                                                  │
│ ╭─────────────────────────────────────────── locals ───────────────────────────────────────────╮ │
│ │                                   _ = []                                                     │ │
│ │                                args = ['couchbase']                                          │ │
│ │                      build_failures = [                                                      │ │
│ │                                       │   <InstallRequirement object: couchbase from         │ │
│ │                                       https://files.pythonhosted.org/packages/01/25/c7db34e… │ │
│ │                                       editable=False>                                        │ │
│ │                                       ]                                                      │ │
│ │                       build_tracker = <pip._internal.operations.build.build_tracker.BuildTr… │ │
│ │                                       object at 0x7fc972b5da60>                              │ │
│ │                           directory = <repr-error 'Attempted to access deleted path:         │ │
│ │                                       /tmp/pip-install-0l0o3f1s'>                            │ │
│ │                              finder = <pip._internal.index.package_finder.PackageFinder      │ │
│ │                                       object at 0x7fc9727d5760>                              │ │
│ │                      global_options = []                                                     │ │
│ │ installing_into_current_environment = True                                                   │ │
│ │                       modifying_pip = False                                                  │ │
│ │                             options = <Values at 0x7fc97286e270: {'help': None,              │ │
│ │                                       'debug_mode': True, 'isolated_mode': False,            │ │
│ │                                       'require_venv': False, 'python': None, 'verbose': 1,   │ │
│ │                                       'version': None, 'quiet': 0, 'log': None, 'no_input':  │ │
│ │                                       False, 'keyring_provider': 'auto', 'proxy': '',        │ │
│ │                                       'retries': 5, 'timeout': 15, 'exists_action': [],      │ │
│ │                                       'trusted_hosts': [], 'cert': None, 'client_cert':      │ │
│ │                                       None, 'cache_dir': '/root/.cache/pip',                 │ │
│ │                                       'disable_pip_version_check': False, 'no_color': False, │ │
│ │                                       'no_python_version_warning': False,                    │ │
│ │                                       'features_enabled': [], 'deprecated_features_enabled': │ │
│ │                                       [], 'requirements': [], 'constraints': [],             │ │
│ │                                       'ignore_dependencies': False, 'pre': False,            │ │
│ │                                       'editables': [], 'dry_run': False, 'target_dir': None, │ │
│ │                                       'platforms': None, 'python_version': None,             │ │
│ │                                       'implementation': None, 'abis': None, 'use_user_site': │ │
│ │                                       False, 'root_path': None, 'prefix_path': None,         │ │
│ │                                       'src_dir': '/root/src', 'upgrade': None,               │ │
│ │                                       'upgrade_strategy': 'only-if-needed',                  │ │
│ │                                       'force_reinstall': None, 'ignore_installed': None,     │ │
│ │                                       'ignore_requires_python': None, 'build_isolation':     │ │
│ │                                       True, 'use_pep517': None, 'check_build_deps': False,   │ │
│ │                                       'override_externally_managed': None,                   │ │
│ │                                       'config_settings': None, 'global_options': None,       │ │
│ │                                       'compile': True, 'warn_script_location': True,         │ │
│ │                                       'warn_about_conflicts': True, 'format_control':        │ │
│ │                                       FormatControl(set(), set()), 'prefer_binary': False,   │ │
│ │                                       'require_hashes': False, 'progress_bar': 'on',         │ │
│ │                                       'root_user_action': 'warn', 'index_url':               │ │
│ │                                       'https://pypi.org/simple', 'extra_index_urls': [],     │ │
│ │                                       'no_index': False, 'find_links': [],                   │ │
│ │                                       'json_report_file': None, 'no_clean': False}>          │ │
│ │                            preparer = <pip._internal.operations.prepare.RequirementPreparer  │ │
│ │                                       object at 0x7fc9726e98b0>                              │ │
│ │                                 req = <InstallRequirement object: couchbase editable=False>  │ │
│ │                                reqs = [                                                      │ │
│ │                                       │   <InstallRequirement object: couchbase              │ │
│ │                                       editable=False>                                        │ │
│ │                                       ]                                                      │ │
│ │                       reqs_to_build = [                                                      │ │
│ │                                       │   <InstallRequirement object: couchbase from         │ │
│ │                                       https://files.pythonhosted.org/packages/01/25/c7db34e… │ │
│ │                                       editable=False>                                        │ │
│ │                                       ]                                                      │ │
│ │                     requirement_set = <RequirementSet object; 1 requirement(s): couchbase>   │ │
│ │                            resolver = <pip._internal.resolution.resolvelib.resolver.Resolver │ │
│ │                                       object at 0x7fc972cca000>                              │ │
│ │                                self = <pip._internal.commands.install.InstallCommand object  │ │
│ │                                       at 0x7fc972aadfa0>                                     │ │
│ │                             session = <pip._internal.network.session.PipSession object at    │ │
│ │                                       0x7fc9744a5490>                                        │ │
│ │                       target_python = <pip._internal.models.target_python.TargetPython       │ │
│ │                                       object at 0x7fc9726db100>                              │ │
│ │                     target_temp_dir = None                                                   │ │
│ │                target_temp_dir_path = None                                                   │ │
│ │                    upgrade_strategy = 'to-satisfy-only'                                      │ │
│ │                         wheel_cache = <pip._internal.cache.WheelCache object at              │ │
│ │                                       0x7fc9727d5850>                                        │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────╯ │

I ran with --debug and it gave me this at the end


3rdparty/python3.12/lib/python3.12/site-packages/pip/_internal/commands 
 /install.py:429 in run                                                                           
                                                                                                  
   426 │   │   │   )                                                                              
   427 │   │   │                                                                                  
   428 │   │   │   if build_failures:                                                             
 ❱ 429 │   │   │   │   raise InstallationError(                                                   
   430 │   │   │   │   │   "Could not build wheels for {}, which is required to "                 
   431 │   │   │   │   │   "install pyproject.toml-based projects".format(                        
   432 │   │   │   │   │   │   ", ".join(r.name for r in build_failures)  # type: ignore          
                                                                                                  
                                        locals 
                                   _ = []                                                     
                                args = ['couchbase']                                          
                      build_failures = [                                                      
                                       │   <InstallRequirement object: couchbase from         
                                       https://files.pythonhosted.org/packages/01/25/c7db34e… 
                                       editable=False>                                        
                                       ]                                                      
                       build_tracker = <pip._internal.operations.build.build_tracker.BuildTr… 
                                       object at 0x7fc972b5da60>                              
                           directory = <repr-error 'Attempted to access deleted path:         
                                       /tmp/pip-install-0l0o3f1s'>                            
                              finder = <pip._internal.index.package_finder.PackageFinder      
                                       object at 0x7fc9727d5760>                              
                      global_options = []                                                     
 installing_into_current_environment = True                                                   
                       modifying_pip = False                                                  
                             options = <Values at 0x7fc97286e270: {'help': None,              
                                       'debug_mode': True, 'isolated_mode': False,            
                                       'require_venv': False, 'python': None, 'verbose': 1,   
                                       'version': None, 'quiet': 0, 'log': None, 'no_input':  
                                       False, 'keyring_provider': 'auto', 'proxy': '',        
                                       'retries': 5, 'timeout': 15, 'exists_action': [],      
                                       'trusted_hosts': [], 'cert': None, 'client_cert':      
                                       None, 'cache_dir': '/root/.cache/pip',                 
                                       'disable_pip_version_check': False, 'no_color': False, 
                                       'no_python_version_warning': False,                    
                                       'features_enabled': [], 'deprecated_features_enabled': 
                                       [], 'requirements': [], 'constraints': [],             
                                       'ignore_dependencies': False, 'pre': False,            
                                       'editables': [], 'dry_run': False, 'target_dir': None, 
                                       'platforms': None, 'python_version': None,             
                                       'implementation': None, 'abis': None, 'use_user_site': 
                                       False, 'root_path': None, 'prefix_path': None,         
                                       'src_dir': '/root/src', 'upgrade': None,               
                                       'upgrade_strategy': 'only-if-needed',                  
                                       'force_reinstall': None, 'ignore_installed': None,     
                                       'ignore_requires_python': None, 'build_isolation':     
                                       True, 'use_pep517': None, 'check_build_deps': False,   
                                       'override_externally_managed': None,                   
                                       'config_settings': None, 'global_options': None,       
                                       'compile': True, 'warn_script_location': True,         
                                       'warn_about_conflicts': True, 'format_control':        
                                       FormatControl(set(), set()), 'prefer_binary': False,   
                                       'require_hashes': False, 'progress_bar': 'on',         
                                       'root_user_action': 'warn', 'index_url':               
                                       'https://pypi.org/simple', 'extra_index_urls': [],     
                                       'no_index': False, 'find_links': [],                   
                                       'json_report_file': None, 'no_clean': False}>          
                            preparer = <pip._internal.operations.prepare.RequirementPreparer  
                                       object at 0x7fc9726e98b0>                              
                                 req = <InstallRequirement object: couchbase editable=False>  
                                reqs = [                                                      
                                       │   <InstallRequirement object: couchbase              
                                       editable=False>                                        
                                       ]                                                      
                       reqs_to_build = [                                                      
                                       │   <InstallRequirement object: couchbase from         
                                       https://files.pythonhosted.org/packages/01/25/c7db34e… 
                                       editable=False>                                        
                                       ]                                                      
                     requirement_set = <RequirementSet object; 1 requirement(s): couchbase>   
                            resolver = <pip._internal.resolution.resolvelib.resolver.Resolver 
                                       object at 0x7fc972cca000>                              
                                self = <pip._internal.commands.install.InstallCommand object  
                                       at 0x7fc972aadfa0>                                     
                             session = <pip._internal.network.session.PipSession object at    
                                       0x7fc9744a5490>                                        
                       target_python = <pip._internal.models.target_python.TargetPython       
                                       object at 0x7fc9726db100>                              
                     target_temp_dir = None                                                   
                target_temp_dir_path = None                                                   
                    upgrade_strategy = 'to-satisfy-only'                                      
                         wheel_cache = <pip._internal.cache.WheelCache object at              
                                       0x7fc9727d5850>                                        

Hi @zephyr91 – I will give some further details below, but I need to first note that we don’t currently support Python 3.12. I wish that was not the case, but the short story is that there have been some changes in CPython as they prep for future Python versions that might allow for a no-GIL option and these changes require us to make some changes in the Couchbase Python SDK C bindings. The ticket to watch for when we add support is PYCBC-1563

That being said, I think Ubuntu should be able to build w/o changes but until we can test, YMMV.

How are you installing Python 3.12 on Ubuntu20.04? I ask because the default is Python 3.8 so you will want to make sure that invoking python3 is appropriately linked to Python 3.12.

The error is that is the when building the Couchbase SDK CMake cannot find some of the development components:

CMake Error at CMakeLists.txt:172 (message):
Python3 not found.

Typically that can be solved with sudo apt-get install python3-dev, but in the case of Ubuntu 20.04, that would provide Python 3.8 ‘things’ and you want Python 3.12 ‘things’. So, back to my question on how you are installing Python 3.12. The ideal path is probably to build from source as you should then all the necessary dev components for the SDK’s build system.

1 Like

Hi Jcasey,

I see. I didn’t know 3.12 wasn’t supported, but the thing is I compiled a python3.12 into a CentOS 8 and was able to install the Couchbase SDK there (although I haven’t tested there yet)

But my python3 in this Ubuntu was compiled manually and I have all the libraries to make the compilation as the evidences shows that I’m able to install everything else except for the Couchbase SDK.

Now, you mentioned that 3.12 is not supported yet and in another O.S I was able to install it through pip. Would you mind helping me understanding this a little bit more? Do you have any document or pre-req list about the libraries required to build Couchbase SDK (the ones used for CMake) I looked in the repo but I found a few requirements.txt but I’m not sure its the right one.

I tried to upload pictures but I’m a new user so I can’t show here, so I’ll copy part of the text output.

[root@host_abc bin]# ./python3
Python 3.12.1 (main, Dec 11 2023, 20:39:26) [GCC 8.5.0 20210514 (Red Hat 8.5.0-21)] on linux
Type “help”, “copyright”, “credits” or “license” for more information.

import couchbase
dir(couchbase)
[‘CXXCBC_METADATA’, ‘List’, ‘Optional’, ‘PYCBC_VERSION’, ‘Tuple’, ‘_CXXCBC_METADATA_JSON’, ‘_METADATA_KEYS’, ‘_PYCBC_LOGGER’, ‘builtins’, ‘cached’, ‘doc’, ‘file’, ‘loader’, ‘name’, ‘package’, ‘path’, ‘spec’, ‘version’, ‘_pycbc_teardown’, ‘_version’, ‘atexit’, ‘configure_console_logger’, ‘configure_logging’, ‘couchbase’, ‘enable_protocol_logger_to_save_network_traffic_to_file’, ‘get_metadata’, ‘get_transactions_protocol’, ‘json’, ‘logging’, ‘partial’, ‘partialmethod’, ‘platform’, ‘pycbc_core’, ‘pycbc_logger’, ‘python_version_info’, ‘shutdown_logger’, ‘ssl’]

[root@host_abc bin]# cat /etc/redhat-release
CentOS Stream release 8

Ubuntu:

root@davilang03:~# python3 -V
Python 3.12.4
root@davilang03:~# which python
root@davilang03:~# ls ^C
root@davilang03:~# python3 -V
Python 3.12.4
root@davilang03:~# which python3
/usr/bin/python3
root@davilang03:~# ls -l /usr/bin/python3
lrwxrwxrwx 1 root root 25 Jun 12 19:07 /usr/bin/python3 → /etc/alternatives/python3
root@davilang03:~# ls -l /etc/alternatives/python3
lrwxrwxrwx 1 root root 56 Jun 12 19:08 /etc/alternatives/python3 → /path/to/python/3rdparty/python3.12/bin/python3
root@davilang03:~# python3 -m pip list
Package Version


3to2 1.1.1
argcomplete 3.3.0
asgiref 3.8.1
attrs 23.2.0

root@davilang03:~# cat /etc/os-release
NAME=“Ubuntu”
VERSION=“20.04.6 LTS (Focal Fossa)”
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME=“Ubuntu 20.04.6 LTS”
VERSION_ID=“20.04”
HOME_URL=“https://www.ubuntu.com/
SUPPORT_URL=“https://help.ubuntu.com/
BUG_REPORT_URL=“Bugs : Ubuntu
PRIVACY_POLICY_URL=“Data privacy | Ubuntu
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

Hi @zephyr91 – If you check out the compat docs, we list what versions are supported by the SDK. The prereqs are mentioned here (select the appropriate OS tab).

I fired up an Ubuntu 20.04 EC2 instance. Here are the steps I followed:

OS Info:

ubuntu@ip-172-31-29-195:~$ cat /etc/os-release 
NAME="Ubuntu"
VERSION="20.04.6 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.6 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

Default Python version:

ubuntu@ip-172-31-29-195:~$ python3 -V
Python 3.8.10

Basic update and packages:

ubuntu@ip-172-31-29-195:~$ sudo apt-get update -y
ubuntu@ip-172-31-29-195:~$ sudo apt-get install -y git-all wget vim zip unzip

Install prereqs to build Python:

ubuntu@ip-172-31-29-195:~$ sudo apt-get install -y libffi-dev build-essential libssl-dev make zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libreadline-dev

Build Python 3.12.4

ubuntu@ip-172-31-29-195:~$ export PYTHON_VERSION=3.12.4
ubuntu@ip-172-31-29-195:~$ cd /usr/src
ubuntu@ip-172-31-29-195:/usr/src$ sudo wget https://www.python.org/ftp/python/$PYTHON_VERSION/Python-$PYTHON_VERSION.tgz
ubuntu@ip-172-31-29-195:/usr/src$ sudo tar -xf Python-$PYTHON_VERSION.tgz
ubuntu@ip-172-31-29-195:/usr/src$ cd Python-$PYTHON_VERSION
ubuntu@ip-172-31-29-195:/usr/src/Python-3.12.4$ sudo ./configure --enable-optimizations
ubuntu@ip-172-31-29-195:/usr/src/Python-3.12.4$ sudo make -j 2 && sudo make altinstall

Cleanup:

ubuntu@ip-172-31-29-195:/usr/src/Python-3.12.4$ cd ..
ubuntu@ip-172-31-29-195:/usr/src$ sudo rm -rf Python-$PYTHON_VERSION
ubuntu@ip-172-31-29-195:/usr/src$ sudo rm Python-$PYTHON_VERSION.tgz

Verify:

ubuntu@ip-172-31-29-195:/usr/src$
ubuntu@ip-172-31-29-195:~$ python3.12 -V
Python 3.12.4

Setup & activate virtual env:

ubuntu@ip-172-31-29-195:~$ python3.12 -m venv /tmp/cb4x-py3.12.4
ubuntu@ip-172-31-29-195:~$ source /tmp/cb4x-py3.12.4
-bash: source: /tmp/cb4x-py3.12.4: is a directory
ubuntu@ip-172-31-29-195:~$ source /tmp/cb4x-py3.12.4/bin/activate
(cb4x-py3.12.4) ubuntu@ip-172-31-29-195:~$ python3 -V
Python 3.12.4

Install Couchbase SDK prereqs:

(cb4x-py3.12.4) ubuntu@ip-172-31-29-195:~$ python3 -m pip install --upgrade pip setuptools wheel

Install Couchbase SDK:
Can use -v -v -v or --log <path to log file> for verbose output. I like having the log file :grinning:

(cb4x-py3.12.4) ubuntu@ip-172-31-29-195:~$ python3 -m pip install couchbase --no-binary couchbase --log /tmp/couchbase_python_sdk_install.log
Collecting couchbase
  Downloading couchbase-4.2.1.tar.gz (6.6 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.6/6.6 MB 15.2 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: couchbase
  Building wheel for couchbase (pyproject.toml) ... done
  Created wheel for couchbase: filename=couchbase-4.2.1-cp312-cp312-linux_x86_64.whl size=105556816 sha256=42d9cc67fd72c169404238d5dec51440e5ef0f463165864467b5c027d2019132
  Stored in directory: /home/ubuntu/.cache/pip/wheels/73/86/3c/a7357825ec2250b0cdf68f84017f68b87a5ce6054566aef7c5
Successfully built couchbase
Installing collected packages: couchbase
Successfully installed couchbase-4.2.1

Verify SDK is installed:

(cb4x-py3.12.4) ubuntu@ip-172-31-29-195:~$ python3 -m pip show couchbase
Name: couchbase
Version: 4.2.1
Summary: Python Client for Couchbase
Home-page: https://github.com/couchbase/couchbase-python-client
Author: Couchbase, Inc.
Author-email: PythonPackage@couchbase.com
License: Apache License 2.0
Location: /tmp/cb4x-py3.12.4/lib/python3.12/site-packages
Requires: 
Required-by: 

Verify SDK is functioning:

(cb4x-py3.12.4) ubuntu@ip-172-31-29-195:~$ python3 -c "from couchbase import get_metadata;import pprint;pprint.pprint(get_metadata(detailed=True))"
{'__cplusplus': '201703',
 'asio': '1.29.0',
 'build_timestamp': '2024-06-18 02:02:07',
 'cc': 'GNU 9.4.0',
 'cmake_build_type': 'Release',
 'cmake_version': '3.29.5',
 'compile_definitions': 'HAVE_BACKTRACE=1;HAVE_DLADDR=1;_GNU_SOURCE=1;SPDLOG_COMPILED_LIB;SPDLOG_FMT_EXTERNAL;ASIO_STANDALONE;ASIO_NO_DEPRECATED',
 'compile_features': 'cxx_std_17;cxx_std_11;cxx_std_17;cxx_std_17',
 'compile_flags': '',
 'compile_options': '-fdiagnostics-color=always;-ggdb3',
 'cpu': 'x86_64',
 'cxx': 'GNU 9.4.0',
 'fmt': '10.2.1',
 'hdr_histogram_c': '0.11.8',
 'libc': 'glibc 2.31',
 'link_depends': '',
 'link_flags': '',
 'link_libraries': 'project_options;project_warnings;fmt::fmt;spdlog::spdlog;couchbase_backtrace;couchbase_logger;couchbase_platform;couchbase_meta;couchbase_crypto;couchbase_sasl;couchbase_tracing;couchbase_metrics;Microsoft.GSL::GSL;asio;llhttp::llhttp;taocpp::json;snappy;jsonsl;hdr_histogram_static',
 'link_options': '',
 'llhttp': '9.2.0',
 'mozilla_ca_bundle_date': 'Mon Mar 11 15:25:27 2024 GMT',
 'mozilla_ca_bundle_embedded': True,
 'mozilla_ca_bundle_sha256': '1794c1d4f7055b7d02c2170337b61b48a2ef6c90d77e95444fd2596f4cac609f',
 'mozilla_ca_bundle_size': 147,
 'openssl_config_dir': '/usr/lib/ssl',
 'openssl_crypto_interface_imported_location': '/usr/lib/x86_64-linux-gnu/libcrypto.so',
 'openssl_crypto_interface_include_directories': '/usr/include',
 'openssl_crypto_interface_link_libraries': '',
 'openssl_default_cert_dir': '/usr/lib/ssl/certs',
 'openssl_default_cert_dir_env': 'SSL_CERT_DIR',
 'openssl_default_cert_file': '/usr/lib/ssl/cert.pem',
 'openssl_default_cert_file_env': 'SSL_CERT_FILE',
 'openssl_headers': 'OpenSSL 1.1.1f  31 Mar 2020',
 'openssl_pkg_config_interface_include_directories': '',
 'openssl_pkg_config_interface_link_libraries': '',
 'openssl_runtime': 'OpenSSL 1.1.1f  31 Mar 2020',
 'openssl_ssl_imported_location': '/usr/lib/x86_64-linux-gnu/libssl.so',
 'openssl_ssl_interface_include_directories': '/usr/include;/usr/include',
 'openssl_ssl_interface_link_libraries': 'OpenSSL::Crypto',
 'platform': 'Linux-5.15.0-1047-aws',
 'platform_name': 'Linux',
 'platform_version': '5.15.0-1047-aws',
 'post_linked_openssl': 'ON',
 'revision': '',
 'semver': '1.0.0+',
 'snappy': '1.1.10',
 'snapshot': False,
 'spdlog': '1.13.0',
 'static_boringssl': 'false',
 'static_openssl': False,
 'static_stdlib': False,
 'txns_forward_compat_extensions': 'TI,MO,BM,QU,SD,BF3787,BF3705,BF3838,RC,UA,CO,BF3791,CM,SI,QC,IX,TS,PU',
 'txns_forward_compat_protocol_version': '2.0',
 'version': '1.0.0',
 'version_build': 0,
 'version_major': 1,
 'version_minor': 0,
 'version_patch': 0}
1 Like

Thank you. I’m going to review here as I noticed one lib from the pre-req was missing:

2024-06-18 10:46:52 install libnspr4-dev:amd64 2:4.35-0ubuntu0.20.04.1
2024-06-18 10:46:52 install libnss3-dev:amd64 2:3.98-0ubuntu0.20.04.2

I’ll update here later.

Strange, something else might be missing for me:

I have the pre-reqs:

libnss3-dev libreadline-dev
Reading package lists… Done
Building dependency tree
Reading state information… Done
libffi-dev is already the newest version (3.3-4).
libgdbm-dev is already the newest version (1.18.1-5).
libreadline-dev is already the newest version (8.0-4).
make is already the newest version (4.2.1-1.2).
build-essential is already the newest version (12.8ubuntu1.1).
libncurses5-dev is already the newest version (6.2-0ubuntu2.1).
libnss3-dev is already the newest version (2:3.98-0ubuntu0.20.04.2).
libssl-dev is already the newest version (1.1.1f-1ubuntu2.22).
zlib1g-dev is already the newest version (1:1.2.11.dfsg-2ubuntu1.5).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root@davilang03:~#

My python3 is properly compiled:

root@davilang03:~# python3 -V
Python 3.12.4
root@davilang03:~# python3
Python 3.12.4 (main, Jun 12 2024, 17:19:12) [GCC 9.4.0] on linux
Type “help”, “copyright”, “credits” or “license” for more information.
>>> import ssl
>>> dir(ssl)
[‘ALERT_DESCRIPTION_ACCESS_DENIED’, ‘ALERT_DESCRIPTION_BAD_CERTIFICATE’,

But still it is failing for me when it tries to build, however it takes more time to give an error so I assume it has passed the initial problem:

      Python SDK version: 4.2.1
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-x86_64-cpython-312
      creating build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/analytics.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/__init__.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/cluster.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/bucket.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/search.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/n1ql.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/binary_collection.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/scope.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/views.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      copying txcouchbase/collection.py -> build/lib.linux-x86_64-cpython-312/txcouchbase
      creating build/lib.linux-x86_64-cpython-312/couchbase
        ...........
      creating build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/analytics.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/__init__.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/cluster.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/datastructures.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/bucket.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/search.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/n1ql.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/binary_collection.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/kv_range_scan.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/scope.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/views.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      copying acouchbase/collection.py -> build/lib.linux-x86_64-cpython-312/acouchbase
      creating build/lib.linux-x86_64-cpython-312/txcouchbase/management
      copying txcouchbase/management/buckets.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management
      copying txcouchbase/management/analytics.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management
      copying txcouchbase/management/__init__.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management
      copying txcouchbase/management/collections.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management
      copying txcouchbase/management/search.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management
      copying txcouchbase/management/queries.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management
      copying txcouchbase/management/views.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management
      copying txcouchbase/management/users.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management
      creating build/lib.linux-x86_64-cpython-312/txcouchbase/logic
      copying txcouchbase/logic/__init__.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/logic
      copying txcouchbase/logic/wrappers.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/logic
      creating build/lib.linux-x86_64-cpython-312/txcouchbase/management/logic
      copying txcouchbase/management/logic/__init__.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management/logic
      copying txcouchbase/management/logic/wrappers.py -> build/lib.linux-x86_64-cpython-312/txcouchbase/management/logic
      creating build/lib.linux-x86_64-cpython-312/couchbase/encryption
      copying couchbase/encryption/keyring.py -> build/lib.linux-x86_64-cpython-312/couchbase/encryption
      copying couchbase/encryption/crypto_manager.py -> build/lib.linux-x86_64-cpython-312/couchbase/encryption
      copying couchbase/encryption/__init__.py -> build/lib.linux-x86_64-cpython-312/couchbase/encryption
      copying couchbase/encryption/decrypter.py -> build/lib.linux-x86_64-cpython-312/couchbase/encryption
      copying couchbase/encryption/encryption_result.py -> build/lib.linux-x86_64-cpython-312/couchbase/encryption
      copying couchbase/encryption/encrypter.py -> build/lib.linux-x86_64-cpython-312/couchbase/encryption
      copying couchbase/encryption/key.py -> build/lib.linux-x86_64-cpython-312/couchbase/encryption
      creating build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/buckets.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/analytics.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/__init__.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/eventing.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/collections.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/options.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/search.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/queries.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/views.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      copying couchbase/management/users.py -> build/lib.linux-x86_64-cpython-312/couchbase/management
      creating build/lib.linux-x86_64-cpython-312/couchbase/transactions
      copying couchbase/transactions/transaction_keyspace.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions
      copying couchbase/transactions/__init__.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions
      copying couchbase/transactions/transaction_get_result.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions
      copying couchbase/transactions/transaction_query_results.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions
      copying couchbase/transactions/transactions.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions
      copying couchbase/transactions/transaction_result.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions
      creating build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/analytics.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/vector_search.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/__init__.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/cluster.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/options.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/search_request.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/search_queries.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/bucket.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/search.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/n1ql.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/kv_range_scan.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/scope.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/views.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/supportability.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/wrappers.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      copying couchbase/logic/collection.py -> build/lib.linux-x86_64-cpython-312/couchbase/logic
      creating build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/buckets_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/search_index_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/view_index_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/__init__.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/users_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic      copying couchbase/management/logic/analytics_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/query_index_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/eventing_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/collections_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      copying couchbase/management/logic/wrappers.py -> build/lib.linux-x86_64-cpython-312/couchbase/management/logic
      creating build/lib.linux-x86_64-cpython-312/couchbase/transactions/logic
      copying couchbase/transactions/logic/__init__.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions/logic
      copying couchbase/transactions/logic/transactions_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions/logic
      copying couchbase/transactions/logic/attempt_context_logic.py -> build/lib.linux-x86_64-cpython-312/couchbase/transactions/logic
      creating build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/buckets.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/analytics.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/__init__.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/eventing.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/collections.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/search.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/queries.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/views.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      copying acouchbase/management/users.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management
      creating build/lib.linux-x86_64-cpython-312/acouchbase/transactions
      copying acouchbase/transactions/__init__.py -> build/lib.linux-x86_64-cpython-312/acouchbase/transactions
      copying acouchbase/transactions/transactions.py -> build/lib.linux-x86_64-cpython-312/acouchbase/transactions
      creating build/lib.linux-x86_64-cpython-312/acouchbase/logic
      copying acouchbase/logic/__init__.py -> build/lib.linux-x86_64-cpython-312/acouchbase/logic
      copying acouchbase/logic/wrappers.py -> build/lib.linux-x86_64-cpython-312/acouchbase/logic
      creating build/lib.linux-x86_64-cpython-312/acouchbase/management/logic
      copying acouchbase/management/logic/__init__.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management/logic
      copying acouchbase/management/logic/wrappers.py -> build/lib.linux-x86_64-cpython-312/acouchbase/management/logic
      running build_ext
      -- The C compiler identification is GNU 9.4.0
      -- The CXX compiler identification is GNU 9.4.0
      -- Detecting C compiler ABI info
      -- Detecting C compiler ABI info - done
      -- Check for working C compiler: /usr/bin/cc - skipped
      -- Detecting C compile features
      -- Detecting C compile features - done
      -- Detecting CXX compiler ABI info
      -- Detecting CXX compiler ABI info - done
      -- Check for working CXX compiler: /usr/bin/c++ - skipped
      -- Detecting CXX compile features
      -- Detecting CXX compile features - done
      -- Could NOT find Python3 (missing: Python3_INCLUDE_DIRS Development.Module) (found suitable version "3.9.5", minimum required is "3.6")
      -- USE_STATIC_BORINGSSL=OFF
      -- Not mac or windows, so assuming OpenSSL v1.1 is installed and findable...
      -- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "1.1.1f")
      -- Adding /usr/include to include dirs...
      -- USE_STATIC_STDLIB=OFF
      -- CPM_SOURCE_CACHE=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache
      -- CMake version 3.29.6
      -- Couchbase C++ client 1.0.0.0, master: OFF
      -- System: Linux, 5.15.146.1-microsoft-standard-WSL2, x86_64
      -- CMAKE_SOURCE_DIR=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f
      -- CMAKE_BINARY_DIR=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/build/temp.linux-x86_64-cpython-312
      -- ccache found and enabled
      -- Looking for backtrace
      -- Looking for backtrace - found
      -- Looking for dladdr
      -- Looking for dladdr - found
      -- Performing Test CMAKE_HAVE_LIBC_PTHREAD
      -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
      -- Looking for pthread_create in pthreads
      -- Looking for pthread_create in pthreads - not found
      -- Looking for pthread_create in pthread
      -- Looking for pthread_create in pthread - found
      -- Found Threads: TRUE
      -- Found Git: /usr/bin/git (found version "2.25.1")
      CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
        CPM: Calling git status on folder
        /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt
        failed
      Call Stack (most recent call first):
        deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
        deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:20 (cpmaddpackage)
        deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


      -- Version: 10.2.1
      -- Build type: Release
      -- CPM: Adding package fmt@10.2.1 (10.2.1 at /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt)
      CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
        CPM: Calling git status on folder
        /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog
        failed
      Call Stack (most recent call first):
        deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
        deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:38 (cpmaddpackage)
        deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


      -- Build spdlog: 1.13.0
      -- Build type: Release
      -- CPM: Adding package spdlog@1.13.0 (v1.13.0 at /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog)
      CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
        CPM: Calling git status on folder
        /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/gsl/c5694f1b5eff4b83dc9ba3f63a1696cdb2beaee3/gsl
        failed
      Call Stack (most recent call first):
        deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
        deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:56 (cpmaddpackage)
        deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


      -- CPM: Adding package gsl@4.0.0 (v4.0.0 at /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/gsl/c5694f1b5eff4b83dc9ba3f63a1696cdb2beaee3/gsl)
      CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
        CPM: Calling git status on folder
        /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/hdr_histogram/8aac176f50c5d02f8248eb1608d208220a4bc076/hdr_histogram
        failed
      Call Stack (most recent call first):
        deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
        deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:71 (cpmaddpackage)
        deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


      -- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11")
      -- Looking for ceil in m
      -- Looking for ceil in m - found
      -- Looking for clock_gettime in rt
      -- Looking for clock_gettime in rt - found
      -- CPM: Adding package hdr_histogram@0.11.8 (0.11.8 at /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/hdr_histogram/8aac176f50c5d02f8248eb1608d208220a4bc076/hdr_histogram)
      CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
        CPM: Calling git status on folder
        /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/llhttp/b74a6759ffeff2e9b72f62f790afbc73362a526b/llhttp
        failed
      Call Stack (most recent call first):
        deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
        deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:91 (cpmaddpackage)
        deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


      --
      --
      -- Project configure summary:
      --
      --   CMake build type .................: RELEASE
      --   Install prefix ...................: /usr/local
      --   Build shared library .............: OFF
      --   Build static library .............: ON
      --
      -- CPM: Adding package llhttp@9.2.0 (release/v9.2.0 at /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/llhttp/b74a6759ffeff2e9b72f62f790afbc73362a526b/llhttp)
      CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
        CPM: Calling git status on folder
        /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/snappy/76d5cfe9eb57e13784ae53647f505edbe9341bdf/snappy
        failed
      Call Stack (most recent call first):
        deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
        deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:110 (cpmaddpackage)
        deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


      CMake Deprecation Warning at deps/couchbase-cxx-cache/snappy/76d5cfe9eb57e13784ae53647f505edbe9341bdf/snappy/CMakeLists.txt:29 (cmake_minimum_required):
        Compatibility with CMake < 3.5 will be removed from a future version of
        CMake.

        Update the VERSION argument <min> value or use a ...<max> suffix to tell
        CMake that the project does not need compatibility with older versions.


      -- Looking for sys/mman.h
      -- Looking for sys/mman.h - found
      -- Looking for sys/resource.h
      -- Looking for sys/resource.h - found
      -- Looking for sys/time.h
      -- Looking for sys/time.h - found
      -- Looking for sys/uio.h
      -- Looking for sys/uio.h - found
      -- Looking for unistd.h
      -- Looking for unistd.h - found
      -- Looking for windows.h
      -- Looking for windows.h - not found
      -- Looking for zlibVersion in z
      -- Looking for zlibVersion in z - found
      -- Looking for lzo1x_1_15_compress in lzo2
      -- Looking for lzo1x_1_15_compress in lzo2 - found
      -- Looking for LZ4_compress_default in lz4
      -- Looking for LZ4_compress_default in lz4 - found
      -- Performing Test HAVE_VISUAL_STUDIO_ARCH_AVX
      -- Performing Test HAVE_VISUAL_STUDIO_ARCH_AVX - Failed
      -- Performing Test HAVE_VISUAL_STUDIO_ARCH_AVX2
      -- Performing Test HAVE_VISUAL_STUDIO_ARCH_AVX2 - Failed
      -- Performing Test HAVE_CLANG_MAVX
      -- Performing Test HAVE_CLANG_MAVX - Success
      -- Performing Test HAVE_CLANG_MBMI2
      -- Performing Test HAVE_CLANG_MBMI2 - Success
      -- Performing Test SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS
      -- Performing Test SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS - Success
      -- Performing Test HAVE_BUILTIN_EXPECT
      -- Performing Test HAVE_BUILTIN_EXPECT - Success
      -- Performing Test HAVE_BUILTIN_CTZ
      -- Performing Test HAVE_BUILTIN_CTZ - Success
      -- Performing Test HAVE_ATTRIBUTE_ALWAYS_INLINE
      -- Performing Test HAVE_ATTRIBUTE_ALWAYS_INLINE - Success
      -- Performing Test SNAPPY_HAVE_SSSE3
      -- Performing Test SNAPPY_HAVE_SSSE3 - Failed
      -- Performing Test SNAPPY_HAVE_X86_CRC32
      -- Performing Test SNAPPY_HAVE_X86_CRC32 - Failed
      -- Performing Test SNAPPY_HAVE_NEON_CRC32
      -- Performing Test SNAPPY_HAVE_NEON_CRC32 - Failed
      -- Performing Test SNAPPY_HAVE_BMI2
      -- Performing Test SNAPPY_HAVE_BMI2 - Failed
      -- Performing Test SNAPPY_HAVE_NEON
      -- Performing Test SNAPPY_HAVE_NEON - Failed
      -- Looking for mmap
      -- Looking for mmap - found
      -- Looking for sysconf
      -- Looking for sysconf - found
      -- CPM: Adding package snappy@1.1.10 (1.1.10 at /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/snappy/76d5cfe9eb57e13784ae53647f505edbe9341bdf/snappy)
      CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
        CPM: Calling git status on folder
        /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/json/4c7c23ac69aa1d72b3a9295ac9aceac10d32d9a1/json
        failed
      Call Stack (most recent call first):
        deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
        deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:135 (cpmaddpackage)
        deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


      -- Adding PEGTL as submodule from external/PEGTL
      -- Using std::filesystem
      -- CPM: Adding package json@1.0.0-beta.14 (1.0.0-beta.14 at /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/json/4c7c23ac69aa1d72b3a9295ac9aceac10d32d9a1/json)
      CMake Warning at deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:429 (message):
        CPM: Calling git status on folder
        /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio
        failed
      Call Stack (most recent call first):
        deps/couchbase-cxx-cache/cpm/CPM_0.38.6.cmake:736 (cpm_check_git_working_dir_is_clean)
        deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake:158 (cpmaddpackage)
        deps/couchbase-cxx-client/CMakeLists.txt:66 (include)


      -- CPM: Adding package asio@1.29.0 (asio-1-29-0 at /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio)
      -- Declaring system library snappy
      -- Declaring system library llhttp::llhttp
      -- Declaring system library hdr_histogram_static
      -- Declaring system library Microsoft.GSL::GSL
      -- Declaring system library spdlog::spdlog
      -- Declaring system library fmt::fmt
      -- Declaring system library asio
      -- Declaring system library taocpp::pegtl
      -- Declaring system library taocpp::json
      -- COUCHBASE_CXX_CLIENT_POST_LINKED_OPENSSL is set, assuming OpenSSL headers and symbols are available already
      -- Using /tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/build/temp.linux-x86_64-cpython-312/deps/couchbase-cxx-client to keep Mozilla certificates
      -- Download CA bundle checksum: https://curl.se/ca/cacert.pem.sha256
      -- Download CA bundle: https://curl.se/ca/cacert.pem
      fatal: not a git repository (or any of the parent directories): .git
      fatal: not a git repository (or any of the parent directories): .git
      -- Using std::filesystem
      -- COUCHBASE_CXX_BINARY_DIR=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/build/temp.linux-x86_64-cpython-312/deps/couchbase-cxx-client
      CMake Error at CMakeLists.txt:172 (message):
        Python3 not found.

.............

         return _build_backend().build_wheel(wheel_directory, config_settings,
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 415, in build_wheel
          return self._build_with_temp_dir(
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 397, in _build_with_temp_dir
          self.run_setup()
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 313, in run_setup
          exec(code, locals())
        File "<string>", line 44, in <module>
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/__init__.py", line 103, in setup
          return distutils.core.setup(**attrs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 184, in setup
          return run_commands(dist)
                 ^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 200, in run_commands
          dist.run_commands()
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
          self.run_command(cmd)
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 976, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/command/bdist_wheel.py", line 373, in run
          self.run_command("build")
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
          self.distribution.run_command(command)
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 976, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build.py", line 132, in run
          self.run_command(cmd_name)
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
          self.distribution.run_command(command)
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 976, in run_command
          super().run_command(command)
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/command/build_ext.py", line 93, in run
          _build_ext.run(self)
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 359, in run
          self.build_extensions()
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 479, in build_extensions
          self._build_extensions_serial()
        File "/tmp/pip-build-env-nq43cwdl/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 505, in _build_extensions_serial
          self.build_extension(ext)
        File "/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/pycbc_build_setup.py", line 196, in build_extension
          subprocess.check_call(cmake_config_args,  # nosec
        File "/XPISTORAGE/Fusion_Tools/3rdparty/python3.12/lib/python3.12/subprocess.py", line 413, in check_call
          raise CalledProcessError(retcode, cmd)
      subprocess.CalledProcessError: Command '['/tmp/pip-build-env-nq43cwdl/overlay/bin/cmake', '/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f', '-DCMAKE_BUILD_TYPE=Release', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/build/lib.linux-x86_64-cpython-312/couchbase', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/build/lib.linux-x86_64-cpython-312/couchbase', '-DUSE_STATIC_BORINGSSL:BOOL=OFF', '-DOPENSSL_VERSION=1.1.1w', '-DUSE_STATIC_STDLIB:BOOL=OFF', '-DCPM_DOWNLOAD_ALL=OFF', '-DCPM_USE_NAMED_CACHE_DIRECTORIES=ON', '-DCPM_USE_LOCAL_PACKAGES=OFF', '-DCPM_SOURCE_CACHE=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache', '-DCOUCHBASE_CXX_CLIENT_EMBED_MOZILLA_CA_BUNDLE_ROOT=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/deps/couchbase-cxx-cache"']' returned non-zero exit status 1.
      [end of output]

Hi @zephyr91 – It looks to be becuase CMake is still unable to find Python 3.12 (you can see this in the config stage of your log):

-- Could NOT find Python3 (missing: Python3_INCLUDE_DIRS Development.Module) (found suitable version "3.9.5", minimum required is "3.6")

Which ultimately leads to:

      -- Using std::filesystem
      -- COUCHBASE_CXX_BINARY_DIR=/tmp/pip-install-0snjso1c/couchbase_9b633adc96c64977b5b40774ab42837f/build/temp.linux-x86_64-cpython-312/deps/couchbase-cxx-client
      CMake Error at CMakeLists.txt:172 (message):
        Python3 not found.

I would expect to see:

-- Found Python3: /tmp/cb4x-py3.12.4/bin/python3.12 (found suitable version "3.12.4", minimum required is "3.6") found components: Interpreter Development.Module

which would provide something like the following later:

-- Using std::filesystem
-- COUCHBASE_CXX_BINARY_DIR=/tmp/pip-install-r573rb4q/couchbase_91f7dabc928d4b17ad65102d2432e8ce/build/temp.linux-x86_64-cpython-312/deps/couchbase-cxx-client
-- Python executable: /tmp/cb4x-py3.12.4/bin/python3.12
-- Python include dir: /usr/local/include/python3.12
-- Python libs:

So, there is something in your environment that is still pointing to Python 3.9 and not Python 3.12. Have you created a virtual environment to run in?

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.