[Bug libc/26209] New: Compiling Glibc-2.11.1 on Raspberrypi4 fails as config.guess returns armv7l unknown

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[Bug libc/26209] New: Compiling Glibc-2.11.1 on Raspberrypi4 fails as config.guess returns armv7l unknown

Sourceware - glibc-bugs mailing list
https://sourceware.org/bugzilla/show_bug.cgi?id=26209

            Bug ID: 26209
           Summary: Compiling Glibc-2.11.1 on Raspberrypi4 fails as
                    config.guess returns armv7l unknown
           Product: glibc
           Version: 2.11
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: libc
          Assignee: unassigned at sourceware dot org
          Reporter: rh100605 at aol dot com
                CC: drepper.fsp at gmail dot com
  Target Milestone: ---

I am trying to compile an old gligc-2.11.1 on a Raspberry pi 4. As the
configure script fails with armv7l unsupported, I cannot start make.
I do not have any problem with compiling OpenSSL or other packages on the RPi4.

I thought that the script config.guess was faulty, the owner
[hidden email]  (Ben Ellison) says that he does not know what is wrong.
The compiler when configured for native reports alot more information see below
The problem falls between the compiler and the config.guess script.
Below is the detail....

Ben Elliston ([hidden email])
To:you Details
I don't know the answer to this, sorry. You will need to ask the glibc
folks.
Cheers,
Ben
 ([hidden email])
To:[hidden email] Details
Ben
The actual invocation of configure with error messages is below. My thoughts
are that the term "armv7l" will need translation to be understood by the
compiler. I think it means armv7  32bit without hard floating point, but as
most of the code in an Rpi4 is armhf ( hard float 32bit) as in the eabi, this
is misleading. The cpu is in fact 64bit capable but Rpi OS's do not use this.


pi@raspberrypi:~/Downloads/glibc-build $ sudo ../glibc-2.11.1/configure
--prefix=/opt/glibc/2.11.1 --enable-kernel=2.6.3$
checking build system type... armv7l-unknown-linux-gnueabihf
checking host system type... armv7l-unknown-linux-gnueabihf
checking for gcc... gcc
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
configure: running configure fragment for add-on libidn
configure: running configure fragment for add-on nptl
checking sysdep dirs... configure: error: The armv7l is not supported.



The compiler asked for -march and -mcpu as native, gets more detail from
somewhere and gives

pi@raspberrypi:~/Downloads/glibc-build $ gcc -mcpu=native -march=native -Q
--help=target
The following options are target specific:
  -mabi=                                aapcs-linux
  -mabort-on-noreturn                   [disabled]
  -mandroid                             [disabled]
  -mapcs                                [disabled]
  -mapcs-frame                          [disabled]
  -mapcs-reentrant                      [disabled]
  -mapcs-stack-check                    [disabled]
  -march=                               armv8-a+crc+simd
  -marm                                 [enabled]
  -masm-syntax-unified                  [disabled]
  -mbe32                                [enabled]
  -mbe8                                 [disabled]
  -mbig-endian                          [disabled]
  -mbionic                              [disabled]
  -mbranch-cost=                        -1
  -mcallee-super-interworking           [disabled]
  -mcaller-super-interworking           [disabled]
  -mcmse                                [disabled]
  -mcpu=                                cortex-a72
  -mfix-cortex-m3-ldrd                  [disabled]
  -mflip-thumb                          [disabled]
  -mfloat-abi=                          hard
  -mfp16-format=                        none
  -mfpu=                                vfp
  -mglibc                               [enabled]
  -mhard-float                          
  -mlittle-endian                       [enabled]
  -mlong-calls                          [disabled]
  -mmusl                                [disabled]
  -mneon-for-64bits                     [disabled]
  -mpic-data-is-text-relative           [enabled]
  -mpic-register=                      
  -mpoke-function-name                  [disabled]
  -mprint-tune-info                     [disabled]
  -mpure-code                           [disabled]
  -mrestrict-it                         [disabled]
  -msched-prolog                        [enabled]
  -msingle-pic-base                     [disabled]
  -mslow-flash-data                     [disabled]
  -msoft-float                          
  -mstructure-size-boundary=            8
  -mthumb                               [disabled]
  -mthumb-interwork                     [disabled]
  -mtls-dialect=                        gnu
  -mtp=                                 cp15
  -mtpcs-frame                          [disabled]
  -mtpcs-leaf-frame                     [disabled]
  -mtune=                              
  -muclibc                              [disabled]
  -munaligned-access                    [enabled]
  -mvectorize-with-neon-double          [disabled]
  -mvectorize-with-neon-quad            [enabled]
  -mword-relocations                    [disabled]

  Known ARM ABIs (for use with the -mabi= option):
    aapcs aapcs-linux apcs-gnu atpcs iwmmxt

  Known __fp16 formats (for use with the -mfp16-format= option):
    alternative ieee none

  Known ARM FPUs (for use with the -mfpu= option):
    auto crypto-neon-fp-armv8 fp-armv8 fpv4-sp-d16 fpv5-d16 fpv5-sp-d16 neon
    neon-fp-armv8 neon-fp16 neon-vfpv3 neon-vfpv4 vfp vfp3 vfpv2 vfpv3
vfpv3-d16
    vfpv3-d16-fp16 vfpv3-fp16 vfpv3xd vfpv3xd-fp16 vfpv4 vfpv4-d16

  Valid arguments to -mtp=:
    auto cp15 soft

  Known floating-point ABIs (for use with the -mfloat-abi= option):
    hard soft softfp

  TLS dialect to use:
    gnu gnu2

Cheers
Rob

-----Original Message-----
From: Ben Elliston <[hidden email]>
To: [hidden email]
Sent: Fri, Jul 3, 2020 1:30 pm
Subject: Re: config.guess fails on Raspberry pi4 giving arm7l which is
unrecognised by GNU compilers /scripts for glibc-version build

