Gabor Kovesdan <gabor_at_FreeBSD.org> writes: > Em 2010.06.17. 23:21, Anonymous escreveu: >>> If cross-compiling doesn't work, how did you build the former one that >>> gave you that error? >>> >> Here is my guess >> >> libiconv_modules compiles fine but installs both normal and lib32 objdir >> into /usr/lib when lib32 should use /usr/lib32. >> >> mkcsmapper/mkesdb are failing to install because they're treated as >> build-tools for host system and never compiled for target >> system. However, they're not included in lib32 target and so are not >> built for i386 arch during normal buildworld on amd64 host where >> host = target. >> > Here's the new patch, which is supposed to fix the following issues: > - Fixed build on amd64 and fixed cross-compiling > - Fixed hang when linked to libthr > - Fixed iconv() prototype as per POSIX > - More GNU compatibility: "" or "char" means the current local > encoding in use > > http://kovesdan.org/patches/iconv_current.diff Do you create /usr/lib32/i18n directory before installing into it? $ make buildworld ... ===> lib/libiconv_modules/BIG5 (install) sh /a/dirty_build/tools/install.sh -o root -g wheel -m 444 libBIG5.so.4 /a/objdir/a/dirty_build/lib32/usr/lib32/i18n ln -fs libBIG5.so.4 /a/objdir/a/dirty_build/lib32/usr/lib32/i18n/libBIG5.so ln: /a/objdir/a/dirty_build/lib32/usr/lib32/i18n/libBIG5.so: Not a directory *** Error code 1 $ sudo make installworld ... ===> libiconv_modules (install) ===> libiconv_modules/BIG5 (install) install -o root -g wheel -m 444 libBIG5.so.4 /usr/lib32/i18n ln -fs libBIG5.so.4 /usr/lib32/i18n/libBIG5.so ln: /usr/lib32/i18n/libBIG5.so: Not a directory *** Error code 1 $ file /a/objdir/a/dirty_build/lib32/usr/lib32/dtrace /a/objdir/a/dirty_build/lib32/usr/lib32/dtrace: ELF 32-bit LSB relocatable, Intel 80386, version 1 (FreeBSD), not stripped $ file /a/objdir/a/dirty_build/lib32/usr/lib32/i18n /a/objdir/a/dirty_build/lib32/usr/lib32/i18n: ELF 32-bit LSB shared object, Intel 80386, version 1 (FreeBSD), dynamically linked, not stripped $ file /usr/lib32/i18n /usr/lib32/i18n: ELF 32-bit LSB shared object, Intel 80386, version 1 (FreeBSD), dynamically linked, not stripped %% this fixes only `installworld' case, though --- Makefile.inc1~ +++ Makefile.inc1 _at__at_ -481,9 +481,11 _at__at_ distribute32 install32: .if make(distribute32) mkdir -p ${DISTDIR}/${DISTRIBUTION}/usr/lib32 # XXX add to mtree mkdir -p ${DISTDIR}/${DISTRIBUTION}/usr/lib32/dtrace # XXX add to mtree + mkdir -p ${DISTDIR}/${DISTRIBUTION}/usr/lib32/i18n # XXX add to mtree .else mkdir -p ${DESTDIR}/usr/lib32 # XXX add to mtree mkdir -p ${DESTDIR}/usr/lib32/dtrace # XXX add to mtree + mkdir -p ${DESTDIR}/usr/lib32/i18n # XXX add to mtree .endif cd ${.CURDIR}/lib; ${LIB32IMAKE} ${.TARGET:S/32$//} .if ${MK_CDDL} != "no" %%Received on Sun Jul 04 2010 - 13:59:01 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:05 UTC