Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[gmp] Build error on x64-linux-musl #44579

Open
DubbleClick opened this issue Mar 24, 2025 · 1 comment
Open

[gmp] Build error on x64-linux-musl #44579

DubbleClick opened this issue Mar 24, 2025 · 1 comment
Labels
category:community-triplet A PR or issue related to community triplets not officially validated by the vcpkg team.

Comments

@DubbleClick
Copy link

Package: gmp:x64-linux-musl@6.3.0#2

Host Environment

  • Host: x64-linux
  • Compiler: GNU 13.2.0
  • vcpkg-tool version: 2025-03-13-7699e411ea11543de6abc0c7d5fd11cfe0039ae5
    vcpkg-scripts version: unknown

To Reproduce

vcpkg install

Failure logs

-- Using cached gmp-6.3.0.tar.xz
-- Cleaning sources at /usr/vcpkg/buildtrees/gmp/src/v6.3.0-27b6a2315b.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /usr/vcpkg/downloads/gmp-6.3.0.tar.xz
-- Applying patch asmflags.patch
-- Applying patch cross-tools.patch
-- Applying patch subdirs.patch
-- Applying patch msvc_symbol.patch
-- Applying patch arm64-coff.patch
-- Applying patch remove_compiler_info.patch
-- Using source at /usr/vcpkg/buildtrees/gmp/src/v6.3.0-27b6a2315b.clean
-- Getting CMake variables for x64-linux-musl
-- Getting CMake variables for x64-linux-musl-rel
-- Generating configure for x64-linux-musl
-- Finished generating configure for x64-linux-musl
-- Configuring x64-linux-musl-rel
CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:127 (message):
    Command failed: /usr/bin/bash -c "V=1 ./../src/v6.3.0-27b6a2315b.clean/configure --host=x86_64-linux-musl \"CCAS=x86_64-linux-musl-gcc\" \"ASMFLAGS=-c\" \"--enable-cxx\" \"--with-pic\" \"--with-readline=no\" \"gmp_cv_prog_exeext_for_build=\" \"--disable-silent-rules\" \"--verbose\" \"--disable-shared\" \"--enable-static\" \"--prefix=/opt/static-php-cli/vcpkg_installed/x64-linux-musl\" \"--bindir=\\${prefix}/tools/gmp/bin\" \"--sbindir=\\${prefix}/tools/gmp/sbin\" \"--libdir=\\${prefix}/lib\" \"--mandir=\\${prefix}/share/gmp\" \"--docdir=\\${prefix}/share/gmp\" \"--datarootdir=\\${prefix}/share/gmp\""
    Working Directory: /usr/vcpkg/buildtrees/gmp/x64-linux-musl-rel
    Error code: 1
    See logs for more information:
      /usr/vcpkg/buildtrees/gmp/config-x64-linux-musl-rel-config.log
      /usr/vcpkg/buildtrees/gmp/config-x64-linux-musl-rel-out.log
      /usr/vcpkg/buildtrees/gmp/config-x64-linux-musl-rel-err.log

Call Stack (most recent call first):
  scripts/cmake/vcpkg_configure_make.cmake:866 (vcpkg_execute_required_process)
  /root/.cache/vcpkg/registries/git-trees/d9ef9fbb509e23fcb49f567f3c383ca3fd37e2c0/portfile.cmake:87 (vcpkg_configure_make)
  scripts/ports.cmake:203 (include)



