From owner-freebsd-hackers@FreeBSD.ORG Wed Jan 21 12:47:56 2015 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7E0115DB for ; Wed, 21 Jan 2015 12:47:56 +0000 (UTC) Received: from sh4-5.1blu.de (sh4-5.1blu.de [178.254.11.41]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 42A0DB75 for ; Wed, 21 Jan 2015 12:47:56 +0000 (UTC) Received: from ftp51246-2575596 by sh4-5.1blu.de with local (Exim 4.76) (envelope-from ) id 1YDu7x-0004fQ-R9 for freebsd-hackers@freebsd.org; Wed, 21 Jan 2015 13:11:17 +0100 Date: Wed, 21 Jan 2015 13:11:17 +0100 From: Matthias Apitz To: freebsd-hackers@freebsd.org Subject: make installworld/kernel of an amd64 system into an i386 system Message-ID: <20150121121117.GA10645@sh4-5.1blu.de> Reply-To: Matthias Apitz MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Operating-System: FreeBSD 7.0-RELEASE (i386) User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 Jan 2015 12:47:56 -0000 Hello, I actually run on one of my laptops (Acer C720) a very fresh -HEAD (r276659), but in 32bit; I want to change this to amd64; I produced a amd64 memstick which boots fine and also has the sources and obj tree which was used to create the memstick in /usr/local/acerc720/src /usr/local/acerc720/obj-amd64 What I now think as update procedure to install amd64 into the laptop is: - boot the amd64 system from USB - mount the old i386 root in /dev/ada0p2 as /mnt (there is only this one big file system, /dev/ada0p1 is boot and /dev/ada0p3 is swap) - run cd /usr/local/acerc720/src MAKEOBJDIRPREFIX=/usr/local/acerc720/obj-amd64 export MAKEOBJDIRPREFIX make installworld DESTDIR=/mnt make installkernel DESTDIR=/mnt make distrib-dirs DESTDIR=/mnt make distribution DESTDIR=/mnt mv /mnt/usr/local/lib /mnt/usr/local/lib32 cp /etc/rc.conf /mnt/etc cp /boot/loader.conf /mnt/boot echo 'ldconfig32_paths="/usr/lib32 /usr/local/lib32"' >> /mnt/etc/rc.conf reboot I know that it may happen that not all of the installed packages (with the shared objects now in /usr/local/lib32) will work, and I have to recompile some (or even all) of them, but the system should come up, I think. Any comments about the procedure or something I missed out? Thanks matthias -- Matthias Apitz | /"\ ASCII Ribbon Campaign: E-mail: guru@unixarea.de | \ / - No HTML/RTF in E-mail WWW: http://www.unixarea.de/ | X - No proprietary attachments phone: +49-170-4527211 | / \ - Respect for open standards | en.wikipedia.org/wiki/ASCII_Ribbon_Campaign