You are viewing a plain text version of this content. The canonical link for it is here.
Posted to infrastructure-issues@apache.org by "Martin Sebor (JIRA)" <ji...@apache.org> on 2009/05/30 22:39:07 UTC

[jira] Created: (INFRA-2077) 32-bit gcc broken on minotaur

32-bit gcc broken on minotaur
-----------------------------

                 Key: INFRA-2077
                 URL: https://issues.apache.org/jira/browse/INFRA-2077
             Project: Infrastructure
          Issue Type: Bug
      Security Level: public (Regular issues)
            Reporter: Martin Sebor


The gcc installed on minotaur can successfully generate 64-bit binaries but when invoked with the -m32 option to generate 32-bit code the linker fails to find the corresponding 32-bit libgcc.so (see below). It appears as though the compiler driver doesn't pass -L/usr/lib32 (the location of the 32-bit libgcc) to the linker. Unfortunately, specifying -L/usr/lib32 manually gives the error: /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc.

$ uname -n && echo "int main () { }" > t.c && gcc -v --help 2>&1 | grep m32 && gcc -m32 t.c
minotaur.apache.org
  -m32                        Generate 32bit i386 code
/usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (INFRA-2077) 32-bit gcc broken on minotaur

Posted by "#asfinfra IRC Bot (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/INFRA-2077?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

#asfinfra IRC Bot updated INFRA-2077:
-------------------------------------

    Assignee: Philip M. Gollucci

> 32-bit gcc broken on minotaur
> -----------------------------
>
>                 Key: INFRA-2077
>                 URL: https://issues.apache.org/jira/browse/INFRA-2077
>             Project: Infrastructure
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>            Reporter: Martin Sebor
>            Assignee: Philip M. Gollucci
>
> The gcc installed on minotaur can successfully generate 64-bit binaries but when invoked with the -m32 option to generate 32-bit code the linker fails to find the corresponding 32-bit libgcc.so (see below). It appears as though the compiler driver doesn't pass -L/usr/lib32 (the location of the 32-bit libgcc) to the linker. Unfortunately, specifying -L/usr/lib32 manually gives the error: /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc.
> $ uname -n && echo "int main () { }" > t.c && gcc -v --help 2>&1 | grep m32 && gcc -m32 t.c
> minotaur.apache.org
>   -m32                        Generate 32bit i386 code
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: cannot find -lgcc

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (INFRA-2077) 32-bit gcc broken on minotaur

Posted by "#asfinfra IRC Bot (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/INFRA-2077?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12760421#action_12760421 ] 

#asfinfra IRC Bot commented on INFRA-2077:
------------------------------------------

<pgollucc1> sebor completely irrelevant here, but thanks


> 32-bit gcc broken on minotaur
> -----------------------------
>
>                 Key: INFRA-2077
>                 URL: https://issues.apache.org/jira/browse/INFRA-2077
>             Project: Infrastructure
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>            Reporter: Martin Sebor
>            Assignee: Philip M. Gollucci
>
> The gcc installed on minotaur can successfully generate 64-bit binaries but when invoked with the -m32 option to generate 32-bit code the linker fails to find the corresponding 32-bit libgcc.so (see below). It appears as though the compiler driver doesn't pass -L/usr/lib32 (the location of the 32-bit libgcc) to the linker. Unfortunately, specifying -L/usr/lib32 manually gives the error: /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc.
> $ uname -n && echo "int main () { }" > t.c && gcc -v --help 2>&1 | grep m32 && gcc -m32 t.c
> minotaur.apache.org
>   -m32                        Generate 32bit i386 code
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: cannot find -lgcc

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (INFRA-2077) 32-bit gcc broken on minotaur

Posted by "Philip M. Gollucci (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/INFRA-2077?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Philip M. Gollucci closed INFRA-2077.
-------------------------------------

    Resolution: Fixed

This has never worked on FreeBSD since inception and will probably not work ever.

As a work around, you can use -B/usr/lib32 instead of -L/usr/lib32