/usr/vcpkg/buildtrees/gmp/config-x64-linux-musl-rel-err.log
configure: error: C++ compiler not available, see config.log for details
/usr/vcpkg/buildtrees/gmp/config-x64-linux-musl-rel-out.log
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-musl
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for x86_64-linux-musl-strip... /usr/local/musl/bin/x86_64-linux-musl-strip
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking ABI=64
checking whether /usr/local/musl/bin/x86_64-linux-musl-gcc is gcc... yes
checking compiler /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG... yes
checking for x86_64-linux-musl-gcc... /usr/local/musl/bin/x86_64-linux-musl-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /usr/local/musl/bin/x86_64-linux-musl-gcc accepts -g... yes
checking for /usr/local/musl/bin/x86_64-linux-musl-gcc option to accept ISO C89... none needed
checking whether /usr/local/musl/bin/x86_64-linux-musl-gcc understands -c and -o together... yes
checking for /usr/local/musl/bin/x86_64-linux-musl-gcc option to accept ISO C99... none needed
checking how to run the C preprocessor... /usr/local/musl/bin/x86_64-linux-musl-gcc -E
checking build system compiler touch a.out | touch conftest | true... yes
checking for build system preprocessor... touch a.out | touch conftest | true
checking for build system executable suffix... (cached)
checking whether build system compiler is ANSI... yes
checking for build system compiler math library... -lm
checking whether we are using the GNU C++ compiler... yes
checking whether /usr/local/musl/bin/x86_64-linux-musl-g++ accepts -g... yes
checking C++ compiler /usr/local/musl/bin/x86_64-linux-musl-g++ -DNDEBUG -O3... no, program does not run
/usr/vcpkg/buildtrees/gmp/config-x64-linux-musl-rel-config.log
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by GNU MP configure 6.3.0, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ./../src/v6.3.0-27b6a2315b.clean/configure --host=x86_64-linux-musl CCAS=x86_64-linux-musl-gcc ASMFLAGS=-c --enable-cxx --with-pic --with-readline=no gmp_cv_prog_exeext_for_build= --disable-silent-rules --verbose --disable-shared --enable-static --prefix=/opt/static-php-cli/vcpkg_installed/x64-linux-musl --bindir=${prefix}/tools/gmp/bin --sbindir=${prefix}/tools/gmp/sbin --libdir=${prefix}/lib --mandir=${prefix}/share/gmp --docdir=${prefix}/share/gmp --datarootdir=${prefix}/share/gmp

## --------- ##
## Platform. ##
## --------- ##

hostname = localhost.localdomain
uname -m = x86_64
uname -r = 5.14.0-503.11.1.el9_5.x86_64
uname -s = Linux
uname -v = #1 SMP PREEMPT_DYNAMIC Tue Nov 12 09:26:13 EST 2024

/usr/bin/uname -p = x86_64
/bin/uname -X     = unknown

/bin/arch              = x86_64
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /usr/vcpkg
PATH: /root/.local/bin
PATH: /root/bin
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /usr/vcpkg/downloads/tools/ninja/1.12.1-linux
PATH: /usr/local/musl/bin
PATH: /usr/vcpkg/downloads/tools/ninja/1.12.1-linux
PATH: /bin


## ----------- ##
## Core tests. ##
## ----------- ##

configure:3068: checking build system type
configure:3082: result: x86_64-pc-linux-gnu
configure:3102: checking host system type
configure:3115: result: x86_64-pc-linux-musl
configure:3152: checking for a BSD-compatible install
configure:3220: result: /usr/bin/install -c
configure:3231: checking whether build environment is sane
configure:3286: result: yes
configure:3345: checking for x86_64-linux-musl-strip
configure:3372: result: /usr/local/musl/bin/x86_64-linux-musl-strip
configure:3437: checking for a thread-safe mkdir -p
configure:3476: result: /usr/bin/mkdir -p
configure:3483: checking for gawk
configure:3499: found /usr/bin/gawk
configure:3510: result: gawk
configure:3521: checking whether make sets $(MAKE)
configure:3543: result: yes
configure:3572: checking whether make supports nested variables
configure:3589: result: yes
configure:3718: checking whether to enable maintainer-specific portions of Makefiles
configure:3727: result: no
User:
ABI=
CC=/usr/local/musl/bin/x86_64-linux-musl-gcc
CFLAGS=-O3
CPPFLAGS=-DNDEBUG
MPN_PATH=
GMP:
abilist=64 x32 32
cclist=gcc icc cc
configure:5901: /usr/local/musl/bin/x86_64-linux-musl-gcc -c conftest.c >&5
configure:5904: $? = 0
configure:5907: checking whether /usr/local/musl/bin/x86_64-linux-musl-gcc is gcc
configure:5909: result: yes
configure:5923: /usr/local/musl/bin/x86_64-linux-musl-gcc 2>&1 | grep xlc >/dev/null
configure:5926: $? = 1
configure:5980: checking compiler /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG
Test compile:
configure:5994: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:5997: $? = 0
Test compile: function pointer return
configure:6048: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6051: $? = 0
Test compile: cmov instruction
configure:6104: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6107: $? = 0
Test compile: double -> ulong conversion
configure:6161: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6164: $? = 0
Test compile: double negation
configure:6216: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6219: $? = 0
Test compile: double -> float conversion
configure:6272: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6275: $? = 0
Test compile: gnupro alpha ev6 char spilling
configure:6357: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6360: $? = 0
Test compile: __builtin_alloca availability
configure:6408: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
conftest.c: In function 'foo':
conftest.c:1:21: warning: ignoring return value of '__builtin_alloca' declared with attribute 'warn_unused_result' [-Wunused-result]
    1 | int k; int foo () { __builtin_alloca (k); }
      |                     ^~~~~~~~~~~~~~~~~~~~
