X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=to:from:subject:message-id:date:user-agent:mime-version :content-type; bh=r0YiOFmKq0JAQrYxazytiu+8ckvdPqnvlbSVi9cbPd0=; b=mQFjTGhVqGOqf7cmhVMI/5ugJdsXeLdXFsikkx6ETqEFgoL97cabrwtoC3ND1o8Cd7 FpDNPwNWPl7iFHdiIQtJoPU7Ze7d3VuVWP9wEM4K1iho+/5FUlVOBnlVO9tTTf8W6HlH Zgb3iWnv809KSa6OE6n090VmjYRh0e3RNUR+pEup1E0vF20S025VX9whABlgBTk4hz04 +rn1Qe1QtgQgP0TudPT1QUfw3XCfuU/pQsu31t43J4NPOSyqUWGhDm3iJluZB5tFeFjF OoYezOP1WD1aVx/6KONoPAJ/dzqPFWA8fMCOHL7AprfU1q3STbpQ3c76GiEa79nDPbZk /mTg== X-Received: by 10.181.25.234 with SMTP id it10mr4465735wid.0.1438851501902; Thu, 06 Aug 2015 01:58:21 -0700 (PDT) To: geda-user AT delorie DOT com From: "=?UTF-8?B?SmnFmcOtIMSMZWprYQ==?= (jirkacejka AT gmail DOT com) [via geda-user AT delorie DOT com]" Subject: [geda-user] [Solved] xgsch2pcb won't build with new Automake Message-ID: <55C321AB.6040702@gmail.com> Date: Thu, 6 Aug 2015 10:58:19 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------090706000703090906000901" Reply-To: geda-user AT delorie DOT com This is a multi-part message in MIME format. --------------090706000703090906000901 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Hello, I've just solved problem with not being able to compile xgsch2pcb from git repository source on latest Debian Jessie GNU/Linux distribution which sits on my desktop computer. Here I come with patch and tiny how to which every one can implement by itself until one of gEDA developer with write permission commit patch and it's additional step to the repository. Brief problem description ========================= If you clone source code from xgsch2pcb git repository and try to compile it on Debian Wheezy or later or any other distro that have version of automake tool >= 1.11 you will probably end up with this two lines error: Makefile.am:33: error: 'pkglibdir' is not a legitimate directory for 'PYTHON' Makefile.am:25: error: 'pkglibdir' is not a legitimate directory for 'PYTHON' Question how to solve it was asked by Philipp Klostermann on Jun 05 2014 at geda-help mailing list and then filled as bug report by Stephen Besch on 2015-03-26 at Launchpad (https://bugs.launchpad.net/geda/+bug/1436941) Here is quick solution ====================== 1) Apply provided patch to ./Makefile.am file (HEAD revision) $ cd xgsch2pcb $ patch -p1 < Makefile.am.patch 2) Replace "py-compile" file in xgsch2pcb folder by that one from actually installed automake $ mv ./py-compile ./py-compile.old $ cp /usr/share/automake-1.14/py-compile ./ Additional info =============== In latest stable Debian distribution Jessie is automake version 1.14. But general changes comes a lot earlier. I wasn't able to successfuly compile xgsch2pcb from automake version 1.11. According to automake online manual (http://www.gnu.org/software/automake/manual/automake.html#Python) changes has to be made on 3 lines (25, 33, 60) in Makefile.am file of xgsch2pcb or you can apply provided patch as noted above. Then the compilation will run without above error. After you apply provided patch copy "py-compile" file from actual automake folder or you stuck on following error when you try to run "make install": ./py-compile: Missing argument to --destdir. Stefano Lattarini describe what has to be done in his message (http://lists.gnu.org/archive/html/bug-automake/2012-06/msg00012.html): >> ../py-compile: Missing argument to --destdir. >> >This is likely happening because the maintainer have updated his Makefiles to >Automake 1.12, but forgot to update the 'py-compile' script. So this is a user >error, not an Automake's fault. And in his message (https://lists.gnu.org/archive/html/automake-patche/2011-06/msg00056.html) he provide patch which clarifies why it has to be done. The patch he provided is already included in automake 1.14. So only above mentioned copy operation will be enough. Jiri Cejka --------------090706000703090906000901 Content-Type: text/x-patch; name="Makefile.am.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="Makefile.am.patch" diff --git a/Makefile.am b/Makefile.am index aa8e2d6..daee83e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -22,7 +22,7 @@ SUBDIRS = po data bin_SCRIPTS = xgsch2pcb -pkglib_PYTHON = lib/xgsch2pcb/pcbmanager.py \ +python_PYTHON = lib/xgsch2pcb/pcbmanager.py \ lib/xgsch2pcb/gsch2pcbproject.py \ lib/xgsch2pcb/gui.py \ lib/xgsch2pcb/new_project_gui.py \ @@ -30,7 +30,7 @@ pkglib_PYTHON = lib/xgsch2pcb/pcbmanager.py \ lib/xgsch2pcb/templates.py \ lib/xgsch2pcb/funcs.py -nodist_pkglib_PYTHON = config.py +nodist_python_PYTHON = config.py INTLTOOL_FILES = intltool-extract.in \ intltool-merge.in \ @@ -57,7 +57,7 @@ do_subst = sed -e 's,[@]prefix[@],$(prefix),g' \ -e 's,[@]templatesdir[@],$(templatesdir),g' \ -e 's,[@]PACKAGE[@],$(PACKAGE),g' -all: $(pkglib_PYTHON) $(nodist_pkglib_PYTHON) +all: $(python_PYTHON) $(nodist_python_PYTHON) config.py: lib/xgsch2pcb/config.py.in Makefile $(do_subst) < $(srcdir)/lib/xgsch2pcb/config.py.in > $@ --------------090706000703090906000901--