Boost logo

Boost Users :

From: Paul (elegant_dice_at_[hidden])
Date: 2008-06-30 07:13:30


Hi,

I find the bjam documentation and configuration files very frustrating... it
seems to almost do what you want, but it doesn't finish the job and tell you
how to actually do it correctly.

I have been trying to cross-compile boost 1.35.0 for windows, on a linux
host. The gcc.jam file mentions cross-compiling, but does not mention how
to get it done.

I almost got it to work with a user-config.jam:
using gcc
   : mingw
   : /home/paul/mingw/bin/mingw32-g++
   : <flavor>mingw32
     <root>"/home/paul/mingwj/"
   ;

and then hacking away at the gcc.jam file, which checks the os.system
variable to decide how to link object files and use the -fPIC flag...

around line 703:
if [ os.on-windows ] change to...
if [ modules.peek : UNIX ] to force it to use -mthreads instead of
-pthreads

if [ os.name ] != CYGWIN && [ os.name ] != NT change to
if [ os.name ] = CYGWIN && [ os.name ] != NT to correct -fPIC

it almost did the right thing, except for the extensions... i assume if i
hack these lines, I'll get what i want...

type.set-generated-target-suffix STATIC_LIB : <toolset>gcc <target-os>cygwin
: a ;
type.set-generated-target-suffix IMPORT_LIB : <toolset>gcc <target-os>cygwin
: dll.a ;
type.set-generated-target-prefix IMPORT_LIB : <toolset>gcc <target-os>cygwin
: lib ;

BUT then I'll have to fight to use the mingw32-ar and mingw32-windres and
other programs.

Isn't there an easier way? *please*

I'm giving up on 1.35 as I've just read about the serialization vector bug,
so I'll attempt to use 1.34.1

thanks,
Paul



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net