This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: wanting to clarify building with linuxthreads versus NPTL


Robert

It is pretty complete. however if you want linuxthreads and NPTL to be using same ld.so you might want to build glibc with linuxthreads and --with-tls
So that it understands the TLS.


Thanks

Khem

Robert P. J. Day said the following on 12/13/2005 09:32 AM:
  as the last addition to my mini script, i want to add the ability to
select either linuxthreads, NPTL or (what the heck) no threading at
all, so i want to summarize the differences in building between all of
the above.  (i'll restrict myself to recent GNU software.)

  first, given that NPTL is now part of glibc proper, i only need to
add the glibc-linuxthreads tarball if someone selects that threading
model.  so far, so good.

the first couple steps of the toolchain creation:

  * install kernel headers
  * build and install binutils

are identical as they have nothing to do with threads.  from there on
is what matters and i'm going based on what i think i needed to do to
build with NPTL.  one step at a time:

install glibc headers:
----------------------

  for linuxthreads, crosstool didn't appear to need to do anything in
that step.

for NPTL, it seems i was forced to add to the configure options:

	--with-__thread
	--enable-add-ons=nptl

i'm pretty sure this was necessary as a later step would fail without
it.  does this make sense?

build bootstrap gcc:
-------------------

  for linuxthreads, it seemed that there was no need to add thread
support to the bootstrap compiler:

--enable-threads=no

  for NPTL, however, it seemed that i needed the additional configure
options:

	--with-tls		 (not sure about this option)
	--enable-threads=posix   ("posix" is probably default)

again, does this make sense?  does the bootstrap compiler really need
thread support in the case of NPTL?

building and installing glibc:
-----------------------------

  for linuxthreads, this step in crosstool had the following
thread-related configure options:

	--without-tls
	--without-__thread
	enable-add-ons=linuxthreads

for NPTL, though, i'm pretty sure i needed all of the following:

	--with-tls
	--with-__thread
	enable-add-ons=nptl

final gcc:
---------

  it seems both linuxthreads and NPTL just need to set
--enable-threads (with "posix" being the likely default, anyway).



any comments on the above?  i just want the build to be as simple and
straightforward as possible.

rday

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]