cmake failing with CURL library not found

Description

While building PS-8.2 from this branch release-8.2.0-1 on Ubuntu 22.04 , getting this error during cmake

Cmake command used:

CURL is already installed on QA machine and the version is:

 

This looks like a bug unless something has been changed in regards to how components are built in 8.2

NOTE: Same steps work fine on PS-8.1

Environment

None

Activity

Show:

puneet.kaushik January 24, 2024 at 3:56 PM

Bug Fix verified for PS -8.2 !

Oleksandr Kachan January 8, 2024 at 7:34 PM

Fix added to release-8.2 branch, WITH_CURL defaults to ‘system’ now.

Yura Sorokin January 8, 2024 at 3:34 PM

In 8.2.0 Oracle included a bundled version of libcurl library into the source tree and it is now possible to specify -DWITH_CURL=bundled.

However, by default this CMake option is set to none unless MySQL is build as an Enterprise version (unless -DWITH_INTERNAL=ON).

https://github.com/mysql/mysql-server/blob/trunk/CMakeLists.txt#L986

Upstream code needed CURL only for Enterprise features (for their Enterprise versions of keyring_vault or keyring_kms components) and they did not know that Percona will be using this library for its free version of keyring_vault component.

So, long story short, we need to explicitly specify -DWITH_CURL=system|bundled.

Alternatively, we can do -DWITH_SYSTEM_LIBS=ON and this will implicitly mean -DWITH_CURL=system.

Vadim Yalovets January 8, 2024 at 3:25 PM

I have added flag -DWITH_CURL=bundled in building scripts.
e.g.

Done

Details

Assignee

Reporter

Regression Issue

Yes

Needs QA

Yes

Fix versions

Affects versions

Priority

Smart Checklist

Created January 8, 2024 at 2:40 PM
Updated February 5, 2024 at 12:51 PM
Resolved January 8, 2024 at 7:35 PM