Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Mar 2009 06:55:01 -0500 (CDT)
From:      Sergey Babkin <babkin@verizon.net>
To:        srinivasg@esntechnologies.co.in
Cc:        freebsd-current@FreeBSD.org
Subject:   FreeBSD libthr on Redhat
Message-ID:  <1762266444.173443.1238500501801.JavaMail.root@vms244.mailsrvcs.net>

next in thread | raw e-mail | index | archive | help

   No, you can not use the libthr from FreeBSD on Linux. You would not be
   = able to even compile
   it if you try, since it requires the kernel support= that is not
   available on Linux.
   For portability to different OSes, pthr= eads is your only choice. And
   there really
   should not be that much perfo= rmance difference anyway.
   BTW, for better luck with posting to the m= ailing lists, please write
   something sensible
   into the Subject field.Emp= ty or weird subject probably triggers the
   spam filter.
   -SB
   Ma= r 31, 2009 01:11:27 AM, [1]srinivasg@esntechnologies.co.in= wrote:

     Dear All,
     I am not able to post any message to the
     [2]freebsd-hackers@freebsd.org ID.
     When I post a message, I did= not get any error. However, I am able
     to
     receive the messages from all = of you. So, I am sending this
     message to
     you individually. Please, my re= quest is to forward this to the
     list.
     I have written an application = where I have used the libpthread
     library
     for creating the pthreads. Howe= ver, to get the maximum
     optimization, I
     want to use the libthr.a library= instead of libpthread library.
     However,
     when I tried to use on my Redha= t box, I end up with following
     errors.
     ../lib/linux/libthr.a(thr_sem= .o): In function `_sem_init':
     thr_sem.c:(.text+0x100): undefined referen= ce to `ksem_init'
     thr_sem.c:(.text+0x115): undefined reference to `ksem_= destroy'
     ../lib/linux/libthr.a(thr_sem.o): In function
     `_sem_destroy':thr_sem.c:(.text+0x216): undefined reference to
     `ksem_destroy'
     ../lib/= linux/libthr.a(thr_sem.o): In function `_sem_timedwait':
     thr_sem.c:(.tex= t+0x2ad): undefined reference to `ksem_timedwait'
     ../lib/linux/libthr.a(= thr_sem.o): In function `_sem_wait':
     ....
     ....
     ....
     collect= 2: ld returned 1 exit status
     make: *** [target] Error 1
     I underst= and that the "ksem_init" is not available on the Redhat
     box.
     Then, I hav= e tried to use the libc.so.7 from FreeBSD. I have
     included
     the libc.so.7= in my application to getridof the above undefined
     references. Even thou= gh, I end up with the following errors.
     /usr/bin/ld: errno@@FBSD_1.0= : TLS definition in /lib/libc.so.6
     section
     .tbss mismatches non-TLS defi= nition in ../lib/linux/libc.so
     section .bss
     /lib/libc.so.6: could not re= ad symbols: Bad value
     Here, the lib/libc.so.6 is a Redhat libc libra= ry where as
     ../lib/linux/libc.so is a FreeBSD library (libc.so.7).
     <= br>Is it possible to use the FreeBSD libthr.a library file on a
     Redhat
     L= inux box?
     Please let me know the whether it is possible to use the = libthr.a
     library on Redhat box or not.
     Thanks in advance.
     = With Regards,
     Srinivas G
     

References

   1. 3D"mailto:srinivasg@esntechnologies.co.in"
   2. file://localhost/tmp/3D"mailt=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1762266444.173443.1238500501801.JavaMail.root>