/usr/local/musl/bin/../lib/gcc/x86_64-linux-musl/13.2.0/../../../../x86_64-linux-musl/bin/ld: /usr/local/musl/bin/../lib/gcc/x86_64-linux-musl/13.2.0/../../../../x86_64-linux-musl/lib/Scrt1.o: in function `_start_c':
Scrt1.c:(.text._start_c+0x1a): undefined reference to `main'
collect2: error: ld returned 1 exit status
configure:6411: $? = 1
failed program was:
int k; int foo () { __builtin_alloca (k); }
Test compile: abs int -> double conversion
configure:6532: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6535: $? = 0
Test compile: long long reliability test 1
configure:6597: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6600: $? = 0
Test compile: long long reliability test 2
configure:6658: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6661: $? = 0
Test compile: freebsd hacked gcc
configure:6719: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6722: $? = 0
Test compile: mpn_lshift_com optimization
configure:6818: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6821: $? = 0
Test compile: mpn_lshift_com optimization 2
configure:6927: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG conftest.c >&5
configure:6930: $? = 0
configure:7084: result: yes
configure:8816: checking for x86_64-linux-musl-gcc
configure:8843: result: /usr/local/musl/bin/x86_64-linux-musl-gcc
configure:9112: checking for C compiler version
configure:9121: /usr/local/musl/bin/x86_64-linux-musl-gcc --version >&5
x86_64-linux-musl-gcc (GCC) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:9132: $? = 0
configure:9121: /usr/local/musl/bin/x86_64-linux-musl-gcc -v >&5
Using built-in specs.
COLLECT_GCC=/usr/local/musl/bin/x86_64-linux-musl-gcc
COLLECT_LTO_WRAPPER=/usr/local/musl/bin/../libexec/gcc/x86_64-linux-musl/13.2.0/lto-wrapper
Target: x86_64-linux-musl
Configured with: ../src_gcc/configure --enable-languages=c,c++,fortran CC='gcc -static --static' CXX='g++ -static --static' CFLAGS='-g0 -Os -Wno-error' CXXFLAGS='-g0 -Os -Wno-error' LDFLAGS='-static --static' --enable-static-pie --disable-cet --enable-default-pie --disable-bootstrap --disable-assembly --disable-werror --target=x86_64-linux-musl --prefix= --libdir=/lib --disable-multilib --with-sysroot=/x86_64-linux-musl --enable-tls --disable-libmudflap --disable-libsanitizer --disable-gnu-indirect-function --disable-libmpx --enable-initfini-array --enable-libstdcxx-time=rt --enable-deterministic-archives --enable-libstdcxx-time --enable-libquadmath --enable-libquadmath-support --disable-decimal-float --with-build-sysroot=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_sysroot AR_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/ar AS_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/gas/as-new LD_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/ld/ld-new NM_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/nm-new OBJCOPY_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/objcopy OBJDUMP_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/objdump RANLIB_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/ranlib READELF_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/readelf STRIP_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/strip-new --build=x86_64-pc-linux-muslxx --host=x86_64-pc-linux-muslxx
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 13.2.0 (GCC)
configure:9132: $? = 0
configure:9121: /usr/local/musl/bin/x86_64-linux-musl-gcc -V >&5
x86_64-linux-musl-gcc: error: unrecognized command-line option '-V'
x86_64-linux-musl-gcc: fatal error: no input files
compilation terminated.
configure:9132: $? = 1
configure:9121: /usr/local/musl/bin/x86_64-linux-musl-gcc -qversion >&5
x86_64-linux-musl-gcc: error: unrecognized command-line option '-qversion'; did you mean '--version'?
x86_64-linux-musl-gcc: fatal error: no input files
compilation terminated.
configure:9132: $? = 1
configure:9152: checking whether the C compiler works
configure:9174: /usr/local/musl/bin/x86_64-linux-musl-gcc -O3 -DNDEBUG -L/opt/static-php-cli/vcpkg_installed/x64-linux-musl/lib conftest.c  >&5
configure:9178: $? = 0
configure:9226: result: yes
configure:9229: checking for C compiler default output file name
configure:9231: result: a.out
configure:9237: checking for suffix of executables
configure:9244: /usr/local/musl/bin/x86_64-linux-musl-gcc -o conftest -O3 -DNDEBUG -L/opt/static-php-cli/vcpkg_installed/x64-linux-musl/lib conftest.c  >&5
configure:9248: $? = 0
configure:9270: result:
configure:9292: checking whether we are cross compiling
configure:9300: /usr/local/musl/bin/x86_64-linux-musl-gcc -o conftest -O3 -DNDEBUG -L/opt/static-php-cli/vcpkg_installed/x64-linux-musl/lib conftest.c  >&5
configure:9304: $? = 0
configure:9311: ./conftest
configure:9315: $? = 0
configure:9330: result: no
configure:9335: checking for suffix of object files
configure:9357: /usr/local/musl/bin/x86_64-linux-musl-gcc -c -O3 -DNDEBUG conftest.c >&5
configure:9361: $? = 0
configure:9382: result: o
configure:9386: checking whether we are using the GNU C compiler
configure:9405: /usr/local/musl/bin/x86_64-linux-musl-gcc -c -O3 -DNDEBUG conftest.c >&5
configure:9405: $? = 0
configure:9414: result: yes
configure:9423: checking whether /usr/local/musl/bin/x86_64-linux-musl-gcc accepts -g
configure:9443: /usr/local/musl/bin/x86_64-linux-musl-gcc -c -g -DNDEBUG conftest.c >&5
configure:9443: $? = 0
configure:9484: result: yes
configure:9501: checking for /usr/local/musl/bin/x86_64-linux-musl-gcc option to accept ISO C89
configure:9564: /usr/local/musl/bin/x86_64-linux-musl-gcc  -c -O3 -DNDEBUG conftest.c >&5
configure:9564: $? = 0
configure:9577: result: none needed
configure:9602: checking whether /usr/local/musl/bin/x86_64-linux-musl-gcc understands -c and -o together
configure:9624: /usr/local/musl/bin/x86_64-linux-musl-gcc -c conftest.c -o conftest2.o
configure:9627: $? = 0
configure:9624: /usr/local/musl/bin/x86_64-linux-musl-gcc -c conftest.c -o conftest2.o
configure:9627: $? = 0
configure:9639: result: yes
configure:9656: checking for /usr/local/musl/bin/x86_64-linux-musl-gcc option to accept ISO C99
configure:9805: /usr/local/musl/bin/x86_64-linux-musl-gcc  -c -O3 -DNDEBUG conftest.c >&5
configure:9805: $? = 0
configure:9818: result: none needed
configure:9838: checking how to run the C preprocessor
configure:9869: /usr/local/musl/bin/x86_64-linux-musl-gcc -E -DNDEBUG conftest.c
configure:9869: $? = 0
configure:9883: /usr/local/musl/bin/x86_64-linux-musl-gcc -E -DNDEBUG conftest.c
conftest.c:15:10: fatal error: ac_nonexistent.h: No such file or directory
   15 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:9883: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "GNU MP"
