Re: [gtk-list] Re: More IRIX problems

Erik Mouw wrote:

> Shared libraries are a different story. There are many ways to create a
> shared library in the wrong way. If you use libtool for creating shared
> libraries, you should get libraries that can be used with both the
> system's native C compiler as well as the gcc compiler.

I know how to buid them, with or without libtool, but the problem
arises when somebody just types "./configure; make; make install".
But even libtool builds often fail on Solaris when one uses Sun's compiler.
That's not libtool fault, since in this case configure (or, more
precisely ltconfig) fails to create libtool. That's because of bugs in
autoconf, I think.

> You haven't seen the SGI MipsPRO C compiler. That sucks for many more
> Lovelace, IMHO. The error messages can be very cryptic, so you you don't
> even get a clue what's wrong in your program. On the other hand, it does
> quite a nice job on optimization.

Well, that's the perfect environment for two compilers.

> I actually maintain gcc at my site, so I'm sure that I did not change the
> compiler. THe funny thing about my problem is that I get the messages with
> _exactly_ the same compiler configuration.

Because you have two sets of __register_* symbols in different
libraries and there are no preemption rules. So run time linker makes
arbitrary decision and issues a warning. That's a good behaved software, IMO.

> If you want to see your Slowaris problems on Linux, install gcc 2.7.2
> together with egcs 1.0. ;-)

Oh, that never came to my attention. But then, I don't use Linux.

> > getpwuid_r() is a thread safe version of getpwuid().
> So getpwuid_r() probably sets a lock and calls getpwuid(). That would
> explain why it is so small.

Either that, or getpwuid() and getpwuid_r() are the same function, but
you need to have both symbols, so one just jumps to another. But then
you'd have the same prototypes, which is probably not the case.

 .-.   .-.    Life is a sexually transmitted disease.
(_  \ /  _)

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]