Compiling under 5.x for 4.x releases?

2003-06-14 Thread Karl Denninger
Can it be done with a command-line switch to the compiler or gcc, or am I
consigned to dual-booting?

I know the libraries are there for runtime, but can you build executables
for them?

--
-- 
Karl Denninger ([EMAIL PROTECTED]) Internet Consultant & Kids Rights Activist
http://www.denninger.netTired of spam at your company?  LOOK HERE!
http://childrens-justice.orgWorking for family and children's rights
http://diversunion.org  LOG IN AND GET YOUR TANK STICKERS TODAY!
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Compiling under 5.x for 4.x releases?

2003-06-14 Thread Doug White
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 :)

> I know the libraries are there for runtime, but can you build executables
> for them?

The executables are the exact same format.

-- 
Doug White|  FreeBSD: The Power to Serve
[EMAIL PROTECTED]  |  www.FreeBSD.org
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Compiling under 5.x for 4.x releases?

2003-06-14 Thread Karl Denninger
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

> > I know the libraries are there for runtime, but can you build executables
> > for them?
> 
> The executables are the exact same format.

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.

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.

--
-- 
Karl Denninger ([EMAIL PROTECTED]) Internet Consultant & Kids Rights Activist
http://www.denninger.netTired of spam at your company?  LOOK HERE!
http://childrens-justice.orgWorking for family and children's rights
http://diversunion.org  LOG IN AND GET YOUR TANK STICKERS TODAY!
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Compiling under 5.x for 4.x releases?

2003-06-14 Thread Dan Nelson
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]"


Re: Compiling under 5.x for 4.x releases?

2003-06-14 Thread Karl Denninger
Thanks; I guess that means that for now I keep the production build machine
is 4.8-STABLE, and I keep 5.x as a "play" environment until people move
over.

The fun will begin when migration begins in significant numbers, but I still
need to support both!

--
-- 
Karl Denninger ([EMAIL PROTECTED]) Internet Consultant & Kids Rights Activist
http://www.denninger.netTired of spam at your company?  LOOK HERE!
http://childrens-justice.orgWorking for family and children's rights
http://diversunion.org  LOG IN AND GET YOUR TANK STICKERS TODAY!

On Sat, Jun 14, 2003 at 12:28:11PM -0500, Dan Nelson wrote:
> 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.
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "[EMAIL PROTECTED]"


Re: Compiling under 5.x for 4.x releases?

2003-06-14 Thread M. Warner Losh
In message: <[EMAIL PROTECTED]>
Karl Denninger <[EMAIL PROTECTED]> writes:
: Thanks; I guess that means that for now I keep the production build machine
: is 4.8-STABLE, and I keep 5.x as a "play" environment until people move
: over.

I think, but am not positive, that 4.8-stable boxes can build tip of
current again.

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


Re: Compiling under 5.x for 4.x releases?

2003-06-16 Thread Ruslan Ermilov
On Sat, Jun 14, 2003 at 01:04:52PM -0600, M. Warner Losh wrote:
> In message: <[EMAIL PROTECTED]>
> Karl Denninger <[EMAIL PROTECTED]> writes:
> : Thanks; I guess that means that for now I keep the production build machine
> : is 4.8-STABLE, and I keep 5.x as a "play" environment until people move
> : over.
> 
> I think, but am not positive, that 4.8-stable boxes can build tip of
> current again.
> 
Until recently, it was possible to cross-build 4.x on 5.x; and
this only additionally required installing the Perl port.


Cheers,
-- 
Ruslan Ermilov  Sysadmin and DBA,
[EMAIL PROTECTED]   Sunbay Software Ltd,
[EMAIL PROTECTED]   FreeBSD committer


pgp0.pgp
Description: PGP signature