Boost logo

Boost-Build :

Subject: Re: [Boost-build] Uncertain cross compilation (arch=MIPS)
From: ×èíêîâ Àíäðåé (blackmesa_at_[hidden])
Date: 2008-11-05 09:47:54

1) Yes I can explain it in more details.

Objdump utility (as I saw it enters in binutils) can display object
format, i.e. elf32-little or elf32-tradlittlemips (of which consist
objects inside library *.a or *.lib). I do not know what these formats
mean especially strongly, but heard there are 'little' or 'big' endian
byte order.

Some times ago I built libboost_regex.a on MIPS target and successfully
tested it (I used modified gcc.mak instead of bjam). Objdump utility had
shown that libboost_regex.a had elf32-tradlittlemips format. That is why
I want to have libboost_serialization.a the same elf32-tradlittlemips

2) I place bjam logs here:

There are 2 folders in bjam_logs.tar.bz2 archive (for a change):

- Bjam logs (mipsel-linux-uclibc-gcc deleted from PATH, gcc is in the
PATH) - contains bjam logs generated after I delete
mipsel-linux-uclibc-gcc from PATH

- Bjam logs (mipsel-linux-uclibc-gcc is in the PATH, gcc is in the PATH)
- contains bjam logs generated after I place mipsel-linux-uclibc-gcc in
the PATH

Note: Before each bjam launch I deleted bin.v2 folder for cleanliness of

3) Yes, I have compiler and other binutils installed alongside in the
same place (I mean native and cross versions both). I can type in
terminal (I also note: terminal starts from any folder)

"gcc --version"
"mipsel-linux-uclibc-gcc --version"

without problems. So I think we shouldn't blame GCC I have :)


I have to say bjam build libboost_serialization.a hardly - but I can't
link with this produced library :(
When I build my test_serialization.out program cross-linker reports:

mipsel-linux-uclibc-gcc -o test_cpp_mipsel.out
test_cpp_mipsel.o -lboost_regex-gcc-d-1_36
-lboost_serialization-gcc-d-1_36 -lstdc++
skipping incompatible
when searching for -lboost_serialization-gcc-d-1_36
cannot find -lboost_serialization-gcc-d-1_36

and so can not link test_serialization.out with libboost_serialization.a

So the question itself :

why bjam ignore mipsel-linux-uclibc-gcc compiler I specified to it and
build strange library version ?
In other words, why bjam does not produce cross library for MIPSel ?

PS: big thanks 4 partnership :)

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at