public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
* Multilib error with x86_64
@ 2013-08-26 17:17 Bandaru Viswanath
  2013-08-26 18:33 ` Bandaru Viswanath
  0 siblings, 1 reply; 4+ messages in thread
From: Bandaru Viswanath @ 2013-08-26 17:17 UTC (permalink / raw)
  To: crossgcc

Friends,

I have been trying CT-NG (1.18.0) to build a 64-bit and 32-bit capable
toolchain. used the x86_64-unknown-linux-gnu sample, and enabled the
multilib option in there. My host is a x86_64 host. the ct-ng build
threw an error during "Installing C library headers & start files"
phase.

Installing C library headers & start files
[EXTRA]    Configuring C library
[EXTRA]    Installing C library headers
[EXTRA]    Installing C library start files
[INFO ]    =================================================================
[INFO ]    Building for multilib subdir='32'
[EXTRA]      Configuring C library
[EXTRA]      Installing C library start files
[ERROR]      nptl/sysdeps/x86_64/tls.h:69:3: error: #error "TLS
support is required."

..... more errors like this and like
<stdin>:11: error: 'REG_RBP' undeclared (first use in this function)
[ERROR]      <stdin>:11: error: (Each undeclared identifier is
reported only once

Could you please let me know if I made any mistake somewhere ?
Enabling multilib is the only change i made to the sample.  I have
tried few other combinations -

1. unchanged x86_64-unknown-linux-gnu works fine.
2. selecting eglibc instead of glibc and with multilib fails.
3. the x86_64-unknown-linux-uclibc sample, with multilib fails too.

The failures in 2 & 3 are different from the one I mentioned above.

Could you please let me know if I made any mistake somewhere or how to
get the multilib working fine ?

Thanks
vissu

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multilib error with x86_64
  2013-08-26 17:17 Multilib error with x86_64 Bandaru Viswanath
@ 2013-08-26 18:33 ` Bandaru Viswanath
  2013-08-28 20:31   ` Bandaru Viswanath
  0 siblings, 1 reply; 4+ messages in thread
From: Bandaru Viswanath @ 2013-08-26 18:33 UTC (permalink / raw)
  To: crossgcc

HI,

Just wanted to add that the latest version from mercurial also gives
the same error/output.

Thanks
vissu

On Mon, Aug 26, 2013 at 10:47 PM, Bandaru Viswanath
<tripuraari@gmail.com> wrote:
> Friends,
>
> I have been trying CT-NG (1.18.0) to build a 64-bit and 32-bit capable
> toolchain. used the x86_64-unknown-linux-gnu sample, and enabled the
> multilib option in there. My host is a x86_64 host. the ct-ng build
> threw an error during "Installing C library headers & start files"
> phase.
>
> Installing C library headers & start files
> [EXTRA]    Configuring C library
> [EXTRA]    Installing C library headers
> [EXTRA]    Installing C library start files
> [INFO ]    =================================================================
> [INFO ]    Building for multilib subdir='32'
> [EXTRA]      Configuring C library
> [EXTRA]      Installing C library start files
> [ERROR]      nptl/sysdeps/x86_64/tls.h:69:3: error: #error "TLS
> support is required."
>
> ..... more errors like this and like
> <stdin>:11: error: 'REG_RBP' undeclared (first use in this function)
> [ERROR]      <stdin>:11: error: (Each undeclared identifier is
> reported only once
>
> Could you please let me know if I made any mistake somewhere ?
> Enabling multilib is the only change i made to the sample.  I have
> tried few other combinations -
>
> 1. unchanged x86_64-unknown-linux-gnu works fine.
> 2. selecting eglibc instead of glibc and with multilib fails.
> 3. the x86_64-unknown-linux-uclibc sample, with multilib fails too.
>
> The failures in 2 & 3 are different from the one I mentioned above.
>
> Could you please let me know if I made any mistake somewhere or how to
> get the multilib working fine ?
>
> Thanks
> vissu

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multilib error with x86_64
  2013-08-26 18:33 ` Bandaru Viswanath
@ 2013-08-28 20:31   ` Bandaru Viswanath
  2013-08-29  7:51     ` Bandaru Viswanath
  0 siblings, 1 reply; 4+ messages in thread
From: Bandaru Viswanath @ 2013-08-28 20:31 UTC (permalink / raw)
  To: crossgcc

