Hi Zelphir, Zelphir Kaltstahl writes:
The guide at https://guix.gnu.org/manual/en/html_node/Building-from-Git.html <https://guix.gnu.org/manual/en/html_node/Building-from-Git.html> does notmention running a lone `make`.
It says, after running ./configure: Finally, you have to invoke 'make check' [...]This has the effect of running make [all], and then runs the test suite.
Ignore it at your peril. At most, substitute a ‘lone make’ for ‘make check’ if you're feeling lucky and have previously run the test suite.
There is an error. Perhaps I need to run it in the some kind of minimalistic GNUGuix env as I ran the configure and bootstrap in?
Yep, *all* commands need to be run in the guix environment. No need for ‘--ad-hoc make’ here as ‘make’ is already an input to guix.
Trying that (warning, long log ahead):
[ 8< nom nom ]
HELP2MAN doc/guix-time-machine.1 HELP2MAN doc/guix-weather.1 HELP2MAN doc/guix.1 make[2]: Leaving directory '/home/user/dev/guix' make[1]: Leaving directory '/home/user/dev/guix'
Success! \o/
So now it should be build with the package definition I added known, I guess.Now I try running guix build again: ~~~~ $ ./pre-inst-env guix build guile-fslib
You need to run this inside the environment as well. You keep leaving it; that won't work. It used to work sometimes, years ago.
Instead of tediously prefixing everything with ‘guix environment guix --’, just enter the environment once and stay there:
$ guix environment guix $ ./bootstrap $ ./configure --localstatedir=/var $ make -j`nproc` check $ ./pre-inst-env guix build guile-fslib $ ... $ exit # or C-d, to leave it when finished That's a rather standard way of doing things. Does it work? Kind regards, T G-R
signature.asc
Description: PGP signature