config.guess (which I maintaing) is working:

  configure:2018: checking build system type
  configure:2036: result: armv7l-unknown-linux-gnueabihf
  configure:2058: checking host system type
  configure:2073: result: armv7l-unknown-linux-gnueabihf

The configure script for glibc is obviously failing somewhere
[reply] [−]Comment 1Jonathan Wakely 2020-07-06 12:21:49 UTC
(In reply to Rob Hookham from comment #0)
> I don't know the answer to this, sorry. You will need to ask the glibc
> folks.


This bugzilla is for GCC not glibc.

See https://www.gnu.org/software/libc/bugs.html for glibc bugs.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug libc/26209] Compiling Glibc-2.11.1 on Raspberrypi4 fails as config.guess returns armv7l unknown

Sourceware - glibc-bugs mailing list
https://sourceware.org/bugzilla/show_bug.cgi?id=26209

Andreas Schwab <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #1 from Andreas Schwab <[hidden email]> ---
Before 2.17, armv7l was part of the ports repository.

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug libc/26209] Compiling Glibc-2.11.1 on Raspberrypi4 fails as config.guess returns armv7l unknown

Sourceware - glibc-bugs mailing list
In reply to this post by Sourceware - glibc-bugs mailing list
https://sourceware.org/bugzilla/show_bug.cgi?id=26209

--- Comment #2 from Rob Hookham <rh100605 at aol dot com> ---
(In reply to Andreas Schwab from comment #1)
> Before 2.17, armv7l was part of the ports repository.

I am not sure I understand, are you telling me that I cannot compile this if I
specify a Kernel below 2.17 ?

If so as I am trying to fix an embedded linux system that has no compiler and
has glibc 2.11.1 that is damaged. (It does howver have a compatible arm
processor.)

I thought that if I compile for a later kernel will it will be rejected by the
embedded system.

Maybe I am misssing something simple here ?
Rgaqrds
Rob

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug libc/26209] Compiling Glibc-2.11.1 on Raspberrypi4 fails as config.guess returns armv7l unknown

Sourceware - glibc-bugs mailing list
In reply to this post by Sourceware - glibc-bugs mailing list
https://sourceware.org/bugzilla/show_bug.cgi?id=26209

Adhemerval Zanella <adhemerval.zanella at linaro dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |adhemerval.zanella at linaro dot o
                   |                            |rg

--- Comment #3 from Adhemerval Zanella <adhemerval.zanella at linaro dot org> ---
(In reply to Rob Hookham from comment #2)

> (In reply to Andreas Schwab from comment #1)
> > Before 2.17, armv7l was part of the ports repository.
>
> I am not sure I understand, are you telling me that I cannot compile this if
> I specify a Kernel below 2.17 ?
>
> If so as I am trying to fix an embedded linux system that has no compiler
> and has glibc 2.11.1 that is damaged. (It does howver have a compatible arm
> processor.)
>
> I thought that if I compile for a later kernel will it will be rejected by
> the embedded system.
>
> Maybe I am misssing something simple here ?
> Rgaqrds
> Rob

What Andreas noted is arm used to be part of glibc-ports [1] before its
inclusing on generic tree on glibc 2.17.  The ports used be a add-on on glibc,
so you need to check out this on the glibc tree and use the --enable-add-ons to
enable it.

[1] git://sourceware.org/git/glibc-ports.git

--
You are receiving this mail because:
You are on the CC list for the bug.
Reply | Threaded
Open this post in threaded view
|

[Bug libc/26209] Compiling Glibc-2.11.1 on Raspberrypi4 fails as config.guess returns armv7l unknown

Sourceware - glibc-bugs mailing list
In reply to this post by Sourceware - glibc-bugs mailing list
https://sourceware.org/bugzilla/show_bug.cgi?id=26209

--- Comment #4 from Rob Hookham <rh100605 at aol dot com> ---
AdhemervalThankyou for the clarification. I had missed the point
entirelyRegardsRob


-----Original Message-----
From: adhemerval.zanella at linaro dot org <[hidden email]>
To: [hidden email]
Sent: Mon, Jul 6, 2020 7:04 pm
Subject: [Bug libc/26209] Compiling Glibc-2.11.1 on Raspberrypi4 fails as
config.guess returns armv7l unknown

https://sourceware.org/bugzilla/show_bug.cgi?id=26209

Adhemerval Zanella <adhemerval.zanella at linaro dot org> changed:

          What    |Removed                    |Added
----------------------------------------------------------------------------
                CC|                            |adhemerval.zanella at linaro
dot o
                  |                            |rg

--- Comment #3 from Adhemerval Zanella <adhemerval.zanella at linaro dot org>
---
(In reply to Rob Hookham from comment #2)

> (In reply to Andreas Schwab from comment #1)
> > Before 2.17, armv7l was part of the ports repository.
>
> I am not sure I understand, are you telling me that I cannot compile this if
> I specify a Kernel below 2.17 ?
>
> If so as I am trying to fix an embedded linux system that has no compiler
> and has glibc 2.11.1 that is damaged. (It does howver have a compatible arm
> processor.)
>
> I thought that if I compile for a later kernel will it will be rejected by
> the embedded system.
>
> Maybe I am misssing something simple here ?
> Rgaqrds
> Rob

What Andreas noted is arm used to be part of glibc-ports [1] before its
inclusing on generic tree on glibc 2.17.  The ports used be a add-on on glibc,
so you need to check out this on the glibc tree and use the --enable-add-ons to
enable it.

[1] git://sourceware.org/git/glibc-ports.git

--
You are receiving this mail because:
You are on the CC list for the bug.