| #define PACKAGE_TARNAME "gmp"
| #define PACKAGE_VERSION "6.3.0"
| #define PACKAGE_STRING "GNU MP 6.3.0"
| #define PACKAGE_BUGREPORT "gmp-bugs@gmplib.org (see https://gmplib.org/manual/Reporting-Bugs.html)"
| #define PACKAGE_URL "http://www.gnu.org/software/gmp/"
| #define PACKAGE "gmp"
| #define VERSION "6.3.0"
| #define WANT_FFT 1
| #define HAVE_HOST_CPU_x86_64 1
| #define HAVE_SPEED_CYCLECOUNTER 2
| #define HAVE_CALLING_CONVENTIONS 1
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:9908: result: /usr/local/musl/bin/x86_64-linux-musl-gcc -E
configure:9928: /usr/local/musl/bin/x86_64-linux-musl-gcc -E -DNDEBUG conftest.c
configure:9928: $? = 0
configure:9942: /usr/local/musl/bin/x86_64-linux-musl-gcc -E -DNDEBUG conftest.c
conftest.c:15:10: fatal error: ac_nonexistent.h: No such file or directory
   15 | #include <ac_nonexistent.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:9942: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "GNU MP"
| #define PACKAGE_TARNAME "gmp"
| #define PACKAGE_VERSION "6.3.0"
| #define PACKAGE_STRING "GNU MP 6.3.0"
| #define PACKAGE_BUGREPORT "gmp-bugs@gmplib.org (see https://gmplib.org/manual/Reporting-Bugs.html)"
| #define PACKAGE_URL "http://www.gnu.org/software/gmp/"
| #define PACKAGE "gmp"
| #define VERSION "6.3.0"
| #define WANT_FFT 1
| #define HAVE_HOST_CPU_x86_64 1
| #define HAVE_SPEED_CYCLECOUNTER 2
| #define HAVE_CALLING_CONVENTIONS 1
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:9978: checking build system compiler touch a.out | touch conftest | true
configure:9991: touch a.out | touch conftest | true conftest.c
configure:9994: $? = 0
./../src/v6.3.0-27b6a2315b.clean/configure: line 9996: ./a.out: Permission denied
./../src/v6.3.0-27b6a2315b.clean/configure: line 9996: ./b.out: No such file or directory
./../src/v6.3.0-27b6a2315b.clean/configure: line 9996: ./a.exe: No such file or directory
./../src/v6.3.0-27b6a2315b.clean/configure: line 9996: ./a_out.exe: No such file or directory
./../src/v6.3.0-27b6a2315b.clean/configure: line 9996: ./conftest: Permission denied
configure:10002: result: yes
configure:10088: checking for build system preprocessor
configure:10117: result: touch a.out | touch conftest | true
configure:10124: checking for build system executable suffix
configure:10155: result:
configure:10161: checking whether build system compiler is ANSI
configure:10174: touch a.out | touch conftest | true conftest.c
configure:10177: $? = 0
configure:10186: result: yes
configure:10196: checking for build system compiler math library
configure:10216: touch a.out | touch conftest | true conftest.c -lm
configure:10219: $? = 0
configure:10228: result: -lm
configure:10363: checking for C++ compiler version
configure:10372: /usr/local/musl/bin/x86_64-linux-musl-g++ --version >&5
x86_64-linux-musl-g++ (GCC) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:10383: $? = 0
configure:10372: /usr/local/musl/bin/x86_64-linux-musl-g++ -v >&5
Using built-in specs.
COLLECT_GCC=/usr/local/musl/bin/x86_64-linux-musl-g++
COLLECT_LTO_WRAPPER=/usr/local/musl/bin/../libexec/gcc/x86_64-linux-musl/13.2.0/lto-wrapper
Target: x86_64-linux-musl
Configured with: ../src_gcc/configure --enable-languages=c,c++,fortran CC='gcc -static --static' CXX='g++ -static --static' CFLAGS='-g0 -Os -Wno-error' CXXFLAGS='-g0 -Os -Wno-error' LDFLAGS='-static --static' --enable-static-pie --disable-cet --enable-default-pie --disable-bootstrap --disable-assembly --disable-werror --target=x86_64-linux-musl --prefix= --libdir=/lib --disable-multilib --with-sysroot=/x86_64-linux-musl --enable-tls --disable-libmudflap --disable-libsanitizer --disable-gnu-indirect-function --disable-libmpx --enable-initfini-array --enable-libstdcxx-time=rt --enable-deterministic-archives --enable-libstdcxx-time --enable-libquadmath --enable-libquadmath-support --disable-decimal-float --with-build-sysroot=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_sysroot AR_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/ar AS_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/gas/as-new LD_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/ld/ld-new NM_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/nm-new OBJCOPY_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/objcopy OBJDUMP_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/objdump RANLIB_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/ranlib READELF_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/readelf STRIP_FOR_TARGET=/root/spc-musl/musl-cross-make/build/local/x86_64-linux-musl/obj_binutils/binutils/strip-new --build=x86_64-pc-linux-muslxx --host=x86_64-pc-linux-muslxx
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 13.2.0 (GCC)
configure:10383: $? = 0
configure:10372: /usr/local/musl/bin/x86_64-linux-musl-g++ -V >&5
x86_64-linux-musl-g++: error: unrecognized command-line option '-V'
x86_64-linux-musl-g++: fatal error: no input files
compilation terminated.
configure:10383: $? = 1
configure:10372: /usr/local/musl/bin/x86_64-linux-musl-g++ -qversion >&5
x86_64-linux-musl-g++: error: unrecognized command-line option '-qversion'; did you mean '--version'?
x86_64-linux-musl-g++: fatal error: no input files
compilation terminated.
configure:10383: $? = 1
configure:10387: checking whether we are using the GNU C++ compiler
configure:10406: /usr/local/musl/bin/x86_64-linux-musl-g++ -c -O3 -DNDEBUG conftest.cpp >&5
configure:10406: $? = 0
configure:10415: result: yes
configure:10424: checking whether /usr/local/musl/bin/x86_64-linux-musl-g++ accepts -g
configure:10444: /usr/local/musl/bin/x86_64-linux-musl-g++ -c -g -DNDEBUG conftest.cpp >&5
configure:10444: $? = 0
configure:10485: result: yes
CXXFLAGS chosen by autoconf: -O3
configure:10535: checking C++ compiler /usr/local/musl/bin/x86_64-linux-musl-g++ -DNDEBUG -O3
Test compile:
configure:10549: /usr/local/musl/bin/x86_64-linux-musl-g++ -DNDEBUG -O3 conftest.cc >&5
configure:10552: $? = 0
configure:10556: ./a.out || ./b.out || ./a.exe || ./a_out.exe || ./conftest
Error loading shared library libstdc++.so.6: No such file or directory (needed by ./a.out)
Error loading shared library libgcc_s.so.1: No such file or directory (needed by ./a.out)
./../src/v6.3.0-27b6a2315b.clean/configure: line 10557: ./b.out: No such file or directory
./../src/v6.3.0-27b6a2315b.clean/configure: line 10557: ./a.exe: No such file or directory
./../src/v6.3.0-27b6a2315b.clean/configure: line 10557: ./a_out.exe: No such file or directory
./../src/v6.3.0-27b6a2315b.clean/configure: line 10557: ./conftest: No such file or directory
configure:10559: $? = 127
failed program was:

int main (void) { return 0; }
configure:10664: result: no, program does not run
configure:10680: error: C++ compiler not available, see config.log for details

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=x86_64-pc-linux-gnu
ac_cv_c_compiler_gnu=yes
ac_cv_cxx_compiler_gnu=yes
ac_cv_env_ABI_set=
ac_cv_env_ABI_value=
ac_cv_env_CCC_set=
ac_cv_env_CCC_value=
ac_cv_env_CC_FOR_BUILD_set=set
ac_cv_env_CC_FOR_BUILD_value='touch a.out | touch conftest | true'
ac_cv_env_CC_set=set
ac_cv_env_CC_value=/usr/local/musl/bin/x86_64-linux-musl-gcc
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value=-O3
ac_cv_env_CPPFLAGS_set=set
ac_cv_env_CPPFLAGS_value=-DNDEBUG
ac_cv_env_CPP_FOR_BUILD_set=set
ac_cv_env_CPP_FOR_BUILD_value='touch a.out | touch conftest | true'
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXCPP_set=
ac_cv_env_CXXCPP_value=
ac_cv_env_CXXFLAGS_set=set
ac_cv_env_CXXFLAGS_value=-O3
ac_cv_env_CXX_set=set
ac_cv_env_CXX_value=/usr/local/musl/bin/x86_64-linux-musl-g++
ac_cv_env_LDFLAGS_set=set
ac_cv_env_LDFLAGS_value=-L/opt/static-php-cli/vcpkg_installed/x64-linux-musl/lib
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_LT_SYS_LIBRARY_PATH_set=
ac_cv_env_LT_SYS_LIBRARY_PATH_value=
ac_cv_env_M4_set=
ac_cv_env_M4_value=
ac_cv_env_YACC_set=
ac_cv_env_YACC_value=
ac_cv_env_YFLAGS_set=
ac_cv_env_YFLAGS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=x86_64-linux-musl
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_host=x86_64-pc-linux-musl
ac_cv_objext=o
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_mkdir=/usr/bin/mkdir
ac_cv_prog_AWK=gawk
ac_cv_prog_CC=/usr/local/musl/bin/x86_64-linux-musl-gcc
ac_cv_prog_CPP='/usr/local/musl/bin/x86_64-linux-musl-gcc -E'
ac_cv_prog_STRIP=/usr/local/musl/bin/x86_64-linux-musl-strip
ac_cv_prog_cc_c89=
ac_cv_prog_cc_c99=
ac_cv_prog_cc_g=yes
ac_cv_prog_cxx_g=yes
ac_cv_prog_make_make_set=yes
am_cv_make_support_nested_variables=yes
am_cv_prog_cc_c_o=yes
gmp_cv_c_for_build_ansi=yes
gmp_cv_check_libm_for_build=-lm
gmp_cv_prog_exeext_for_build=

## ----------------- ##
## Output variables. ##
## ----------------- ##

ABI='64'
ACLOCAL='${SHELL} /usr/vcpkg/buildtrees/gmp/src/v6.3.0-27b6a2315b.clean/missing aclocal-1.16'
AMTAR='$${TAR-tar}'
AM_BACKSLASH='\'
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
AM_DEFAULT_VERBOSITY='1'
AM_V='$(V)'
AR='/usr/local/musl/bin/x86_64-linux-musl-ar'
AS=''
ASMFLAGS='-c'
AUTOCONF='${SHELL} /usr/vcpkg/buildtrees/gmp/src/v6.3.0-27b6a2315b.clean/missing autoconf'
AUTOHEADER='${SHELL} /usr/vcpkg/buildtrees/gmp/src/v6.3.0-27b6a2315b.clean/missing autoheader'
AUTOMAKE='${SHELL} /usr/vcpkg/buildtrees/gmp/src/v6.3.0-27b6a2315b.clean/missing automake-1.16'
AWK='gawk'
CALLING_CONVENTIONS_OBJS='amd64call.lo amd64check$U.lo'
CC='/usr/local/musl/bin/x86_64-linux-musl-gcc'
CCAS='x86_64-linux-musl-gcc'
CC_FOR_BUILD='touch a.out | touch conftest | true'
CFLAGS='-O3'
CPP='/usr/local/musl/bin/x86_64-linux-musl-gcc -E'
CPPFLAGS='-DNDEBUG'
CPP_FOR_BUILD='touch a.out | touch conftest | true'
CXX='/usr/local/musl/bin/x86_64-linux-musl-g++'
CXXCPP=''
CXXFLAGS='-O3'
CYGPATH_W='echo'
DEFN_LONG_LONG_LIMB='/* #undef _LONG_LONG_LIMB */'
DEFS=''
DLLTOOL=''
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
ENABLE_STATIC_FALSE=''
ENABLE_STATIC_TRUE=''
EXEEXT=''
EXEEXT_FOR_BUILD=''
FGREP=''
GMP_LDFLAGS=''
GMP_LIMB_BITS=''
GMP_NAIL_BITS='0'
GREP=''
HAVE_CLOCK_01=''
HAVE_CPUTIME_01=''
HAVE_GETRUSAGE_01=''
HAVE_GETTIMEOFDAY_01=''
HAVE_HOST_CPU_FAMILY_power='0'
HAVE_HOST_CPU_FAMILY_powerpc='0'
HAVE_SIGACTION_01=''
HAVE_SIGALTSTACK_01=''
HAVE_SIGSTACK_01=''
HAVE_STACK_T_01=''
HAVE_SYS_RESOURCE_H_01=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
LD='/usr/local/musl/bin/x86_64-linux-musl-ld.gold'
LDFLAGS='-L/opt/static-php-cli/vcpkg_installed/x64-linux-musl/lib'
LEX=''
LEXLIB=''
LEX_OUTPUT_ROOT=''
LIBCURSES=''
LIBGMPXX_LDFLAGS=''
LIBGMP_DLL=''
LIBGMP_LDFLAGS=''
LIBM=''
LIBM_FOR_BUILD='-lm'
LIBOBJS=''
LIBREADLINE=''
LIBS=''
LIBTOOL=''
LIPO=''
LN_S=''
LTLIBOBJS=''
LT_SYS_LIBRARY_PATH=''
M4=''
MAINT='#'
MAINTAINER_MODE_FALSE=''
MAINTAINER_MODE_TRUE='#'
MAKEINFO='${SHELL} /usr/vcpkg/buildtrees/gmp/src/v6.3.0-27b6a2315b.clean/missing makeinfo'
MANIFEST_TOOL=''
MKDIR_P='/usr/bin/mkdir -p'
NM='/usr/local/musl/bin/x86_64-linux-musl-nm'
NMEDIT=''
OBJDUMP='/usr/local/musl/bin/x86_64-linux-musl-objdump'
OBJEXT='o'
OTOOL64=''
OTOOL=''
PACKAGE='gmp'
PACKAGE_BUGREPORT='gmp-bugs@gmplib.org (see https://gmplib.org/manual/Reporting-Bugs.html)'
PACKAGE_NAME='GNU MP'
PACKAGE_STRING='GNU MP 6.3.0'
PACKAGE_TARNAME='gmp'
PACKAGE_URL='http://www.gnu.org/software/gmp/'
PACKAGE_VERSION='6.3.0'
PATH_SEPARATOR=':'
RANLIB='/usr/local/musl/bin/x86_64-linux-musl-ranlib'
SED=''
SET_MAKE=''
SHELL='/bin/sh'
SPEED_CYCLECOUNTER_OBJ='x86_64.lo'
STRIP='/usr/local/musl/bin/x86_64-linux-musl-strip'
TAL_OBJECT=''
TUNE_LIBS=''
TUNE_SQR_OBJ=''
U_FOR_BUILD=''
VERSION='6.3.0'
WANT_CXX_FALSE=''
WANT_CXX_TRUE=''
WITH_READLINE_01=''
YACC=''
YFLAGS=''
ac_ct_AR=''
ac_ct_CC=''
ac_ct_CXX=''
ac_ct_DUMPBIN=''
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE=''
am__isrc=' -I$(srcdir)'
am__leading_dot='.'
am__tar='$${TAR-tar} chof - "$$tardir"'
am__untar='$${TAR-tar} xf -'
bindir='${prefix}/tools/gmp/bin'
build='x86_64-pc-linux-gnu'
build_alias=''
build_cpu='x86_64'
build_os='linux-gnu'
build_vendor='pc'
datadir='${datarootdir}'
datarootdir='${prefix}/share/gmp'
docdir='${prefix}/share/gmp'
dvidir='${docdir}'
exec_prefix='NONE'
gmp_srclinks=''
host='x86_64-pc-linux-musl'
host_alias='x86_64-linux-musl'
host_cpu='x86_64'
host_os='linux-musl'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='${SHELL} /usr/vcpkg/buildtrees/gmp/src/v6.3.0-27b6a2315b.clean/install-sh'
libdir='${prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${prefix}/share/gmp'
mkdir_p='$(MKDIR_P)'
mpn_objects=''
mpn_objs_in_libgmp=''
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/opt/static-php-cli/vcpkg_installed/x64-linux-musl'
program_transform_name='s,x,x,'
psdir='${docdir}'
runstatedir='${localstatedir}/run'
sbindir='${prefix}/tools/gmp/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "GNU MP"
#define PACKAGE_TARNAME "gmp"
#define PACKAGE_VERSION "6.3.0"
#define PACKAGE_STRING "GNU MP 6.3.0"
#define PACKAGE_BUGREPORT "gmp-bugs@gmplib.org (see https://gmplib.org/manual/Reporting-Bugs.html)"
#define PACKAGE_URL "http://www.gnu.org/software/gmp/"
#define PACKAGE "gmp"
#define VERSION "6.3.0"
#define WANT_FFT 1
#define HAVE_HOST_CPU_x86_64 1
#define HAVE_SPEED_CYCLECOUNTER 2
#define HAVE_CALLING_CONVENTIONS 1

configure: exit 1

Additional context

vcpkg.json
{
  "dependencies": [
    "acl",
    "aom",
    "argon2",
    "brotli",
    "bzip2",
    "c-ares",
    "curl",
    "freetype",
    "gettext",
    "gmp",
    "grpc",
    "icu",
    "libavif",
    "libde265",
    "libevent",
    "libffi",
    {
      "name": "libgd",
      "features": [
        "fontconfig",
        "freetype",
        "jpeg",
        "png",
        "tiff",
        "webp"
      ]
    },
    "libiconv",
    "libpng",
    "librabbitmq",
    "librdkafka",
    "libsodium",
    "libssh2",
    "libuuid",
    "libuv",
    "libwebp",
    "libxml2",
    "libxslt",
    "libyaml",
    "libzip",
    "lz4",
    "mimalloc",
    "ncurses",
    "nghttp2",
    "nghttp3",
    "openldap",
    "pkgconf",
    "readline",
    "snappy",
    "sqlite3",
    "tidy-html5",
    "tiff",
    "zlib",
    "zstd"
  ]
}

x64-linux-musl.cmake

set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE static)
set(VCPKG_LIBRARY_LINKAGE static)
set(VCPKG_CMAKE_SYSTEM_NAME Linux)
set(VCPKG_BUILD_TYPE release)