Friends,

I have decided to hand-build the tool chain. I believe i am successful
after some retrials. Of course this wouldn't have been possible
without the beautiful CT-NG tool. I would like to point out couple of
issues from the CT-NG side that I faced.

1. While building glibc for 32 bit hosts on 64 bit CPU, to resolve the
"TLS required" problem, we need to pass -march=i686  as part of
CFLAGS. Also the --host macro should be set to reflect the 32 bit
environment (like i686-unknown-linux-gnu).

2. Both in sysroot and in sysroot/usr/ directories, the lib32 and
lib64 are sym-linked to lib directory. This needs to be modified so
that lib32 is a symlink to lib/32. this has to be done in both places.

3. This may not be an issue with CT-NG, but I will spell out any way.
The --prefix being used for binutils and the gcc must be same, at
least in recent versions of the gcc / binutils.  The binutils uses
release-area prefix, but the pass-1 and pass-2 configure scripts
specify the sysroot area.

4. this is a package specific issue. cloog-ppl is no longer there for
newer GCC. For compiling gcc, the configure script needs to be passed
--enable-cloog-backend=isl as option.

Please let me know if these are real issues or my creations :).

I faced other issues, but i believe they are largely my creations
and/or the specific package bugs.

FWIW, my package combination is -

binutils - 2.23
cloog - 0.16.3
gcc - 4.6.3
glibc- 2.16.0
gmp - 5.0.5
linux - 2.6.32.12
mpc -1.0.1
mpfr - 3.1.1
ppl - 0.12.1

Thanks
Vissu



On Tue, Aug 27, 2013 at 12:03 AM, Bandaru Viswanath
<tripuraari@gmail.com> wrote:
> HI,
>
> Just wanted to add that the latest version from mercurial also gives
> the same error/output.
>
> Thanks
> vissu
>
> On Mon, Aug 26, 2013 at 10:47 PM, Bandaru Viswanath
> <tripuraari@gmail.com> wrote:
>> Friends,
>>
>> I have been trying CT-NG (1.18.0) to build a 64-bit and 32-bit capable
>> toolchain. used the x86_64-unknown-linux-gnu sample, and enabled the
>> multilib option in there. My host is a x86_64 host. the ct-ng build
>> threw an error during "Installing C library headers & start files"
>> phase.
>>
>> Installing C library headers & start files
>> [EXTRA]    Configuring C library
>> [EXTRA]    Installing C library headers
>> [EXTRA]    Installing C library start files
>> [INFO ]    =================================================================
>> [INFO ]    Building for multilib subdir='32'
>> [EXTRA]      Configuring C library
>> [EXTRA]      Installing C library start files
>> [ERROR]      nptl/sysdeps/x86_64/tls.h:69:3: error: #error "TLS
>> support is required."
>>
>> ..... more errors like this and like
>> <stdin>:11: error: 'REG_RBP' undeclared (first use in this function)
>> [ERROR]      <stdin>:11: error: (Each undeclared identifier is
>> reported only once
>>
>> Could you please let me know if I made any mistake somewhere ?
>> Enabling multilib is the only change i made to the sample.  I have
>> tried few other combinations -
>>
>> 1. unchanged x86_64-unknown-linux-gnu works fine.
>> 2. selecting eglibc instead of glibc and with multilib fails.
>> 3. the x86_64-unknown-linux-uclibc sample, with multilib fails too.
>>
>> The failures in 2 & 3 are different from the one I mentioned above.
>>
>> Could you please let me know if I made any mistake somewhere or how to
>> get the multilib working fine ?
>>
>> Thanks
>> vissu

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Multilib error with x86_64
  2013-08-28 20:31   ` Bandaru Viswanath
@ 2013-08-29  7:51     ` Bandaru Viswanath
  0 siblings, 0 replies; 4+ messages in thread
From: Bandaru Viswanath @ 2013-08-29  7:51 UTC (permalink / raw)
  To: crossgcc

Hi,

Another item I missed is this, though I am not sure if this is my
setup problem or otherwise.

From the CT-NG source code, i could see that we are 'touching' stubs.h
inside the sysroot/usr/include. However, the stubs-32.h is not
touched. I did this manually too.

Could somebody please confirm if these are right steps ?

Thanks
vissu

On Thu, Aug 29, 2013 at 2:01 AM, Bandaru Viswanath <tripuraari@gmail.com> wrote:
> Friends,
>
> I have decided to hand-build the tool chain. I believe i am successful
> after some retrials. Of course this wouldn't have been possible
> without the beautiful CT-NG tool. I would like to point out couple of
> issues from the CT-NG side that I faced.
>
> 1. While building glibc for 32 bit hosts on 64 bit CPU, to resolve the
> "TLS required" problem, we need to pass -march=i686  as part of
> CFLAGS. Also the --host macro should be set to reflect the 32 bit
> environment (like i686-unknown-linux-gnu).
>
> 2. Both in sysroot and in sysroot/usr/ directories, the lib32 and
> lib64 are sym-linked to lib directory. This needs to be modified so
> that lib32 is a symlink to lib/32. this has to be done in both places.
>
> 3. This may not be an issue with CT-NG, but I will spell out any way.
> The --prefix being used for binutils and the gcc must be same, at
> least in recent versions of the gcc / binutils.  The binutils uses
> release-area prefix, but the pass-1 and pass-2 configure scripts
> specify the sysroot area.
>
> 4. this is a package specific issue. cloog-ppl is no longer there for
> newer GCC. For compiling gcc, the configure script needs to be passed
> --enable-cloog-backend=isl as option.
>
> Please let me know if these are real issues or my creations :).
>
> I faced other issues, but i believe they are largely my creations
> and/or the specific package bugs.
>
> FWIW, my package combination is -
>
> binutils - 2.23
> cloog - 0.16.3
> gcc - 4.6.3
> glibc- 2.16.0
> gmp - 5.0.5
> linux - 2.6.32.12
> mpc -1.0.1
> mpfr - 3.1.1
> ppl - 0.12.1
>
> Thanks
> Vissu
>
>
>
> On Tue, Aug 27, 2013 at 12:03 AM, Bandaru Viswanath
> <tripuraari@gmail.com> wrote:
>> HI,
>>
>> Just wanted to add that the latest version from mercurial also gives
>> the same error/output.
>>
>> Thanks
>> vissu
>>
>> On Mon, Aug 26, 2013 at 10:47 PM, Bandaru Viswanath
>> <tripuraari@gmail.com> wrote:
>>> Friends,
>>>
>>> I have been trying CT-NG (1.18.0) to build a 64-bit and 32-bit capable
>>> toolchain. used the x86_64-unknown-linux-gnu sample, and enabled the
>>> multilib option in there. My host is a x86_64 host. the ct-ng build
>>> threw an error during "Installing C library headers & start files"
>>> phase.
>>>
>>> Installing C library headers & start files
>>> [EXTRA]    Configuring C library
>>> [EXTRA]    Installing C library headers
>>> [EXTRA]    Installing C library start files
>>> [INFO ]    =================================================================
>>> [INFO ]    Building for multilib subdir='32'
>>> [EXTRA]      Configuring C library
>>> [EXTRA]      Installing C library start files
>>> [ERROR]      nptl/sysdeps/x86_64/tls.h:69:3: error: #error "TLS
>>> support is required."
>>>
>>> ..... more errors like this and like
>>> <stdin>:11: error: 'REG_RBP' undeclared (first use in this function)
>>> [ERROR]      <stdin>:11: error: (Each undeclared identifier is
>>> reported only once
>>>
>>> Could you please let me know if I made any mistake somewhere ?
>>> Enabling multilib is the only change i made to the sample.  I have
>>> tried few other combinations -
>>>
>>> 1. unchanged x86_64-unknown-linux-gnu works fine.
>>> 2. selecting eglibc instead of glibc and with multilib fails.
>>> 3. the x86_64-unknown-linux-uclibc sample, with multilib fails too.
>>>
>>> The failures in 2 & 3 are different from the one I mentioned above.
>>>
>>> Could you please let me know if I made any mistake somewhere or how to
>>> get the multilib working fine ?
>>>
>>> Thanks
>>> vissu

--
For unsubscribe information see http://sourceware.org/lists.html#faq

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-08-29  7:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-08-26 17:17 Multilib error with x86_64 Bandaru Viswanath
2013-08-26 18:33 ` Bandaru Viswanath
2013-08-28 20:31   ` Bandaru Viswanath
2013-08-29  7:51     ` Bandaru Viswanath

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).