Boost logo

Boost-Build :

Subject: Re: [Boost-build] Problem with resource files on Ubuntu
From: Jürgen Hunold (juergen.hunold_at_[hidden])
Date: 2010-09-07 10:26:07


Hi Ian,

On Tuesday, 7. September 2010 14:13:35 Ian Emmons wrote:
> The 64-bit
> build works fine, but cross-compiling for 32-bits fails on the resource
> file, Version.res.

Yes, because the resource compiler is not specified.

> I've tried digging into the Boost.Build sources to find the problem, but
> unfortunately I am not expert enough to decode exactly what's going
> on. It appears that on non-Windows platforms, a .res target causes an
> invocation of the assembler to create an empty .o, thus effectively making
> the .res file into a no-op. However, when cross-compiling the appropriate
> options (in this case "--32" or "--64") are not added to the assembler's
> command line, and so it compiles a native .o that then fails to link with
> the .o's that came from the C++ compiler.

Symptoms of a missing resource compiler.

> I'm not sure why Boost.Build doesn't just invoke the C++ compiler on an
> empty .cpp file to accomplish the same thing. That would ensure
> compatibility of the .o's without any extra work to get the command line
> options right.

That would be an option, yes.

> Any ideas on how I can fix (or work around) this issue?

I configure gcc like this

using gcc :
          : # compile-command
            i386-mingw32-g++
          : #options
            <rc>i386-mingw32-windres
            <archiver>i386-mingw32-ar
          ;

you just have to add <rc> and maybe <archiver> for static linking.

Yours,

Jürgen

-- 
* Dipl.-Math. Jürgen Hunold       ! Ingenieurgesellschaft für 
* voice: ++49 511 262926 57       ! Verkehrs- und Eisenbahnwesen mbH  
* fax  : ++49 511 262926 99       ! Lister Straße 15
* juergen.hunold_at_[hidden]        ! www.ivembh.de
* 
* Geschäftsführer:                ! Sitz des Unternehmens: Hannover
* Prof. Dr.-Ing. Thomas Siefer    ! Amtsgericht Hannover, HRB 56965
* PD Dr.-Ing. Alfons Radtke       !

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk