Skip to content

Conversation

@LiorKogan
Copy link
Member

Starting with 8.2, the cmake step is required in Ubuntu 22.04 as well (copied from Ubuntu 20.04 instructions)

Starting with 8.2, the cmake step is required in Ubuntu 22.04 as well (copied from Ubuntu 20.04 instructions)
@LiorKogan LiorKogan requested a review from dwdougherty August 26, 2025 16:22
@github-actions
Copy link
Contributor

@dwdougherty dwdougherty self-assigned this Aug 26, 2025
Copy link
Collaborator

@dwdougherty dwdougherty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you, @LiorKogan!

@dwdougherty dwdougherty merged commit 7b55c84 into main Aug 26, 2025
6 checks passed
@dwdougherty dwdougherty deleted the LiorKogan-patch-1 branch August 26, 2025 16:38
@collinfunk
Copy link
Contributor

@LiorKogan I'm curious why pip is used to install CMake. Any issues with the CMake version shipped with Ubuntu 22.04?

$ grep '^VERSION=' /etc/os-release
VERSION="22.04.5 LTS (Jammy Jellyfish)"
$ cmake --version | head -n 1
cmake version 3.22.1

It is already listed in the apt-get install command above the new section. And personally, I prefer downloading from there since it feels a bit safer (e.g. less risk of typo-squatting with Ubuntu archives compared to PyPI

@LiorKogan
Copy link
Member Author

@collinfunk,
Starting with a clean Ubuntu 22.04 Docker image, with cmake 3.22.1, we fail to build RediSearch as part of Redis 8.2.1.

make[2]: Entering directory '/usr/src/redis-8.2.1/modules'
make[2]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make -C src
make[3]: Entering directory '/usr/src/redis-8.2.1/modules/redisearch/src'
Verifying build dependencies...

===== Build Dependencies Checker =====

cmake               ✗ (need version >= 3.25, found version 3.22)
make                ✓
libssl-dev          ✓
cargo               ✓
python3             ✓
gcc                 ✓
g++                 ✓

WARNING: Some dependencies are missing or do not meet the required version. 
Build may fail without these dependencies.

To install or inspect dependencies, check the following script:
cd .install && ./install_script.sh 

-e Dependency check failed. You can bypass this check by running:
-e make IGNORE_MISSING_DEPS=1 ...
make[3]: *** [Makefile:196: verify-deps] Error 1
make[3]: Leaving directory '/usr/src/redis-8.2.1/modules/redisearch/src'
make[2]: *** [../common.mk:27: src/bin/linux-x64-release/search-community/redisearch.so] Error 2
make[2]: Leaving directory '/usr/src/redis-8.2.1/modules/redisearch'
make[1]: *** [Makefile:9: all] Error 2
make[1]: Leaving directory '/usr/src/redis-8.2.1/modules'
make: *** [Makefile:11: all] Error 2

I didn't involve the RediSearch team. I simply applied the same cmake upgrade we use with Ubuntu 20.04.

Trying to build with export IGNORE_MISSING_DEPS=1, I see the following failure:

# CMAKE_C_COMPILER_ID: GNU
-- SAN: 
-- COV: 
Detected version: 1.2.0
-- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "3.0.2")  
-- BOOST_DIR: /usr/src/redis-8.2.1/modules/redisearch/src/.install/boost
-- BOOST_DIR '/usr/src/redis-8.2.1/modules/redisearch/src/.install/boost' is not a valid boost directory path
-- fetching boost
-- Populating boost
CMake Error at /usr/share/cmake-3.22/Modules/ExternalProject.cmake:2806 (message):
  At least one entry of URL is a path (invalid in a list)
Call Stack (most recent call first):
  /usr/share/cmake-3.22/Modules/ExternalProject.cmake:3716 (_ep_add_download_command)
  CMakeLists.txt:15 (ExternalProject_Add)

This doesn't happen after upgrading cmake.

@collinfunk
Copy link
Contributor

@LiorKogan Thanks. It looks like the Ubuntu one is too old. The current patch works well then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants