I'm trying to build an i386 buildworld on an amd64 system. I'm at r294370. This is what I've tried so far: make TARGET_ARCH=i386 MAKEOBJDIRPREFIX=/opt/foo/obj.x86 -j8 buildworld make TARGET=i386 MAKEOBJDIRPREFIX=/opt/foo/obj.x86 -j8 buildworld Neither of which work. They both result in the error below. What is the standard procedure for cross-building i386 from amd64? --- sbin.all__D --- cc -fpic -DPIC -O2 -pipe -I/opt/foo/src/sbin/geom/class/mirror/../.. -std=gnu99 -Qunused-arguments -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -c /opt/foo/src/sbin/geom/class/mirror/geom_mirror.c -o geom_mirror.So --- sys.all__D --- --- panic.o --- cc -O2 -pipe -DLOADER_NFS_SUPPORT -DBOOT_FORTH -I/opt/foo/src/sys/boot/i386/loader/../../ficl -I/opt/foo/src/sys/boot/i386/loader/../../ficl/i386 -DLOADER_GZIP_SUPPORT -DLOADER_DISK_SUPPORT -DLOADER_GPT_SUPPORT -DLOADER_MBR_SUPPORT -I/opt/foo/src/sys/boot/i386/loader/../../common -I. -Wall -I/opt/foo/src/sys/boot/i386/loader/.. -I/opt/foo/src/sys/boot/i386/loader/../btx/lib -march=i386 -ffreestanding -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float -std=gnu99 -Qunused-arguments -c /opt/foo/src/sys/boot/i386/loader/../../common/panic.c -o panic.o --- secure.all__D --- --- comp_err.po --- --- share.all__D --- --- charset.pivot.APPLE --- echo "# APPLE" > charset.pivot.APPLE printf "%-32s%-32s%d\n" ARABIC UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS ARABIC 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" CELTIC UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS CELTIC 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" CENTEURO UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS CENTEURO 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" CROATIAN UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS CROATIAN 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" CYRILLIC UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS CYRILLIC 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" DEVANAGA UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS DEVANAGA 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" DINGBATS UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS DINGBATS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" FARSI UCS 1 >> charset.pivot.APPLE --- secure.all__D --- cc -pg -O2 -pipe -DTERMIOS -DANSI_SOURCE -I/opt/foo/src/secure/lib/libcrypto/../../../crypto/openssl -I/opt/foo/src/secure/lib/libcrypto/../../../crypto/openssl/crypto -I/opt/foo/obj.x86/opt/foo/src/secure/lib/libcrypto -DOPENSSL_THREADS -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DOPENSSL_IA32_SSE2 -DAES_ASM -DVPAES_ASM -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DMD5_ASM -DGHASH_ASM -DRMD160_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DWHIRLPOOL_ASM -I/opt/foo/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1 -I/opt/foo/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/evp -I/opt/foo/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/modes -std=gnu89 -Qunused-arguments -fstack-protector -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Wno-parentheses -c /opt/foo/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/comp/comp_err.c -o comp_err.po --- share.all__D --- printf "%-32s%-32s%d\n" UCS FARSI 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" GAELIC UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS GAELIC 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" GREEK UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS GREEK 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" GUJARATI UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS GUJARATI 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" GURMUKHI UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS GURMUKHI 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" HEBREW UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS HEBREW 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" ICELAND UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS ICELAND 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" INUIT UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS INUIT 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" KEYBOARD UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS KEYBOARD 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" ROMAN UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS ROMAN 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" ROMANIAN UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS ROMANIAN 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" SYMBOL UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS SYMBOL 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" THAI UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS THAI 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" TURKISH UCS 1 >> charset.pivot.APPLE printf "%-32s%-32s%d\n" UCS TURKISH 1 >> charset.pivot.APPLE echo >> charset.pivot.APPLE --- ARABIC%UCS.mps --- /opt/foo/obj.x86/opt/foo/src/share/i18n/csmapper/APPLE/../../../../usr.bin/mkcsmapper_static/mkcsmapper_static -o ARABIC%UCS.mps /opt/foo/src/share/i18n/csmapper/APPLE/ARABIC%UCS.src /opt/foo/obj.x86/opt/foo/src/share/i18n/csmapper/APPLE/../../../../usr.bin/mkcsmapper_static/mkcsmapper_static: not found *** [ARABIC%UCS.mps] Error code 127 make[6]: stopped in /opt/foo/src/share/i18n/csmapper/APPLE 1 error make[6]: stopped in /opt/foo/src/share/i18n/csmapper/APPLE *** [APPLE] Error code 2 make[5]: stopped in /opt/foo/src/share/i18n/csmapper 1 error make[5]: stopped in /opt/foo/src/share/i18n/csmapper *** [all_subdir_csmapper] Error code 2 make[4]: stopped in /opt/foo/src/share/i18n 1 error make[4]: stopped in /opt/foo/src/share/i18n *** [all_subdir_i18n] Error code 2 -- DE
On Mon, 25 Jan 2016, Daniel Eischen wrote:> > I'm trying to build an i386 buildworld on an amd64 system. > I'm at r294370.I just updated to r294737 and tried again without the -j8.> This is what I've tried so far: > > make TARGET_ARCH=i386 MAKEOBJDIRPREFIX=/opt/foo/obj.x86 -j8 buildworld > make TARGET=i386 MAKEOBJDIRPREFIX=/opt/foo/obj.x86 -j8 buildworld > > Neither of which work. They both result in the error below. What > is the standard procedure for cross-building i386 from amd64?This is where it stops now: MAKEOBJDIRPREFIX=/opt/foo/10-stable/src/rescue/rescue make -f rescue.mk exe cc -O2 -pipe -c /opt/foo/10-stable/src/bin/cp/utils.c -o /opt/foo/10-stable/src/bin/cp/utils.o /opt/foo/10-stable/src/bin/cp/utils.c:514:14: error: member reference base type 'void' is not a structure or union aclp = &acl->ats_acl; ~~~^ ~~~~~~~ /opt/foo/10-stable/src/bin/cp/utils.c:515:11: error: incomplete definition of type 'struct acl' if (aclp->acl_cnt != 0 && aclsetf(dest_dir, ~~~~^ /opt/foo/10-stable/src/bin/cp/utils.c:465:9: note: forward declaration of 'struct acl' struct acl *aclp; ^ 2 errors generated. *** Error code 1 Stop. make[5]: stopped in /opt/foo/10-stable/src/rescue/rescue *** Error code 1 Stop. make[4]: stopped in /opt/foo/10-stable/src/rescue/rescue *** Error code 1 Stop. make[3]: stopped in /opt/foo/10-stable/src/rescue *** Error code 1 Stop. make[2]: stopped in /opt/foo/10-stable/src *** Error code 1 About to rm -rf the obj directory and try again. -- DE
On Mon, Jan 25, 2016 at 1:55 PM, Daniel Eischen <deischen at freebsd.org> wrote:> > I'm trying to build an i386 buildworld on an amd64 system. > I'm at r294370. > > This is what I've tried so far: > > make TARGET_ARCH=i386 MAKEOBJDIRPREFIX=/opt/foo/obj.x86 -j8 buildworld > make TARGET=i386 MAKEOBJDIRPREFIX=/opt/foo/obj.x86 -j8 buildworld > > Neither of which work. They both result in the error below. What > is the standard procedure for cross-building i386 from amd64? >It looks like you are not alone in encountering these problems. For this build set up by Li-Wen Hsu: https://jenkins.freebsd.org/job/FreeBSD_HEAD_i386 he downloads this image http://ftp.freebsd.org/pub/FreeBSD/releases/i386/i386/10.2-RELEASE/base.txz and then extracts that to create an i386 jail, where the build is performed on an amd64 host. -- Craig