The verify script requirements need to get updated:

- meson is required but not listed
- gtest/gmock are required but not listed
- I had to export CPR_USE_SYSTEM_CURL=OFF for some reason due to ssl
stuff, unsure.

These issues don't need to block the release, but should get addressed
at some point to make verification easier.

That said, I did run into a different issue:

[ 94%] Linking CXX shared library libiceberg_rest.so
/usr/bin/ld: ../../../../_deps/curl-build/lib/libcurl.a(cookie.c.o):
warning: relocation against `stdout@@GLIBC_2.2.5' in read-only section
`.text'
/usr/bin/ld: ../../../../_deps/curl-build/lib/libcurl.a(mprintf.c.o):
relocation R_X86_64_PC32 against symbol `stdout@@GLIBC_2.2.5' can not
be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: bad value

Since I set CPR_USE_SYSTEM_CURL=OFF, it looks like whatever version of
libcurl is being used by the default configuration for CMake is having
an issue with this linking. Most likely, the
`fetchcontent_makeavailable(cpr)` needs to explicitly do something
like:

foreach(_curl_target IN ITEMS libcurl libcurl_static libcurl_shared)
  if(TARGET ${_curl_target})
    set_target_properties(${_curl_target} PROPERTIES
POSITION_INDEPENDENT_CODE ON)
  endif()
endforeach()

Or just globally set `CMAKE_POSITION_INDEPENDENT_CODE=ON` earlier in
the CMakeLists.txt so that the curl subbuild properly gets that
option.

As a result, my vote is -1 (binding).

I ran on Ubuntu 25.10

--Matt

On Tue, Jun 9, 2026 at 10:19 AM Gang Wu <[email protected]> wrote:
>
> +1 (non-binding)
>
> Ran verify script successfully and verified the installed artifacts. Thanks 
> Junwang for the effort!
>
> We should improve the release script to catch similar issues in the future.
>
> Best,
> Gang
>
> On Tue, Jun 9, 2026 at 6:21 PM Junwang Zhao <[email protected]> wrote:
>>
>> Hi,
>>
>> I would like to propose the following release candidate (RC2) of
>> Apache Iceberg C++ 0.3.0.
>>
>> This release candidate is based on commit:
>> b6508226cb944e36267685d29c3a23c8422d8cad [1]
>>
>> The source release RC2 is hosted at [2].
>>
>> Please download, verify checksums and signatures, run the unit tests,
>> and vote on the release. See [3] for how to validate a release candidate.
>>
>> The vote will be open for at least 72 hours.
>>
>> [ ] +1 Release this as Apache Iceberg C++ 0.3.0
>> [ ] +0
>> [ ] -1 Do not release this as Apache Iceberg C++ 0.3.0 because...
>>
>> [1]: 
>> https://github.com/apache/iceberg-cpp/tree/b6508226cb944e36267685d29c3a23c8422d8cad
>> [2]: 
>> https://dist.apache.org/repos/dist/dev/iceberg/apache-iceberg-cpp-0.3.0-rc2
>> [3]: 
>> https://github.com/apache/iceberg-cpp/blob/main/dev/release/README.md#verify
>>
>> --
>> Regards
>> Junwang Zhao

Reply via email to