Overslaan naar inhoud
CTech Digital
  • Startpagina
  • Odoo services
  • AI services
  • Contact
  • 0
  • Nederlands (BE) English (UK) Français
CTech Digital
  • 0
    • Startpagina
    • Odoo services
    • AI services
    • Contact
  • Nederlands (BE) English (UK) Français

Linux compile ObjectCommunicationLibrary transcript

  • Alle blogs
  • Daily blog
  • Linux compile ObjectCommunicationLibrary transcript
  • 23 juli 2025 in
    CTech Metrology, Luc Wens

    Looking at your terminal output, you're encountering a common issue when setting up a C++ development environment on Ubuntu. The main problems are:

    1. Missing C++ compiler: CMake can't find a C++ compiler (CMAKE_CXX_COMPILER)
    2. Missing ninja build system: You tried to install ninja but the package name is different

    Here's how to fix these issues:

    Install the missing packages:

    bash

    # Install C++ compiler
    sudo apt install g++
    
    # Install ninja build system (note the correct package name)
    sudo apt install ninja-build
    
    # Also install build-essential for complete development tools
    sudo apt install build-essential

    After installing these packages, try again:

    bash

    # Test that everything is installed
    cmake --version
    g++ --version
    ninja --version
    
    # Now try your cmake configuration again
    cmake -B out/build/x64-Debug
    
    # If that works, try vcpkg install
    ./vcpkg/vcpkg install

    Alternative approach if you continue having issues:

    If you're still having problems, you can explicitly set the compiler:

    bash

    # Set environment variables
    export CC=gcc
    export CXX=g++
    
    # Then run cmake
    cmake -B out/build/x64-Debug -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++

    The key issue was that you had installed cmake and gcc (C compiler) but were missing g++ (C++ compiler) and ninja-build. Ubuntu's package for ninja is called ninja-build, not just ninja.

    Let me know if you run into any other issues after installing these packages!

    Retry

    L

    luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ cmake -B out/build/x64-Debug -- The CXX compiler identification is GNU 11.4.0 -- 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 -- -- 23.4.0 -- Performing Test protobuf_HAVE_LD_VERSION_SCRIPT -- Performing Test protobuf_HAVE_LD_VERSION_SCRIPT - Success -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -- Performing Test protobuf_HAVE_BUILTIN_ATOMICS -- Performing Test protobuf_HAVE_BUILTIN_ATOMICS - Success CMake Warning at out/build/x64-Debug/_deps/protobuf-src/third_party/abseil-cpp/CMakeLists.txt:72 (message): A future Abseil release will default ABSL_PROPAGATE_CXX_STD to ON for CMake 3.8 and up. We recommend enabling this option to ensure your project still builds correctly. -- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 -- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 - Success CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR) Call Stack (most recent call first): /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE) /usr/share/cmake-3.22/Modules/FindOpenSSL.cmake:574 (find_package_handle_standard_args) CMakeLists.txt:39 (find_package)

    Edit

    Great progress! The C++ compiler is now working, but you're missing some dependencies. You need to install OpenSSL and ZLIB development libraries. Here's how to fix this:

    Install the missing dependencies:

    bash

    # Install OpenSSL development libraries
    sudo apt install libssl-dev
    
    # Install ZLIB development library
    sudo apt install zlib1g-dev
    
    # Optional: Install pkg-config which helps CMake find libraries
    sudo apt install pkg-config

    After installing these packages, try cmake again:

    bash

    # Clean the build directory first (recommended)
    rm -rf out/build/x64-Debug
    
    # Run cmake again
    cmake -B out/build/x64-Debug

    If you want to install all common development dependencies at once:

    bash

    sudo apt install build-essential libssl-dev zlib1g-dev libbz2-dev \
        libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev \
        libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev \
        python3-openssl git pkg-config

    This will install a comprehensive set of development libraries that are commonly needed for C++ projects.

    The errors you're seeing are typical when building C++ projects that depend on system libraries. OpenSSL is particularly common for networking and cryptography, while ZLIB is used for compression. Once these are installed, your cmake configuration should complete successfully.

    Try the installation and let me know if you encounter any other issues!

    Retry

    L

    luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ cmake -B out/build/x64-Debug -- The CXX compiler identification is GNU 11.4.0 -- 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 -- -- 23.4.0 -- Performing Test protobuf_HAVE_LD_VERSION_SCRIPT -- Performing Test protobuf_HAVE_LD_VERSION_SCRIPT - Success -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -- Performing Test protobuf_HAVE_BUILTIN_ATOMICS -- Performing Test protobuf_HAVE_BUILTIN_ATOMICS - Success CMake Warning at out/build/x64-Debug/_deps/protobuf-src/third_party/abseil-cpp/CMakeLists.txt:72 (message): A future Abseil release will default ABSL_PROPAGATE_CXX_STD to ON for CMake 3.8 and up. We recommend enabling this option to ensure your project still builds correctly. -- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 -- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 - Success CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY OPENSSL_INCLUDE_DIR) Call Stack (most recent call first): /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE) /usr/share/cmake-3.22/Modules/FindOpenSSL.cmake:574 (find_package_handle_standard_args) CMakeLists.txt:39 (find_package)

    Edit

    It looks like you're still getting the same error, which means the OpenSSL and ZLIB development packages haven't been installed yet. Let me help you install them:

    Install the missing dependencies:

    bash

    # Install OpenSSL development libraries
    sudo apt install libssl-dev
    
    # Install ZLIB development library
    sudo apt install zlib1g-dev
    
    # Verify they're installed
    dpkg -l | grep libssl-dev
    dpkg -l | grep zlib1g-dev

    If the packages are installed but CMake still can't find them, try:

    bash

    # Check where OpenSSL is installed
    pkg-config --cflags --libs openssl
    
    # If pkg-config is missing, install it
    sudo apt install pkg-config
    
    # You can also manually check for the libraries
    ls /usr/lib/x86_64-linux-gnu/libssl*
    ls /usr/lib/x86_64-linux-gnu/libz*
    ls /usr/include/openssl/

    Alternative approach - use vcpkg to manage dependencies:

    Since you're already using vcpkg, you might want to let it handle these dependencies instead of using system packages:

    bash

    # Install dependencies through vcpkg
    ./vcpkg/vcpkg install openssl zlib
    
    # Then configure cmake to use vcpkg toolchain
    cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake

    Clean build and try again:

    bash

    # Clean the build directory
    rm -rf out/build/x64-Debug
    
    # Try cmake again after installing the packages
    cmake -B out/build/x64-Debug

    Could you run the installation commands and let me know what output you get? If you're still having issues, please share the output of:

    bash

    sudo apt install libssl-dev zlib1g-dev

    This will help me see if there are any installation errors.

    Retry

    L

    luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ cmake -B out/build/x64-Debug -- The C compiler identification is GNU 11.4.0 -- The CXX compiler identification is GNU 11.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 -- -- 23.4.0 -- Performing Test protobuf_HAVE_LD_VERSION_SCRIPT -- Performing Test protobuf_HAVE_LD_VERSION_SCRIPT - Success -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11") -- Performing Test protobuf_HAVE_BUILTIN_ATOMICS -- Performing Test protobuf_HAVE_BUILTIN_ATOMICS - Success CMake Warning at out/build/x64-Debug/_deps/protobuf-src/third_party/abseil-cpp/CMakeLists.txt:72 (message): A future Abseil release will default ABSL_PROPAGATE_CXX_STD to ON for CMake 3.8 and up. We recommend enabling this option to ensure your project still builds correctly. -- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 -- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 - Success -- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "3.0.2") CMake Warning at /usr/share/cmake-3.22/Modules/FindBoost.cmake:2201 (message): No header defined for asio; skipping header check (note: header-only libraries have no designated component) Call Stack (most recent call first): CMakeLists.txt:40 (find_package) CMake Error at /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find Boost (missing: Boost_INCLUDE_DIR system asio) (Required is at least version "1.74.0") Call Stack (most recent call first): /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE) /usr/share/cmake-3.22/Modules/FindBoost.cmake:2360 (find_package_handle_standard_args) CMakeLists.txt:40 (find_package) -- Configuring incomplete, errors occurred! See also "/home/luc/Projects/ObjectCommunicationLibrary/out/build/x64-Debug/CMakeFiles/CMakeOutput.log".

    Edit

    Excellent! OpenSSL and ZLIB are now found. The next missing dependency is Boost libraries. You need to install Boost development libraries.

    Install Boost libraries:

    bash

    # Install Boost development libraries
    sudo apt install libboost-all-dev
    
    # Or if you prefer to install only the specific components you need:
    sudo apt install libboost-system-dev libboost-dev

    The libboost-all-dev package will install all Boost libraries, which is usually the safest option for C++ projects that use Boost.

    After installing Boost, try cmake again:

    bash

    # Clean the build directory first
    rm -rf out/build/x64-Debug
    
    # Run cmake again
    cmake -B out/build/x64-Debug

    If you want to check what version of Boost gets installed:

    bash

    # After installation, you can check the version
    dpkg -l | grep libboost

    Your project requires Boost version 1.74.0 or higher, and the libboost-all-dev package on Ubuntu 22.04 should provide a compatible version.

    Alternative using vcpkg (if you prefer):

    bash

    # Or install via vcpkg if you want to manage all dependencies there
    ./vcpkg/vcpkg install boost-system boost-asio
    
    # Then use vcpkg toolchain
    cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake

    Try the system package installation first as it's usually faster and simpler. Let me know how it goes!

    Retry

    L

    luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ cmake -B out/build/x64-Debug -- The C compiler identification is GNU 11.4.0 -- The CXX compiler identification is GNU 11.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 -- -- 23.4.0 -- Performing Test protobuf_HAVE_LD_VERSION_SCRIPT -- Performing Test protobuf_HAVE_LD_VERSION_SCRIPT - Success -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11") -- Performing Test protobuf_HAVE_BUILTIN_ATOMICS -- Performing Test protobuf_HAVE_BUILTIN_ATOMICS - Success CMake Warning at out/build/x64-Debug/_deps/protobuf-src/third_party/abseil-cpp/CMakeLists.txt:72 (message): A future Abseil release will default ABSL_PROPAGATE_CXX_STD to ON for CMake 3.8 and up. We recommend enabling this option to ensure your project still builds correctly. -- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 -- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 - Success -- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "3.0.2") CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake:141 (find_package): Could not find a package configuration file provided by "boost_asio" (requested version 1.74.0) with any of the following names: boost_asioConfig.cmake boost_asio-config.cmake Add the installation prefix of "boost_asio" to CMAKE_PREFIX_PATH or set "boost_asio_DIR" to a directory containing one of the above files. If "boost_asio" provides a separate development package or SDK, be sure it has been installed. Call Stack (most recent call first): /usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake:258 (boost_find_component) /usr/share/cmake-3.22/Modules/FindBoost.cmake:594 (find_package) CMakeLists.txt:40 (find_package) -- Configuring incomplete, errors occurred! See also "/home/luc/Projects/ObjectCommunicationLibrary/out/build/x64-Debug/CMakeFiles/CMakeOutput.log".

    Edit

    The issue is that Boost ASIO is a header-only library and doesn't have a separate CMake config file. This is a common issue with how CMake's FindBoost module handles ASIO. Let's fix this:

    Option 1: Install additional Boost packages

    bash

    # Install more complete Boost development packages
    sudo apt install libboost-all-dev libboost-system-dev libboost-thread-dev libboost-filesystem-dev
    
    # Also try installing the specific ASIO package if available
    sudo apt install libasio-dev

    Option 2: Use vcpkg for better dependency management

    Since you're already set up with vcpkg, this might be the most reliable approach:

    bash

    # Install Boost components via vcpkg
    ./vcpkg/vcpkg install boost-system boost-asio boost-thread
    
    # Then configure cmake with the vcpkg toolchain
    rm -rf out/build/x64-Debug
    cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake

    Option 3: Check your CMakeLists.txt

    The issue might be in how your CMakeLists.txt is requesting Boost. ASIO is typically header-only and doesn't need to be explicitly found as a component. If you have access to your CMakeLists.txt, you might need to modify line 40 to:

    cmake

    find_package(Boost 1.74.0 REQUIRED COMPONENTS system)
    # ASIO is header-only, so it doesn't need to be in COMPONENTS

    Try vcpkg first (recommended):

    bash

    # This should handle the dependencies more reliably
    ./vcpkg/vcpkg install boost-system boost-asio
    
    # Clean and rebuild
    rm -rf out/build/x64-Debug
    cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake

    I'd recommend the vcpkg approach since it's designed to handle these kinds of dependency issues more consistently across different platforms. Let me know which approach you'd like to try first!

    Retry

    luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ sudo apt install libasio-dev Reading package lists... Done Building dependency tree... Done Reading state information... Done The following NEW packages will be installed: libasio-dev 0 upgraded, 1 newly installed, 0 to remove and 71 not upgra

    pasted

    L

    Edit

    I see the issue! Your project is using vcpkg in manifest mode (it has a vcpkg.json file), which means you need to edit the vcpkg.json file to add dependencies rather than installing them directly via command line.

    Let's check and edit your vcpkg.json file:

    First, let's see what's in your vcpkg.json:

    bash

    cat vcpkg.json

    Then edit the vcpkg.json to add the missing dependencies:

    Your vcpkg.json file should look something like this:

    json

    {
      "name": "objectcommunicationlibrary",
      "version": "1.0.0",
      "dependencies": [
        "boost-system",
        "boost-asio",
        "protobuf",
        "openssl",
        "zlib"
      ]
    }

    You can edit it with:

    bash

    nano vcpkg.json

    After editing vcpkg.json, install dependencies:

    bash

    # Install all dependencies listed in vcpkg.json
    ./vcpkg/vcpkg install
    
    # Then configure cmake with vcpkg toolchain
    rm -rf out/build/x64-Debug
    cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake

    Alternative: Force classic mode

    If you want to bypass manifest mode temporarily:

    bash

    ./vcpkg/vcpkg install boost-system boost-asio --classic

    But the proper solution is to update your vcpkg.json file. Could you show me the contents of your vcpkg.json file so I can help you add the missing dependencies correctly?

    Retry

    luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ rm -rf out/build/x64-Debug luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ ./vcpkg/vcpkg install Detecting compiler hash for triplet x64-linux... Compiler found: /usr/bin/c++ All requested packages are currently installed. Total install t

    pasted

    L

    Edit

    Perfect! I can see that vcpkg has installed the packages correctly (including boost-asio), but CMake is still trying to use the system Boost instead of the vcpkg-installed one. The issue is that you need to use the vcpkg toolchain file.

    Use the vcpkg toolchain:

    bash

    rm -rf out/build/x64-Debug
    cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake

    This tells CMake to use the vcpkg-installed packages instead of looking for system packages.

    If you want to make this permanent, you can also set an environment variable:

    bash

    # Set the vcpkg toolchain as default
    export CMAKE_TOOLCHAIN_FILE=$(pwd)/vcpkg/scripts/buildsystems/vcpkg.cmake
    
    # Then you can just run cmake normally
    cmake -B out/build/x64-Debug

    Alternative: Create a CMakePresets.json file

    You can also create a CMakePresets.json file in your project root to make this automatic:

    CMakePresets.json

    Code 

    { "version": 3, "configurePresets": [ { "name": "x64-Debug", "displayName": "x64 Debug", "description": "Target Windows (64-bit) with the Visual Studio development environment. (Debug)",

    If you create this file, you can then use:

    bash

    # Using the preset
    cmake --preset x64-Debug

    But for now, just try the first command with the toolchain file:

    bash

    rm -rf out/build/x64-Debug
    cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake

    This should resolve the Boost ASIO issue since vcpkg properly handles the CMake configuration for header-only libraries like ASIO.

    Retry

    luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ rm -rf out/build/x64-Debug luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake -- Running vcpkg install Fetching registry information from https://gi

    pasted

    L

    Edit

    Excellent! The dependency issues are now resolved - vcpkg successfully installed all the required packages including Boost 1.86.0 with ASIO support. However, now you have a different issue: CMake can't find your source files.

    The errors show that CMake is looking for:

    • source/settings.cpp
    • source/print.cpp

    But these files don't exist or aren't in the expected location.

    Let's check your project structure:

    bash

    # Check what's in your project directory
    ls -la
    
    # Check if there's a source directory
    ls -la source/
    
    # Or check for any .cpp files
    find . -name "*.cpp" -type f

    Possible solutions:

    Option 1: Create the missing source files

    If these are supposed to be empty or placeholder files:

    bash

    # Create the source directory if it doesn't exist
    mkdir -p source
    
    # Create empty source files
    touch source/settings.cpp
    touch source/print.cpp

    Option 2: Check your CMakeLists.txt

    Your CMakeLists.txt (around lines 78-79) might be referencing the wrong file paths. You can check:

    bash

    # Look at the relevant lines in CMakeLists.txt
    sed -n '75,85p' CMakeLists.txt

    Option 3: If the files exist elsewhere

    If the source files exist but in a different location:

    bash

    # Find all .cpp files in your project
    find . -name "*.cpp" -type f

    Could you run these commands and show me the output? This will help me understand your project structure and guide you to fix the CMakeLists.txt or create the missing files.

    The good news is that all your dependencies are now properly configured - we just need to sort out the source file paths!

    Retry

    L

    the problem seems to be lower-upper case related, the files do exist but are Settings.cpp and Print.cpp

    Edit

    Ah, that's a classic case sensitivity issue! Linux filesystems are case-sensitive, so settings.cpp and Settings.cpp are treated as different files. Your CMakeLists.txt is looking for lowercase filenames, but your actual files have uppercase first letters.

    Quick fix - rename the files to match what CMakeLists.txt expects:

    bash

    # Rename the files to lowercase
    mv source/Settings.cpp source/settings.cpp
    mv source/Print.cpp source/print.cpp

    Alternative - update CMakeLists.txt to match your existing files:

    If you prefer to keep your current naming convention, you could edit the CMakeLists.txt instead:

    bash

    # Check the current CMakeLists.txt around lines 78-79
    sed -n '75,85p' CMakeLists.txt

    Then edit it to use the correct case:

    bash

    nano CMakeLists.txt

    And change the references from:

    • source/settings.cpp → source/Settings.cpp
    • source/print.cpp → source/Print.cpp

    After fixing the file names, try cmake again:

    bash

    # Clean and reconfigure
    rm -rf out/build/x64-Debug
    cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake

    I'd recommend the first approach (renaming files to lowercase) as it's generally a more common convention for C++ source files, but either approach will work. Which would you prefer?

    Retry

    luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ rm -rf out/build/x64-Debug luc@luc-desktop:~/Projects/ObjectCommunicationLibrary$ cmake -B out/build/x64-Debug -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake -- Running vcpkg install Fetching registry information from https://gi

    pasted

    L

    it build finally, using the latest output and all the previous feedback, give a full list of steps to build

    Edit

    Perfect! Based on all the steps we went through, here's a complete guide to build your C++ project from a fresh Ubuntu system:

    Complete C++ Project Build Guide for Ubuntu

    Document 

    # Complete C++ Project Build Guide for Ubuntu This guide walks through building a C++ project with vcpkg dependencies on Ubuntu from scratch. ## Prerequisites Setup ### 1. Update System Package Manager ```bash sudo apt update ``` ### 2. Install E

    This comprehensive guide covers everything we learned from your build process. The key insights were:

    1. Missing system packages: You needed g++, cmake, ninja-build, and system libraries
    2. Case sensitivity: Your files were Settings.cpp/Print.cpp but CMakeLists.txt expected lowercase
    3. vcpkg toolchain: Essential to use -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake
    4. Dependency management: vcpkg handled all the complex Boost/OpenSSL/etc. dependencies automatically

    The build is now working successfully - all dependencies are resolved and CMake configuration completed. You should be able to run the final build command:

    bash

    cmake --build out/build/x64-Debug

    Would you like me to help with anything else related to the build process or the next steps?

    in Daily blog
    # Linux Xenomatix
    Linux compile ObjectCommunicationLibrary
    Copyright © CTech
    Nederlands (BE) | English (UK) | Français
    Aangeboden door Odoo - De #1 Open source e-commerce