When cross compiling icu's configure gives the following message configure: error: Error! Cross compiling but no --with-cross-build option specified - please supply the path to an executable ICU's build root To cross compile icu, icu needs first be compiled with host=build and the compiled again for the target architecture. I achived this, by adding the following lines to the ebuild: --- /usr/portage/dev-libs/icu/icu-4.4.1.ebuild 2010-07-03 01:05:39.000000000 +0200 +++ /usr/local/portage/dev-libs/icu/icu-4.4.1.ebuild 2010-07-24 14:35:27.000000000 +0200 @@ -52,6 +52,22 @@ epatch "${FILESDIR}/${P}-pkgdata.patch" epatch "${FILESDIR}/${P}-et_EE.patch" + + if [[ "$CBUILD" != "$CHOST" ]]; then + cd $S/.. + cp -r source source.native + cd source.native + cflags_= $CFLAGS + CFLAGS="" + cxxflags_= $CXXFLAGS + CXXFLAGS="" + ./configure --build=$CBUILD --host=$CBUILD --disable-debug --disable-samples --disable-static + make + CFLAGS=$cflags_ + CXXFLAGS=$cxxflags_ + cd $S + crossbuilddir=" --with-cross-build=${S}.native" + fi } src_configure() { @@ -60,7 +76,8 @@ econf \ $(use_enable debug) \ $(use_enable examples samples) \ - $(use_enable static-libs static) + $(use_enable static-libs static) \ + ${crossbuilddir} } src_test() { Reproducible: Always
Created attachment 240029 [details] mipsel-unknown-linux-gnu --info
Created attachment 240031 [details] emerge output for icu
Created attachment 240033 [details] working ebuild
Comment on attachment 240033 [details] working ebuild Attach patches for ebuilds, not whole ebuilds.
Created attachment 240123 [details, diff] icu ebuild cross compile patch This is the same patch as already written in the first comment.
src_configure() { if tc-is-cross-compiler; then CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ CC=$(tc-getBUILD_CC) CXX=$(tc-getBUILD_CXX) AR=$(tc-getBUILD_AR) \ RANLIB=$(tc-getBUILD_RANLIB) LD=$(tc-getBUILD_LD) \ ./configure --disable-debug --disable-samples --enable-static || die emake mkdir host cp -a {bin,lib,config} host emake clean extra_params="--with-cross-build=${S}/host" fi econf \ $(use_enable debug) \ $(use_enable examples samples) \ $(use_enable static-libs static) \ ${extra_params} }
I commited patch that should handle the cross compilation to icu-50_rc-r2. Could you please test it and reopen/open new bug if it is still causing issues?