Boost logo

Boost Users :

Subject: [Boost-users] [boost][CMake][b2] Differenciate 32bit and 64 bit binaries when using CMake.
From: Klaim - Joël Lamotte (mjklaim_at_[hidden])
Date: 2012-10-11 06:16:05


I am having a problem with b2 on Windows using Visual Studio (2010 & 2012
but it is irrelevant):
Until now I was building boost with b2 in a way that would first build 32
bit version in the default library directory, then the 64bit version in
lib/64 .
I wasn't using the 64bit version until this morning so I didn't get any
problem whatever my use of boost was.
I often use Cmake these days and I set the boost environment variables for
FindBoost CMake script to find it.

My problem is that I'm trying now to use the 64 bit version now and CMake
FindBoost script will only find the 32 bit version.
CMake correctly assume that the library files in the lib directory are the
one to use, however it have no apparent way to
find if it is for 64 or 32 bit.

Now I'm not sure how to fix this.
I see two solutions but I don't see how to apply them:

1. make b2 generate lib and dll files with an additional indication on if
it's 64 or 32 bit address model.
I didn't find such option in b2 --help so I assume that it is not possible?

2. find a way for CMake FindBoost to automatically find the 64 bit binaries
instead of the 32 bit binaris.
I don't see a clear solution to achieve this, because it depends a lot on
how boost have been compiled.

Note: I don't want to use a default boost installation, I want to use my
custom build.

Any advice on how I should proceed?

Thanks for your patience.

Joel Lamotte



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