delorie.com/archives/browse.cgi | search |
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=tB1ehKy228d3YyDPBWvGN7t4LdQ5b+GxFScjlcrSSIc=; | |
b=RvkATuNCMGSdsdY17cCsyOfUli7obXCqv5UxELHiijuhStROIoMeP93ZVcpU+omEvL | |
WX8fd1qPPOqOfXSiQDm+qMhHl4jQ6JRC01lWKGHDuLfWKigJs89IdP436jKriw1Kzwsw | |
P6iDsXW1LuCdpATQou7K5OLbZ/eYx/2R47eXDETlEL/eMLpJRJJ9MO07LEFb7KY+6ZNy | |
/cji6xDPOwWrdZk2rvmrIRQSJBJmN9Lz1Mo8jRKxMQedrwhWWQz8qc3txj5lrbt3Igyu | |
/s6X3yUEvHneR9zHcXJ9a2/7sWhib09d0fTybT8jhQ7CjjqnR1rpf8DIt5FwF/72UN6J | |
szng== | |
X-Received: | by 10.194.20.196 with SMTP id p4mr26075957wje.86.1438825524614; |
Wed, 05 Aug 2015 18:45:24 -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]" <geda-user AT delorie DOT com> |
Subject: | [geda-user] [Solved] xgsch2pcb won't build with new Automake |
Message-ID: | <55C2BC32.1040702@gmail.com> |
Date: | Thu, 6 Aug 2015 03:45:22 +0200 |
User-Agent: | Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 |
Thunderbird/38.0.1 | |
MIME-Version: | 1.0 |
Reply-To: | geda-user AT delorie DOT com |
This is a multi-part message in MIME format. --------------090608040701030102050700 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit 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-patches/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. JC --------------090608040701030102050700 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 > $@ --------------090608040701030102050700--
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |