Thank you for the suggestion. I'll look into my RTOS's threading model and try to map pthread calls used in my application to native thread APIs! I may query further in this topic :-) Michael Eager wrote: > > Jeffi Edward.J wrote: >> >> The scenario is as follows... Actually I'm building a huge application >> using >> Diab toolchain . The target RTOS (cant reveal name :-(... ) required >> kernel >> services are also built along with the application. The image is loaded >> into >> target device(powerpc machine) as a bootable image. But that RTOS doesn't >> have pthread support., wheras the library used by Diab-c compiler has >> pthread library. So it worked fine so far. >> >> Now I'm porting this application to GCC compiler. I built the >> powerpc-eabi >> cross tool chain with newlib. Since the pthread library is not part of >> newlib library, I guess I would face problem which porting. :-(.. > > Newlib only has support for pthreads when run on Linux > (see newlib/libc/sys/linux/linuxthreads). > > To support pthreads with your unnamed RTOS in Newlib, you > would need to write all of the corresponding routines which > translate pthreads calls into whatever threading model > the RTOS supports. This is (presumably) what the Diab > tool chain does. > > You may be able to link the pthread support from the Diab > tool chain by including the Diab library after Newlib. > >> I can't use Glibc since there is no support for powerpc-eabi in Glibc! >> How >> to over come this problem? > >> >> Thanks, >> Jeffi >> >> >> >> Ian Lance Taylor-3 wrote: >>> Kai Ruottu <kai.ruottu@xxxxxxxxxxx> writes: >>> >>>> For a layman like me some things sound predestined like that Posix >>>> threads >>>> being an additional feature in an Posix-compatible opsys meanwhile >>>> the >>>> standard C library like newlib implements the base Posix C functions. >>>> The >>>> real priests will know more about these things. So... >>>> >>>> What is the "operating system" on the target? Does it support Posix >>>> threads? >>>> >>>> At least Cygwin on Win32 uses newlib as the base C library and should >>>> support >>>> Posix threads. Also the RTEMS RTOS should use newlib and support Posix >>>> threads : >>>> >>>> http://www.rtems.com/wiki/index.php/RTEMSFeatures >>>> >>>> So I would be really surprised if newlib should nowadays implement >>>> some >>>> "operating system" too... >>> newlib used not only on cygwin and RTEMS, but also on pure embedded >>> systems with no operating system. In that case newlib relies on >>> libgloss to provide some basic functionality. In that scenario, it >>> makes sense to ask whether the newlib/libgloss combination provides >>> POSIX threads for a specific target. >>> >>> In general, as far as I know, the answer is "no." POSIX threads are >>> fairly difficult to implement correctly. >>> >>> Ian >>> >>> >> > > > -- > Michael Eager eager@xxxxxxxxxxxx > 1960 Park Blvd., Palo Alto, CA 94306 650-325-8077 > > -- View this message in context: http://www.nabble.com/How-to-add-pthread-support-for-GCC-powerpc-eabi-cross-platform--tp26020930p26046457.html Sent from the gcc - Help mailing list archive at Nabble.com.