There is a possible but incomplete patch here
http://people.freebsd.org/~peter/hammer.diff

and a discussion thread here
http://lists.freebsd.org/pipermail/freebsd-amd64/2008-December/011777.html

You can follow the freebsd bug here --
http://www.freebsd.org/cgi/query-pr.cgi?pr=bin/139146

> 32-bit gcc broken on minotaur
> -----------------------------
>
>                 Key: INFRA-2077
>                 URL: https://issues.apache.org/jira/browse/INFRA-2077
>             Project: Infrastructure
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>            Reporter: Martin Sebor
>            Assignee: Philip M. Gollucci
>
> The gcc installed on minotaur can successfully generate 64-bit binaries but when invoked with the -m32 option to generate 32-bit code the linker fails to find the corresponding 32-bit libgcc.so (see below). It appears as though the compiler driver doesn't pass -L/usr/lib32 (the location of the 32-bit libgcc) to the linker. Unfortunately, specifying -L/usr/lib32 manually gives the error: /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc.
> $ uname -n && echo "int main () { }" > t.c && gcc -v --help 2>&1 | grep m32 && gcc -m32 t.c
> minotaur.apache.org
>   -m32                        Generate 32bit i386 code
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: cannot find -lgcc

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (INFRA-2077) 32-bit gcc broken on minotaur

Posted by "Martin Sebor (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/INFRA-2077?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12760413#action_12760413 ] 

Martin Sebor commented on INFRA-2077:
-------------------------------------

I can't ssh to people.apache.org for some reason to verify that this is the same issue but I've seen a similar problem on other 64-bit systems where it was caused by one or more missing symlinks (e.g., from /usr/lib32/libgcc.so to /usr/lib32/libgcc.so.1 or something like that).

> 32-bit gcc broken on minotaur
> -----------------------------
>
>                 Key: INFRA-2077
>                 URL: https://issues.apache.org/jira/browse/INFRA-2077
>             Project: Infrastructure
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>            Reporter: Martin Sebor
>            Assignee: Philip M. Gollucci
>
> The gcc installed on minotaur can successfully generate 64-bit binaries but when invoked with the -m32 option to generate 32-bit code the linker fails to find the corresponding 32-bit libgcc.so (see below). It appears as though the compiler driver doesn't pass -L/usr/lib32 (the location of the 32-bit libgcc) to the linker. Unfortunately, specifying -L/usr/lib32 manually gives the error: /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc.
> $ uname -n && echo "int main () { }" > t.c && gcc -v --help 2>&1 | grep m32 && gcc -m32 t.c
> minotaur.apache.org
>   -m32                        Generate 32bit i386 code
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: cannot find -lgcc

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (INFRA-2077) 32-bit gcc broken on minotaur

Posted by "Philip M. Gollucci (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/INFRA-2077?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12759821#action_12759821 ] 

Philip M. Gollucci commented on INFRA-2077:
-------------------------------------------

Will have to follow up with freebsd devs

> 32-bit gcc broken on minotaur
> -----------------------------
>
>                 Key: INFRA-2077
>                 URL: https://issues.apache.org/jira/browse/INFRA-2077
>             Project: Infrastructure
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>            Reporter: Martin Sebor
>            Assignee: Philip M. Gollucci
>
> The gcc installed on minotaur can successfully generate 64-bit binaries but when invoked with the -m32 option to generate 32-bit code the linker fails to find the corresponding 32-bit libgcc.so (see below). It appears as though the compiler driver doesn't pass -L/usr/lib32 (the location of the 32-bit libgcc) to the linker. Unfortunately, specifying -L/usr/lib32 manually gives the error: /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc.
> $ uname -n && echo "int main () { }" > t.c && gcc -v --help 2>&1 | grep m32 && gcc -m32 t.c
> minotaur.apache.org
>   -m32                        Generate 32bit i386 code
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: skipping incompatible /usr/lib/libgcc.a when searching for -lgcc
> /usr/bin/ld: cannot find -lgcc

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.