thanks, Ok, looking at the resulting libs, I realized that the gcc version in my ~/user-config.jam file was wrong, here's the new one: ################################################################# # Compiler configuration using darwin : 4.2.1~iphone : /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -arch arm : <striper> : <architecture>arm <target-os>iphone <macosx-version>iphone-3.0 ; using darwin : 4.2.1~iphonesim : /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 : <striper> : <architecture>x86 <target-os>iphone <macosx-version>iphonesim-3.0 ; ################################################################# Ok, I wanted to play it dumb, but here is a shortcut. An estimate is that each option in the following incantation took me 30 minutes of search on the net. So here is the command line I used to build boost for the iphone device (as opposed to the simulator) ./bjam toolset=darwin architecture=arm target-os=iphone macosx-version=iphone-3.0 link=static threading=single define=_LITTLE_ENDIAN include=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include/c++/4.2.1/armv6-apple-darwin9 Compilation succeded, so that's all good. I still three questions thought: 1) couldn't I make the command line shorter? maybe by migrating some of the stuff in the last command line to the user-config.jam? If so, an example would be great (for the include option for instance) 2) I'm now worrying a bit about the name of the generated lib: libboost_filesystem-xgcc42-1_39.a Is that what I should expect? On boost 1.38.0, it was libboost_filesystem.a 3) Btw, how do I know which compiler (exact path) I'm using for sure because all I can see is "darwin.compile.c++"? Thanks, Frank