Hi Hinko, Hi List, see my inline comments.
On lun, 2008-06-16 at 10:05 +0200, Hinko Kocevar wrote:
> Luigi 'Comio' Mantellini wrote:
> > Ciao again,
> >
> >
> > On ven, 2008-06-13 at 11:22 +0200, Luigi 'Comio' Mantellini wrote:
> >> Ciao,
> >
> >> make[4]: Entering directory
> >> `/mnt/devel/openwrt/OpenWRT.git/build_dir/toolchain-m68k_gcc4.3.1/uClibc-0.9.29'
> >> install -d
> >> /mnt/devel/openwrt/OpenWRT.git/staging_dir/toolchain-m68k_gcc4.3.1//lib
> >> install -m 644 lib/lib*-0.9.29.so \
> >>
> >> /mnt/devel/openwrt/OpenWRT.git/staging_dir/toolchain-m68k_gcc4.3.1//lib
> >> cd lib && tar -cf - *.so.* | tar -xf - -C
> >> /mnt/devel/openwrt/OpenWRT.git/staging_dir/toolchain-m68k_gcc4.3.1//lib
> >> tar: error while loading shared libraries: libpthread.so.0: ELF file data
> >> encoding not little-endian
> >> tar: error while loading shared libraries: libpthread.so.0: ELF file data
> >> encoding not little-endian
>
> You've seem to remove some some mandatory path in system library search - if
> your had LD_LIBRARY_PATH set you've might need to do:
> export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/your/lib
> in contrast to
> export LD_LIBRARY_PATH=/path/to/your/lib
>
I added the following into $(TOP)/rule.mk (and I don't like what I
do...):
export LD_LIBRARY_PATH=$(TOP)/staging_dir/host/lib:$(LD_LIBRARY_PATH)
Anyway I decided to change approach: install directly on the host
environment the GMP and MPFR library need to GCC4.3 compiler... OpenWRT
should make some check to recognize these libraries:
ifneq ($(CONFIG_GCC_VERSION_4_3_X),)
define Require/gmp
echo 'int main(int argc, char **argv) { return
((__GNU_MP_VERSION*1000+__GNU_MP_VERSION_MINOR)*1000+__GNU_MP_VERSION_PATCHLEVEL)>=004001000?0:1;
}' |
gcc -include gmp.h -x c -o $(TMP_DIR)/gmptest.o -lgmp -
endef
$(eval $(call Require,gmp, \
Please install lib gmp >= 4.1.0 \
))
define Require/mpfr
echo 'int main(int argc, char **argv) { return
(MPFR_VERSION>=MPFR_VERSION_NUM(2,3,0))?0:1; }' | \
gcc -include mpfr.h -x c -o $(TMP_DIR)/a.out -lmpfr -
endef
$(eval $(call Require,mpfr, \
Please install lib mpfr >= 2.3.0 \
))
endif
Unfortunately, this code cannot be performed by prereq-build.mk because
we don't know if we need gcc4.3 or not.
> >
> > My self-answer: This error is caused by the "LD_LIBRARY_PATH" that I
> > defined into rule.mk. At this point I need to resolve an issue: GCC4.3
> > requires gmp and mpfr libraries. I added the makefile under the
> > toolchain directory in order to create the needed libraries (libgmp.so
> > and libmpfr.so). I placed these libraries into the
> > staging_dir/host/lib/ directory... but (cross)gcc doesn't start because
> > this directory is not in the ld path... I thought to solve this issue
> > using the LD_LIBRARY_PATH=$(TOP)/staging_dir/host/lib/ ... but this
> > creates the error in tar application....
> >
> > Now, with LD_LIBRARY_PATH env. variable removed, I'm compiling the
> > gcc-final... but I will need it when the (cross)gcc is invoked.
> >
> > question: Where can I place the host libraries (__NOT TARGET__) in order
> > to be visible to cross-compiler (and in general, to crosstools)?
>
> Maybe all you need to do is correctly supply the full path to the
> includes/libraries via C(PP)FLAGS/LDFLAGS in the makefile, or on the command
> line instead of using LD_LIBRARY_PATH. Another approach would be to
> statically build/link the tar app inside the openWRT SDK and use the
> LD_LIBRARY_PATH after all.
>
> HTH,
>
> Hinko
>
I would patch OpenWRT as little as possible, of course. The solution
should be to link statically libgmp and libmpfr to gcc cross-compiler...
but How can I say this to the gcc configure?
Furthermore I chosen to avoid to compile the mpfr and gmp into the
OpenWRT environment... Now I have an error during the gcc-final
regarding ctype_base<char>...
Thanks and Best regards,
luigi
Industrie Dial Face S.p.A.
Luigi Mantellini
R&D - Software
Industrie Dial Face S.p.A.
Via Canzo, 4
20068 Peschiera Borromeo (MI), Italy
Tel.: +39 02 5167 2813
Fax: +39 02 5167 2459
E-mail: [EMAIL PROTECTED]
GPG fingerprint: 3DD1 7B71 FBDF 6376
1B4A
B003 175F E979 907E
1650
<<attachment: idf_logo.gif>>
_______________________________________________ openwrt-devel mailing list [email protected] http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
