Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 Aug 2006 14:40:24 -0400
From:      Mike Meyer <mwm-keyword-freebsdhackers2.e313df@mired.org>
To:        Steve Kargl <sgk@troutmask.apl.washington.edu>
Cc:        hackers@freebsd.org
Subject:   Re: amd64 questions
Message-ID:  <17648.38296.39807.492937@bhuda.mired.org>
In-Reply-To: <20060826180900.GA81762@troutmask.apl.washington.edu>
References:  <17648.35923.366716.65517@bhuda.mired.org> <20060826180900.GA81762@troutmask.apl.washington.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
In <20060826180900.GA81762@troutmask.apl.washington.edu>, Steve Kargl <sgk@troutmask.apl.washington.edu> typed:
> On Sat, Aug 26, 2006 at 02:00:51PM -0400, Mike Meyer wrote:
> > 1) The compiler can build i386 binaries, but the toolchain in general
> >    doesn't do the right thing with the -m32 flag.
> I believe that this may be false because the compiler is
> not built with multilib enabled.

I'm not sure what you're saying is false - that the compiler can
generate i386 binaries, or that the rest of the toolchain doesn't do
the right thing.

I can build i386 binaries with the system cc. However, if I just
specify '-m32', it dies during the link because it tries to link with
amd64 object files. I've managed to get some simple things to build by
passing the appropriate command line to cc.

Would rebuilding the compiler with multilibs fix that problem? Or does
it assume a library structure that isn't in place on FreeBSD?

> > 2) The system can run i386 binaries, but the pkg system doesn't
> >    support installing packages from other architectures.
> I don't understand your 'but' clause.  You can run i386 binaries
> on amd64.  You can install i386 packages on an amd64 system, if
> the port maintainer hasn't used the arch_only=i386 make variable.

Yes, I can install the package - but the package system isn't aware
that there are multiple architectures involved. It always looks in the
same place for libraries, so if you want to install a 64 bit package
and a 32 bit package that both require the same library package, one
of them is going to wind up broken.

Just to be clear, I'm talking about installing pre-built packages,
because building i386 packages on amd64 runs into problems during the
compile, as outlined in #1.

> > 3) openoffice doesn't build on amd64, and the i386 build doesn't run
> >    on amd64, so the recommended way to run openoffice on amd64 is to
> >    run the Linux build.
> Openoffice builds just fine on 6.1.  You need to specify WITHOUT_MOZILLA.

Hmm. My copy of the port sets that for amd64 already. Checking the CVS
repository, it looks like a number of things have broken/unbroken in
the last few days. In particular, one of the repositories appears to
have a broken copy of the tarball the port is using. I'll update the
port, make distclean, and try again.

In the meantime, could you tell me which openoffice port you build?
I'm using openoffice.org-2.0, and not the -devel branch.

	Thanks,
	<mike
-- 
Mike Meyer <mwm@mired.org>		http://www.mired.org/consulting.html
Independent Network/Unix/Perforce consultant, email for more information.



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