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= |
messagingengine.com; h=content-transfer-encoding:content-type | |
:date:from:in-reply-to:message-id:mime-version:references | |
:reply-to:subject:to:x-me-proxy:x-me-proxy:x-me-sender | |
:x-me-sender:x-sasl-enc; s=fm1; bh=ZSz4r6rxmwg9q0TEBGYP6YmRmsp92 | |
by7IDHCa0nnyWU=; b=ijZt1oyF6nhJ0K9dwlFEkOO7tr5SFlG7sM3E55fINlR7x | |
3wnPlgBO8MQnVHc2grl7eBDW/E2857yAe3Of+HuH31U0f7k0NsT1st9pawemHS/H | |
N3eQWDYWeagWdIs3AVG08dPpjaJrFctucUC7DB+p1V9atgwTAqzzRoCYFAntCiHc | |
yx+VfD412/JWIwwtSF8ETCAZ3EDQUYC07LSP/kUyDhEiH0N6P8lBt8a5BDVPKOit | |
WEjbETyHfJjKzD6DYI4gfDuvabPmYzi0uNckUufb/eNOOyvDU2k8MqY/vIT+EFEw | |
pIV4KVccchtegZYZZ1Wi38H6U6GSMftmdy5g73EdA== | |
X-ME-Sender: | <xms:90zeXyDA70PMMncAUOIMVioLOMTRc6EdEIYvSEeQ6wElpSQHO-lArA> |
<xme:90zeX8ipJ3mhLiQ75Eq2ut1vQ2fw0w_eH6FYPnpJbkYVHK2gVwan1_Q5fAHsM4xz6 | |
M7smZ4-3ErH_vDA1g> | |
X-ME-Proxy-Cause: | gggruggvucftvghtrhhoucdtuddrgedujedrudelkedguddvvdcutefuodetggdotefrod |
ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh | |
necuuegrihhlohhuthemuceftddtnecunecujfgurheprhfuvfhfhffkffgfgggjtgfgse | |
htjeertddtfeejnecuhfhrohhmpefiihhrvhhinhcujfgvrhhruceoghhhvghrrhhlsehf | |
rghsthhmrghilhdrtghomheqnecuggftrfgrthhtvghrnhepvdduleffgfduudeiveevle | |
eikeevteeigffhhedvhfejvdffjeeiieelffejhfdvnecukfhppedutdekrddvudehrddu | |
leehrddvtdehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrh | |
homhepghhhvghrrhhlsehfrghsthhmrghilhdrtghomh | |
X-ME-Proxy: | <xmx:90zeX1lSLSRE68sugJT3EXnoocfLHcAaXlwavu2wMcDUAGqiitzTXQ> |
<xmx:90zeXwxyN3whACAXOTHp8bv-UoBJzyQ_jh3j3lA9LDTM2fHECcADQw> | |
<xmx:90zeX3QbZnuiPv-o0vBeNDCbLVqxep_6z_g0-R4cLlp19eA9S7hgdw> | |
<xmx:-EzeX-cOLNtWZYKYvkYWHaPbbmyWLk5Vie70dkDdzHxUr3pxboZGig> | |
Subject: | Re: [geda-user] Problem with Guile 2.2.4 dependency for gEDA 1.10.1. |
To: | geda-user AT delorie DOT com |
References: | <f5ab1b6f-dbf3-4be3-a43f-eb74b32b7a51 AT fastmail DOT com> |
<ae7dca70-44c9-d905-498e-e7768a279af7 AT epilitimus DOT com> | |
<83d2a9f4-89a5-cf7b-4c94-738e14327057 AT fastmail DOT com> | |
<20201219061954 DOT 15874 DOT qmail AT stuge DOT se> | |
From: | "Girvin Herr (gherrl AT fastmail DOT com) [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com> |
Message-ID: | <dbc1ab4e-66e0-cfce-3bf4-0de3cf69514d@fastmail.com> |
Date: | Sat, 19 Dec 2020 10:54:47 -0800 |
User-Agent: | Mozilla/5.0 (X11; Linux i686; rv:68.0) Gecko/20100101 |
Thunderbird/68.12.0 | |
MIME-Version: | 1.0 |
In-Reply-To: | <20201219061954.15874.qmail@stuge.se> |
Reply-To: | geda-user AT delorie DOT com |
Errors-To: | nobody AT delorie DOT com |
X-Mailing-List: | geda-user AT delorie DOT com |
X-Unsubscribes-To: | listserv AT delorie DOT com |
On 12/18/20 10:19 PM, Peter Stuge (peter AT stuge DOT se) [via geda-user AT delorie DOT com] wrote: > Girvin Herr (gherrl AT fastmail DOT com) [via geda-user AT delorie DOT com] wrote: >> That is what I was afraid of. I have installed "current" Slack packages >> in the past with the latest released version with mixed results. It >> looks like gEDA is frozen for me at 1.10.0 until the "current" Slack is >> released. > You don't have to settle for that; it's perfectly possible to install > different versions of most packages (in particular all relevant for 1.10.1) > to a new directory, where they do not interact with distribution packages. > > Only a few distributions offer tooling to automate (some of) the process > and Slackware is not one of them, so it takes some work, but if you have > the time and are curious I highly recommend giving it a go! > > The alternative to revert that one commit is fewer steps, but may need/yield > more development skill. Installing other packages is more work, but > needs/yields more system integration/administration skill. > > So this is my general recipe for installing packages like that. > > I'd recommend creating a new user when doing this exercise the first time. > Everything is done as that user. Nothing needs to be run as root or with sudo, > yet the finished result will still be runnable by your existing user. > > Let's say the user is called builder. Create and log in as the user. > > The packages will be installed into the directory inst/ under the > home directory of the builder user. > > In order for the build process for later packages to find "earlier" > dependencies run this on every login: (automate by adding it e.g. to .profile) > > export PKG_CONFIG_PATH="${HOME}/inst/lib/pkgconfig" > export PATH="${PATH}:${HOME}/inst/bin" > > Then download source tarballs and unpack in the home dir as needed. > Why not start with guile-2.2.4.tar.gz. Unpack it, then run: > > cd guile-2.2.4 > ./configure --prefix=$HOME/inst > > # so then configure probably complains about some missing dependency. Download > # that tarball and unpack in the home directory, cd in, then run the same above > # configure command, and then: > > make install # note! do not use sudo and do not run as root! > > This installs into the inst/ subdirectory of the builder home dir. > > Iterate until all dependencies are installed. I guess it'll be some 10 > packages, so you'll get good practice. gEDA can also be built this way. > > As long as packages use pkg-config to find their dependencies (I think > all the relevant ones do) and your PKG_CONFIG_PATH environment variable > is set correctly this will work very well. > > Once you're done, back as your normal user, run this: > > export PATH="/home/builder/inst/bin:${PATH}" > > ..and then you'll be able to run whatever was built and installed into > that inst/ directory as the builder user but from your ordinary user. > > Since the exercise is completely contained in the new user's home directory > (because nothing ever runs using sudo nor as root) you can start over at any > time by deleting and re-creating the user or just the home dir. > > > It is not insignificant effort, but it's completely doable and especially > if you want to get something done and not stay blocked by someone else, > who may have limited time to work on the distribution you use, this is > a useful method. > > It does get annoying as the dependency tree grows however, and at > that point it may be worth considering to just consume a more up-to-date > distribution and/or its tooling within a chroot - a very different approach > to the above. > > If anyone wants more documentation about what this actually does I > think the Linux From Scratch documentation is the best I can suggest. > > > Kind regards > > //Peter Peter, Wow! That is a good tutorial. Thanks. I will try it if the patch Roland "published" will not work for some reason. I already have a bare-bones "tester" user I can use for this. Also, since guile 2.0 is located in the standard Slack /usr location, /usr/local is virtually empty, so it should be a good candidate location for the guile 2.2.x package so it doesn't interfere with the 2.0.11 package. I have a lot of experience building dependencies and I can check where the files in the package will be going, so clobbering should not happen unless it does something nasty at runtime. Also, I use my own Slackware BuildScripts, which allow building as user, not as root, in order to verify the package is not doing something ill-behaved. I always build in user mode first and if that passes, then I build and install the package as root. I have been bitten before by ill-behaved packages and since I started building in user mode first, I have not had to rebuild my system because the package reset the mode of everything in /usr to 400. That was fun! As I told Roland, I must admit I have not tried to build 1.10.1 on my system. I should have tried that first, before assuming it would not build due to the dependency mis-match. I will try to get that done today. Thanks Again. Girvin
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |