Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZAhxEMpQkiyZ/Udu@localhost.localdomain>
Date: Wed, 8 Mar 2023 11:27:12 +0000
From: "Max R. Dechantsreiter" <max@...formancejones.com>
To: musl@...ts.openwall.com
Subject: Re: unknown type name '__gnuc_va_list'

...I configured with

--prefix=/home/maxd/GNU/lib/musl-1.2.3_gcc-12.1.0

so how is it that prefix=/usr/local/musl?

Likewise exec_prefix should not be in system space.

According to 'configure -h':

Installation directories:
  --prefix=PREFIX         main installation prefix [/usr/local/musl]
  --exec-prefix=EPREFIX   installation prefix for executable files [PREFIX]

so in my case both prefix and exec_prefix should be set to

/home/maxd/GNU/lib/musl-1.2.3_gcc-12.1.0

I did not notice this before; but what can I do about it?


On Wed, Mar 08, 2023 at 11:21:35AM +0000, Max R. Dechantsreiter wrote:
> On Tue, Mar 07, 2023 at 08:28:51PM +0000, Ralo Kossovo wrote:
> > Haven't you, by any chance, changed the values of the 'includedir' or
> > 'srcdir' in musl's 'Makefile' or 'config.mak'.
> 
> No changes; in Makefile:
> 
> srcdir = .
> exec_prefix = /usr/local
> bindir = $(exec_prefix)/bin
> 
> prefix = /usr/local/musl
> includedir = $(prefix)/include
> libdir = $(prefix)/lib
> syslibdir = /lib
> 
> (excerpted), and the whole config.mak is as follows:
> 
> # This version of config.mak was generated by:
> # ./configure --prefix=/home/maxd/GNU/lib/musl-1.2.3_gcc-12.1.0 --target=x86_64 --disable-shared
> # Any changes made here will be lost if configure is re-run
> AR = /home/maxd/GNU/opt/gnu/gcc-12.1.0/bin/gcc-ar
> RANLIB = /home/maxd/GNU/opt/gnu/gcc-12.1.0/bin/gcc-ranlib
> ARCH = x86_64
> SUBARCH = 
> ASMSUBARCH = 
> srcdir = .
> prefix = /home/maxd/GNU/lib/musl-1.2.3_gcc-12.1.0
> exec_prefix = $(prefix)
> bindir = $(exec_prefix)/bin
> libdir = $(prefix)/lib
> includedir = $(prefix)/include
> syslibdir = /lib
> CC = gcc
> CFLAGS = 
> CFLAGS_AUTO = -Os -pipe -fomit-frame-pointer -fno-unwind-tables -fno-asynchronous-unwind-tables -ffunction-sections -fdata-sections -Wno-pointer-to-int-cast -Werror=implicit-function-declaration -Werror=implicit-int -Werror=pointer-sign -Werror=pointer-arith -Werror=int-conversion -Werror=incompatible-pointer-types -Werror=discarded-qualifiers -Werror=discarded-array-qualifiers -Waddress -Warray-bounds -Wchar-subscripts -Wduplicate-decl-specifier -Winit-self -Wreturn-type -Wsequence-point -Wstrict-aliasing -Wunused-function -Wunused-label -Wunused-variable
> CFLAGS_C99FSE = -std=c99 -nostdinc -ffreestanding -fexcess-precision=standard -frounding-math -Wa,--noexecstack
> CFLAGS_MEMOPS = -fno-tree-loop-distribute-patterns
> CFLAGS_NOSSP = -fno-stack-protector
> CPPFLAGS = 
> LDFLAGS = 
> LDFLAGS_AUTO = -Wl,--sort-section,alignment -Wl,--sort-common -Wl,--gc-sections -Wl,--hash-style=both -Wl,--no-undefined -Wl,--exclude-libs=ALL -Wl,--dynamic-list=./dynamic.list
> CROSS_COMPILE = 
> LIBCC = -lgcc -lgcc_eh
> OPTIMIZE_GLOBS = internal/*.c malloc/*.c string/*.c
> ALL_TOOLS =  obj/musl-gcc
> TOOL_LIBS =  lib/musl-gcc.specs
> ADD_CFI = no
> MALLOC_DIR = mallocng
> SHARED_LIBS =
> WRAPCC_GCC = $(CC)
> 
> > What output does running 'grep -rni /usr/include' in musl's root
> > directory generate?
> 
> No output:
> 
> [/home/maxd/GNU/Build/musl-1.2.3_gcc-12.1.0] 29> grep -rni /usr/include
> [/home/maxd/GNU/Build/musl-1.2.3_gcc-12.1.0] 30>
> 
> 
> > 
> > On 3/7/23, Max R. Dechantsreiter <max@...formancejones.com> wrote:
> > > My musl-1.2.3 fails to compile the simple test:
> > >
> > > cat > hello.c <<EOF
> > > #include <stdio.h>
> > > int main()
> > > {
> > >   printf("Hello, world!\n");
> > >   return 0;
> > > }
> > > EOF
> > > $INSTALL/bin/musl-gcc hello.c
> > > /usr/include/stdio.h:52:9: error: unknown type name '__gnuc_va_list'
> > >    52 | typedef __gnuc_va_list va_list;
> > >       |         ^~~~~~~~~~~~~~
> > > /usr/include/stdio.h:52:24: error: conflicting types for 'va_list'; have
> > > 'int'
> > >    52 | typedef __gnuc_va_list va_list;
> > >       |                        ^~~~~~~
> > > .
> > > .
> > > .
> > >
> > > I configured musl as follows:
> > >
> > > CC=gcc ./configure \
> > >         --prefix=$INSTALL \
> > >         --target=x86_64 \
> > >         --disable-shared \
> > >>& configure.log
> > > # CROSS_COMPILE configured to "x86_64-":
> > > sed -i 's/\(CROSS_COMPILE = \).*/\1/' config.mak
> > >
> > > and built (cleanly) with GCC 12.1.0 on
> > >
> > > Linux version 4.19.0 (mockbuild@...lder1.eng.sw.ru) (gcc version 4.8.5
> > > 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Dec 15 20:31:06 MSK 2022
> > >
> > > I had the same problem with GCC 10.2.1.
> > >
> > > Is there a known fix/workaround someone could provide?
> > >

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.