From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2879 invoked by alias); 29 May 2012 12:48:28 -0000 Received: (qmail 2858 invoked by uid 22791); 29 May 2012 12:48:26 -0000 X-SWARE-Spam-Status: No, hits=-1.4 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,TW_PM,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail.datasphere.ch (HELO mail.datasphere.ch) (195.70.3.149) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 29 May 2012 12:48:11 +0000 Received: from dataspheresrv01.datasphere.ch ([195.70.3.151]) by mail.datasphere.ch (8.14.4/8.14.4) with ESMTP id q4TClvbL007275; Tue, 29 May 2012 14:48:02 +0200 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Subject: RE: Error while "make all": "make[2]: *** No rule to make target `/libreadline.a', needed by `gdb'. Stop." Date: Tue, 29 May 2012 12:48:00 -0000 Message-ID: In-Reply-To: <4FBEC003.2000902@redhat.com> References: <4FBEC003.2000902@redhat.com> From: "Patrick Monnerat" To: "Keith Seitz" , "David Fernandez" Cc: X-IsSubscribed: yes Mailing-List: contact insight-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: insight-owner@sourceware.org X-SW-Source: 2012-q2/txt/msg00041.txt.bz2 =20 Keith Seitz wrote: > On 05/24/2012 03:45 PM, David Fernandez wrote: >> I get the sources by doing: >> yumdownloader --source insight >> rpm -i insight-7.4.50-1.20120403cvs.fc16.src.rpm >> cd ~/rpmbuild/SPECS; rpmbuild -bp insight.spec cd=20 >> ~/rpmbuild/BUILDROOT/arm-eabi/insight-7.4.50 >> ~/rpmbuild/BUILD/insight-7.4.50/configure --target=3Darm-eabi -v 2>&1 | >> tee configure.out make -w all 2>&1 | tee make.out > Zowie. Until recently, I didn't even know that Insight was in fedora!=20 > [cough] >> gcc -g -O2 -I. -I../../../../BUILD/insight-7.4.50/gdb >> -I../../../../BUILD/insight-7.4.50/gdb/common >> -I../../../../BUILD/insight-7.4.50/gdb/config >> -DLOCALEDIR=3D"\"/usr/local/share/locale\"" -DHAVE_CONFIG_H=20 >> -I../../../../BUILD/insight-7.4.50/gdb/../include/opcode >> -I../../../../BUILD/insight-7.4.50/gdb/../opcodes/.. >> -I@READLINE_SRC@/.. -I../bfd ^^^^^^^^^^^^^^^^ Yes, this is the problem since readline has been unbundled by the spec file. The "system-readline" patch is incomplete. However it DOES compile for 32 and 64 bits architecture in Fedora Koji. Thanks for signaling this problem: I'll probably fix it in a future release. > Looking through the 6.8 rpm (I'm on F15 right now), I see that it does not list all the build requirements for gdb. I would recommend you download/install the corresponding gdb sources (and deps). If you can build the gdb RPM, then all the necessary "hidden" requirements are present to build insight. All you then might be missing are the insight deps. I'll see if I can't check out the latest insight RPM and get it fixed. The 6.8 RPM spec is outdated for more than one reason: no additional work will be made starting with this version. >> The same thing happens with insight-6.8-1 (after adding CFLAGS=3D"-g -O2=20 >> -Wno-error=3Dset-but-unused-variable" to avoid a few benign errors). > Eew. 6.8-1 is based on a version gdb that somewhere near four years old.=20 > That spec file is obviously really, really wrong in many ways. [It also includes a private copy of tcl, tk, itcl, etc. This is no longer a requirement. The sources now look for system-installed versions. (hint: install tcl, tk, itcl, itk, iwidgets, itcl-devel, tcl-devel, tk-devel)] It may be wrong today, not 4 years ago ! (BTW: why don't you release another stable tarball?) There were NO private copy of tcl/itcl/etc: the rule with Fedora packaging is UNBUNDLING; there was a lot of work to achieve it and the objects you think are private copies are just fixes to the 6.8 insight code to adapt it to the newer version of system tcl/itcl,etc. The makefiles modern configure/makefile self-adapts to system installed libraries, but at the time of 6.8 writing, this was not the case. In addition, if real unbundling was possible, one could delete the bundled library directories before compiling without problem: this is not the case. Now that 6.8 is burried, let's talk about 7.4.50cvs: real unbundling (as in the preceding paragraph) is still not possible: there are references to the library directories even if you use system-installed versions; the spec file deletes the bundle directories to force an error if any references to them is performed. The --with-system-readline flag is unconditionally passed to ./configure The spec file is perfectly well formed according to the Fedora packaging guidelines. In particular, the build requirements are fully compatible with the Fedora mock/koji environment. To quickly build a non-official insight package, just remove the "readline-system" patch and suppress the deletion of the readline bundle directory: please remember this solution is not acceptable for an official Fedora package. Now, remember the spec file is Fedora-specific, and not part of the insight repository. In particular, this means: - Spec file and rpm patches bugs should be reported using https://bugzilla.redhat.com/ (as the spec maintainer, I'll be immediately noticed of any insight package related activity). - Hints/suggestions are welcomed, providing they respect the Fedora packaging guidelines. - Co-maintainers are welcomed, in particular for alternative architectures (non-Intel, etc). There is already a maintainer for the EPEL version, but he hasn't prepared the 7.50 version yet. - If there's something precise I can do for alternative architecture support in the spec file or Fedora-specific patches without breaking the primary architecture builds, just ask. But please remember I do not have the necessary infrastructure to test your target cross-compilations, executions, etc. Thanks Cheers, Patrick