From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11403 invoked by alias); 25 Jan 2011 11:56:46 -0000 Received: (qmail 11353 invoked by uid 22791); 25 Jan 2011 11:56:45 -0000 X-SWARE-Spam-Status: No, hits=-2.2 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,TW_CZ X-Spam-Check-By: sourceware.org Received: from mail-iy0-f175.google.com (HELO mail-iy0-f175.google.com) (209.85.210.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 25 Jan 2011 11:56:39 +0000 Received: by iyj18 with SMTP id 18so5310663iyj.20 for ; Tue, 25 Jan 2011 03:56:37 -0800 (PST) MIME-Version: 1.0 Received: by 10.42.218.5 with SMTP id ho5mr6480220icb.403.1295956597532; Tue, 25 Jan 2011 03:56:37 -0800 (PST) Received: by 10.42.230.66 with HTTP; Tue, 25 Jan 2011 03:56:37 -0800 (PST) In-Reply-To: <4D3EB514.3040305@web.de> References: <4D36F9D6.5020400@web.de> <4D36FCFC.1000907@acri-st.fr> <4D37089F.50700@web.de> <4D371361.9010609@web.de> <4D3713C3.2040705@redhat.com> <4D371A80.4020604@web.de> <4D371B3E.1090905@redhat.com> <4D37457B.2020003@web.de> <4D375CB5.4010602@caviumnetworks.com> <4D383EFF.1040503@web.de> <4D386FB7.1010407@web.de> <4D3EA686.4090806@web.de> <4D3EB514.3040305@web.de> Date: Tue, 25 Jan 2011 11:56:00 -0000 Message-ID: Subject: Re: Compiling gcc-4.1.2 on 64-bit Ubuntu machines From: Jonathan Wakely To: Olumide <50295@web.de> Cc: gcc-help@gcc.gnu.org Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org X-SW-Source: 2011-01/txt/msg00360.txt.bz2 On 25 January 2011 11:33, Olumide wrote: > On 25/01/2011 10:58, Jonathan Wakely wrote: >> >> On 25 January 2011 10:31, Olumide wrote: >>> >>> I would like to roll out the build to other machines (several dozen >>> actually). I've tried copying the entire hierarchy (source and build) to >>> the >>> target machines and then running make install but I'm getting the error >>> message (I'd appreciate help solving this problem -- thanks): >> >> The problem is that "make install" checks if it needs to rebuild, and >> notices that system headers and other things have changed. >> >> Don't do it that way, instead use "DESTDIR" >> >> http://www.gnu.org/prep/standards/html_node/DESTDIR.html >> >> This allows you to copy the entire installed tree (not the source and >> build trees) to a temporary staging area, from where it can be >> packaged up into an archive, then extracted on the destination >> machines. > > Thanks Jon. One tiny question tho' (I'm total newbie at this). When do I = do > make DESTDIR? At the stage, make -j 2 bootstrap, in which case the command > would be make DESTDIR=3D/transfer/gcc-build-archive -j 2, or at the final= make > install stage? (The latter doesn't work.) Read the link I sent, which says "DESTDIR should be supported only in the install* and uninstall* targets, as those are the only targets where it is useful." You use DESTDIR with "make install" as in the example on that page. > If the former is the case, then I would simply copy > /transfer/gcc-build-archive to the target machines and run make install on > each, right? No. You do not run make on the target machines. # configure gcc make make install DESTDIR=3D/tmp/stage "If your installation step would normally install =91/usr/local/bin/foo=92 and =91/usr/local/lib/libfoo.a=92, then an installation invoked as in the example above would install =91/tmp/stage/usr/local/bin/foo=92 and =91/tmp/stage/usr/local/lib/libfoo.a=92 instead." So then you package up all the files under /tmp/stage, which are arranged in a directory hierarchy exactly as you want in their final installed location, but under /tmp/stage not /, so you just package that directory tree up and then extract it on the target machine cd /tmp/stage tar czf /tmp/gcc.tar.gz . # copy archive to target machine and extract > Also, do I have to install texinfo and ncurses on the target machines? No, because all you do on the target machine is extract an archive.