|
|
|
|
||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
hi all:
my code is work well on fedora 7 or fedora 8. now i installed ubuntu, my code can't compile crrectly. error is __errno_location function is not defined: undefined reference to `__errno_location()' but the function is exectly defined in libpthread.a. nm /usr/lib/libpthread.a | grep errno U __errno_location errno.o: 00000051 T __errno_location 00000000 T __h_errno_location U __errno_location U __errno_location why? please! Allen |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
|
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
czp.opensource@gmail.com wrote:
> hi all: > my code is work well on fedora 7 or fedora 8. now i installed > ubuntu, my code can't compile crrectly. > error is __errno_location function is not defined: undefined > reference to `__errno_location()' > but the function is exectly defined in libpthread.a. > nm /usr/lib/libpthread.a | grep errno > U __errno_location > errno.o: > 00000051 T __errno_location > 00000000 T __h_errno_location > U __errno_location > U __errno_location > > why? please! > > Allen Sounds like a linking problem. Is it something to do with the way you have specified libraries to be used. Often if you specify library A first and B later in the list, then if something in B calls something in A, the linker will not find it. One way to handle this is to repeat the list of libraries, so that A now appears after B, as well as before it. Chris Gordon-Smith www.simsoup.info |
|
![]() |
| Outils de la discussion | |
|
|