0

I try to crosscompile usrsctp for Windows using x86_64-w64-mingw32-gcc on a Ubuntu subsystem like this:

$ ./bootstrap
$ CC="x86_64-w64-mingw32-gcc" ./configure
$ make

But make gives me this:

/bin/bash ../libtool  --tag=CC   --mode=compile x86_64-w64-mingw32-gcc -DPACKAGE_NAME=\"libusrsctp\" -DPACKAGE_TARNAME=\"libusrsctp\" -DPACKAGE_VERSION=\"0.9.5.0\" -DPACKAGE_STRING=\"libusrsctp\ 0.9.5.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libusrsctp\" -DVERSION=\"0.9.5.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DLT_OBJDIR=\".libs/\" -DSCTP_DEBUG=1 -DINET=1 -DINET6=1 -DHAVE_STDATOMIC_H=1 -Dsocklen_t=int -I.    -DSCTP_PROCESS_LEVEL_LOCKS -DSCTP_SIMPLE_ALLOCATOR -D__Userspace__ -g -O2 -std=c99 -pthread -D_GNU_SOURCE -Wno-address-of-packed-member -Werror -gdwarf-3 -pedantic -Wall -O0 -MT libusrsctp_la-user_environment.lo -MD -MP -MF .deps/libusrsctp_la-user_environment.Tpo -c -o libusrsctp_la-user_environment.lo `test -f 'user_environment.c' || echo './'`user_environment.c
libtool: compile:  x86_64-w64-mingw32-gcc -DPACKAGE_NAME=\"libusrsctp\" -DPACKAGE_TARNAME=\"libusrsctp\" -DPACKAGE_VERSION=\"0.9.5.0\" "-DPACKAGE_STRING=\"libusrsctp 0.9.5.0\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libusrsctp\" -DVERSION=\"0.9.5.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DLT_OBJDIR=\".libs/\" -DSCTP_DEBUG=1 -DINET=1 -DINET6=1 -DHAVE_STDATOMIC_H=1 -Dsocklen_t=int -I. -DSCTP_PROCESS_LEVEL_LOCKS -DSCTP_SIMPLE_ALLOCATOR -D__Userspace__ -g -O2 -std=c99 -pthread -D_GNU_SOURCE -Wno-address-of-packed-member -Werror -gdwarf-3 -pedantic -Wall -O0 -MT libusrsctp_la-user_environment.lo -MD -MP -MF .deps/libusrsctp_la-user_environment.Tpo -c user_environment.c  -fPIC -DPIC -o .libs/libusrsctp_la-user_environment.o
<command-line>: error: two or more data types in declaration specifiers
make[1]: *** [Makefile:635: libusrsctp_la-user_environment.lo] Error 1
make[1]: Leaving directory '/mnt/c/git/usrsctp/usrsctplib'
make: *** [Makefile:407: all-recursive] Error 1

Unfortunately there are not any line-numbers to help me locating the error. (I've already checked user_environment.c for missing ;s.)

How can I get more information about that error?

(By the way, x86_64-w64-mingw32-gcc is working fine. I've already compiled other libraries like SDL2 with it.)

user1511417
  • 1,880
  • 3
  • 20
  • 41
  • Not sure why it's there, but `-Dsocklen_t=int` is the problem. – ssbssa Aug 24 '21 at 10:52
  • No, this does not help either. It just creates more errors in the end: `programs_helper.c:257:8: error: assignment to ‘const char *’ from ‘int’ makes pointer from integer without a cast` and the error in my question above stays the same. Did you really build the entire thing without any errors? – user1511417 Aug 25 '21 at 16:36

0 Answers0