In the last episode (Jun 14), Karl Denninger said:
> On Sat, Jun 14, 2003 at 09:43:01AM -0700, Doug White wrote:
> > On Sat, 14 Jun 2003, Karl Denninger wrote:
> > 
> > > Can it be done with a command-line switch to the compiler or gcc,
> > > or am I consigned to dual-booting?
> > 
> > You mean building apps linked against 4.X libs vs. 5.X? With some
> > creative -L flags you might be able to get it to not use
> > /usr/lib/libc* and use /usr/lib/compat/libc* instead, which has
> > copies of certain 4.X libs in it.
> > 
> > Let us know if you get it working :)
> 
> Will play with that one....

That won't work.  The reason shared libraries get their versions bumped
and the old ones move into compat is that the ABI changes.  Unless you
kept the headers for those old shlibs laying around someplace, gcc will
compile programs using the ABI for the libs in /usr/lib.
 
> The problem is that I have a lot of users on the 4.x release(s) of
> the OS, and have binary apps that I'm supporting for them.  Linking
> static is an option, but does ugly things to the file sizes.

That will break the first time a 5.0-compiled library decides to use a
syscall not in 4.x.
 
> Thus, wondering if I can link the other way and still have it run on
> a 4.x box.  I guess it depends on what the application is and what
> dependancies there are.

You will need to keep a 4.x box around (or possibly build a chrooted
4.x environment) to build older binaries.  I believe until last month
the Linux Mozilla binaries were built on a RedHat 6.2 system, to
maximize the number of machines it would run on.

-- 
        Dan Nelson
        [EMAIL PROTECTED]
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to