set(VCPKG_C_FLAGS "-fPIC -fPIE -static")
set(VCPKG_CXX_FLAGS "-fPIC -fPIE -static -static-libgcc -static-libstdc++")

set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${CMAKE_CURRENT_LIST_DIR}/x64-linux-musl-toolchain.cmake")

x64-linux-musl-toolchain.cmake

set(CMAKE_C_COMPILER /usr/local/musl/bin/x86_64-linux-musl-gcc)
set(CMAKE_CXX_COMPILER /usr/local/musl/bin/x86_64-linux-musl-g++)
set(CMAKE_AR /usr/local/musl/bin/x86_64-linux-musl-ar)
set(CMAKE_LINKER /usr/local/musl/bin/x86_64-linux-musl-ld.gold)
set(CMAKE_CROSSCOMPILING TRUE) # can comment out, doesn't change anything

I've tried setting LD_LIBRARY_PATH, but then vcpkg fails to run because it's expecting to load glibc libraries.

@WangWeiLin-MV WangWeiLin-MV added the category:community-triplet A PR or issue related to community triplets not officially validated by the vcpkg team. label Mar 24, 2025
@DubbleClick
Copy link
Author

For what it's worth, it's rather obvious what the issue is here. The ./configure action from gmp compiles a test program with the musl gcc dynamically (even though I'm compiling statically) and then fails to run it because it can't find the musl libraries.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:community-triplet A PR or issue related to community triplets not officially validated by the vcpkg team.
Projects
None yet
Development

No branches or pull requests

2 participants