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.