Cross build of newlib-cygwin release tag cygwin-2_11_1-release.

cyg Simple cygsimple@gmail.com
Mon Oct 29 16:09:00 GMT 2018


I'm trying to cross build the Cygwin source on a VirtualBox Arch Linux
with GCC-7.3.0 and Binutils 2.31. The process I am using clones the
master repository and then does a checkout of the release tag.  Here is
the configure command from the head of the config.log.

```
$ head /home/cygsimple/src/sf/build/newlib-cygwin/build/config.log |
grep newlib-cygwin-2.11.1/configure
$
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/configure
--prefix=/usr --host=x86_64-pc-cygwin --build=x86_64-pc-linux-gnu
--target=x86_64-pc-cygwin --sysconfdir=/etc --sharedstatedir=/var
--localstatedir=/var
```

With this I get the following errors when compiling _cygwin_crt0_common.cc:

```
c++wrap -pedantic -fomit-frame-pointer -m64 -O2 -g -fno-rtti
-fno-exceptions -fno-use-cxa-atexit -Wall -Wstrict-aliasing
-Wwrite-strings -fno-common -pipe -fbuiltin -fmessage-length=0 -MMD
-Werror -fmerge-constants -ftracer -mcmodel=small -std=gnu++98 -c -o
_cygwin_crt0_common.o
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc
In file included from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:104:0,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/wchar.h:12:2:
error: #include_next is a GCC extension [-Werror]
 #include_next <wchar.h>
  ^~~~~~~~~~~~
In file included from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/cygtls.h:284:0,
                 from ./globals.h:5,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:287,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/ntdll.h:1671:60:
error: use of C++11 long long integer constant [-Werror=long-long]
     fbi.LastWriteTime.QuadPart = fbi.ChangeTime.QuadPart = 0LL;
                                                            ^~~
In file included from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/thread.h:25:
,
                 from ./globals.h:7,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:287,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:112:51:
error: ISO C++ does not permit named variadic macros
[-Werror=variadic-macros]
 #define MKSID(name, comment, authority, count, rid...) \
                                                   ^~~
In file included from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/thread.h:28:
,
                 from ./globals.h:7,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:287,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/cygwait.h:42:31:
error: use of C++11 long long integer constant [-Werror=long-long]
       li_howlong.QuadPart = -(10000ULL * howlong);
                               ^~~~~~~~
In file included from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:80:
,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/wincap.h:30:3:
error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
   };
   ^
In file included from ./globals.h:5:0,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:287,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/cygtls.h:58:2:
error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  };
  ^
In file included from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/cygtls.h:284:0,
                 from ./globals.h:5,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:287,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/ntdll.h:291:33:
error: comma at end of enumerator list [-Werror=pedantic]
   SystemPagefileInformation = 18,
                                 ^
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/ntdll.h:366:15:
error: comma at end of enumerator list [-Werror=pedantic]
   StateUnknown,
               ^
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/ntdll.h:
In function 'NTSTATUS NtSetAttributesFile(HANDLE, ULONG)':
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/ntdll.h:1672:32:
error: ISO C++ does not allow ?: with omitted middle operand
[-Werror=pedantic]
     fbi.FileAttributes = attr ?: FILE_ATTRIBUTE_NORMAL;
                                ^
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/ntdll.h:1672:31:
error: ISO C++ forbids omitting the middle term of a ?: expression
[-Werror=pedantic]
     fbi.FileAttributes = attr ?: FILE_ATTRIBUTE_NORMAL;
                               ^
In file included from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:30:
,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:
In member function 'void cygpsid::debug_print(const char*) const':
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:181:38:
error: ISO C++ does not allow ?: with omitted middle operand
[-Werror=pedantic]
       debug_printf ("%s %s", prefix ?: "", string (buf) ?: "NULL");
                                      ^
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:181:37:
error: ISO C++ forbids omitting the middle term of a ?: expression
[-Werror=pedantic]
       debug_printf ("%s %s", prefix ?: "", string (buf) ?: "NULL");
                              ~~~~~~~^~~~
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:181:58:
error: ISO C++ does not allow ?: with omitted middle operand
[-Werror=pedantic]
       debug_printf ("%s %s", prefix ?: "", string (buf) ?: "NULL");
                                                          ^
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:181:57:
error: ISO C++ forbids omitting the middle term of a ?: expression
[-Werror=pedantic]
       debug_printf ("%s %s", prefix ?: "", string (buf) ?: "NULL");
                                            ~~~~~~~~~~~~~^~~~
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:
In member function 'void cygsid::debug_print(const char*) const':
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:258:40:
error: ISO C++ does not allow ?: with omitted middle operand
[-Werror=pedantic]
       debug_printf ("%s %s%s", prefix ?: "", string (buf) ?: "NULL",
well_known_sid ? " (*)" : " (+)");
                                        ^
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:258:39:
error: ISO C++ forbids omitting the middle term of a ?: expression
[-Werror=pedantic]
       debug_printf ("%s %s%s", prefix ?: "", string (buf) ?: "NULL",
well_known_sid ? " (*)" : " (+)");
                                ~~~~~~~^~~~
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:258:60:
error: ISO C++ does not allow ?: with omitted middle operand
[-Werror=pedantic]
       debug_printf ("%s %s%s", prefix ?: "", string (buf) ?: "NULL",
well_known_sid ? " (*)" : " (+)");
                                                            ^
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/security.h:258:59:
error: ISO C++ forbids omitting the middle term of a ?: expression
[-Werror=pedantic]
       debug_printf ("%s %s%s", prefix ?: "", string (buf) ?: "NULL",
well_known_sid ? " (*)" : " (+)");
                                              ~~~~~~~~~~~~~^~~~
In file included from ./globals.h:7:0,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:287,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/thread.h:
At global scope:
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/thread.h:657:37:
error: ISO C++ 1998 does not support 'long long' [-Werror=long-long]
   static sem_t *open (unsigned long long hash, LUID luid, int fd, int
oflag,
                                     ^~~~
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/thread.h:666:63:
error: ISO C++ 1998 does not support 'long long' [-Werror=long-long]
   static int getinternal (sem_t *sem, int *sfd, unsigned long long *shash,
                                                               ^~~~
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/thread.h:674:17:
error: ISO C++ 1998 does not support 'long long' [-Werror=long-long]
   unsigned long long hash;
                 ^~~~
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/thread.h:679:28:
error: ISO C++ 1998 does not support 'long long' [-Werror=long-long]
   semaphore (unsigned long long, LUID, int, sem_t *, int, mode_t,
unsigned int);
                            ^~~~
In file included from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/winsup.h:287:0,
                 from
/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/lib/_cygwin_crt0_common.cc:9:
./globals.h:119:2: error: extra ';' [-Werror=pedantic]
 };
  ^
cc1plus: all warnings being treated as errors
make[3]: ***
[/home/cygsimple/src/sf/build/newlib-cygwin/src/newlib-cygwin-2.11.1/winsup/cygwin/../Makefile.common:41:
_cygwin_crt0_common.o] Error 1
make[3]: Leaving directory
'/home/cygsimple/src/sf/build/newlib-cygwin/src/build/x86_64-pc-cygwin/winsup/cygwin'
make[2]: *** [Makefile:81: cygwin] Error 1
make[2]: Leaving directory
'/home/cygsimple/src/sf/build/newlib-cygwin/src/build/x86_64-pc-cygwin/winsup'
make[1]: *** [Makefile:9464: all-target-winsup] Error 2
make[1]: Leaving directory
'/home/cygsimple/src/sf/build/newlib-cygwin/src/build'
make: *** [Makefile:883: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
```

It appears that c++wrap isn't choosing the correct compiler but how can
I tell and change that?

-- 
cyg Simple

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list