-
Notifications
You must be signed in to change notification settings - Fork 3.7k
libcurl build failure on macos11 and macos-latest #7945
Copy link
Copy link
Closed
Labels
Area: Build Tools (C/C++)OS: macOSbug reportinvestigateCollect additional information, like space on disk, other tool incompatibilities etc.Collect additional information, like space on disk, other tool incompatibilities etc.
Description
Description
I am building a library on a github runner as part of github actions that requires building libcurl.
Libcurl version : 7.68.0
I am running this using cmake and I see this issue:
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vtls/schannel_verify.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vtls/sectransp.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vtls/gskit.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vtls/mbedtls.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vtls/mesalink.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vtls/bearssl.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vquic/ngtcp2.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vquic/quiche.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vssh/libssh2.c.o
[ 16%] Building C object lib/CMakeFiles/libcurl.dir/vssh/libssh.c.o
[ 16%] Linking C shared library libcurl.dylib
Undefined symbols for architecture x86_64:
"_EVP_PKEY_get_id", referenced from:
_cert_stuff in openssl.c.o
_get_cert_chain in openssl.c.o
"_SSL_get1_peer_certificate", referenced from:
_servercert in openssl.c.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[5]: *** [lib/libcurl.dylib] Error 1
make[4]: *** [lib/CMakeFiles/libcurl.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [build/src/project_libcurl-stamp/project_libcurl-build] Error 2
make[1]: *** [CMakeFiles/project_libcurl.dir/all] Error 2
make: *** [all] Error 2
CMake Error at CMake/Utilities.cmake:93 (message):
CMake step for libcurl failed: 2
Call Stack (most recent call first):
CMakeLists.txt:93 (build_dependency)
-- Configuring incomplete, errors occurred!
Error: Process completed with exit code 1.
How do I fix this? I run the same thing on a Mac 11 system and a Mac 12 EC2 instance and the builds pass in those. It seems to a GHA specific issue.
For context, I did nothing to change the cmake file and the same build passed last month. The build also runs fine on MacOS 13.
Platforms affected
- Azure DevOps
- GitHub Actions - Standard Runners
- GitHub Actions - Larger Runners
Runner images affected
- Ubuntu 20.04
- Ubuntu 22.04
- macOS 11
- macOS 12
- macOS 13
- Windows Server 2019
- Windows Server 2022
Image version and build link
Current runner version: '2.306.0'
Operating System
Runner Image
Runner Image Provisioner
GITHUB_TOKEN Permissions
Secret source: Actions
Prepare workflow directory
Prepare all required actions
Getting action download info
Download action repository 'actions/checkout@v3' (SHA:c85c95e3d7[2](https://github.com/awslabs/amazon-kinesis-video-streams-producer-c/actions/runs/5602647587/job/15177682079#step:1:2)51135ab7dc9ce3241c5835cc595a9)
Download action repository 'aws-actions/configure-aws-credentials@v1-node1[6](https://github.com/awslabs/amazon-kinesis-video-streams-producer-c/actions/runs/5602647587/job/15177682079#step:1:7)' (SHA:023daa7fe5f7f8[17](https://github.com/awslabs/amazon-kinesis-video-streams-producer-c/actions/runs/5602647587/job/15177682079#step:1:21)faa31fc0fc4a8d0fb6[22](https://github.com/awslabs/amazon-kinesis-video-streams-producer-c/actions/runs/5602647587/job/15177682079#step:1:26)4ed0)
Complete job name: mac-os-build-gcc
Is it regression?
2.305.0
Expected behavior
The build passes clean.
Actual behavior
The build fails
Repro steps
Try building the linked SDK on a GHA running with the build configuration.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Area: Build Tools (C/C++)OS: macOSbug reportinvestigateCollect additional information, like space on disk, other tool incompatibilities etc.Collect additional information, like space on disk, other tool incompatibilities etc.