[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Writing recipe for Crypto++, and getting build errors
From: |
Ben Woodcroft |
Subject: |
Re: Writing recipe for Crypto++, and getting build errors |
Date: |
Thu, 22 Sep 2016 11:18:37 +1000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 |
Welcome Adoney,
On 09/22/2016 01:24 AM, Adonay Felipe Nogueira wrote:
[..]
Doing:
$ guix build --fallback "cryptopp"
... outputs:
# Begin of output
starting phase `build'
make: *** No rule to make target 'dynamic'. Stop.
phase `build' failed after 0.2 seconds
builder for
`/gnu/store/k863vf0ab6hkdhbm7zgmbfs1c3wdqpqs-cryptopp-5.6.4.drv' failed
with exit code 1
@
build-failed /gnu/store/k863vf0ab6hkdhbm7zgmbfs1c3wdqpqs-cryptopp-5.6.4.drv - 1
builder for `/gnu/store/k863vf0ab6hkdhbm7zgmbfs1c3wdqpqs-cryptopp-5.6.4.drv'
failed with exit code 1
guix build: error: build failed: build of
`/gnu/store/k863vf0ab6hkdhbm7zgmbfs1c3wdqpqs-cryptopp-5.6.4.drv' failed
# End of output
The problem is that you've been tarbombed, as it were - the zip file
contains the source code files in its base directory, and then after
unzipping in the builder a test directory is entered. You can see this
by inspecting the 'environment-variables' file in the build directory.
Our usual fix for this is to use 'url-fetch/tarbomb' rather than
'url-fetch', but it seems that 'url-fetch/tarbomb' does not correctly
handle zip files.
We should fix 'url-fetch/tarbomb', but in the meantime I suggest
replacing the unpack phase like so:
(replace 'unpack
(lambda* (#:key source #:allow-other-keys)
(and (zero? (system* "unzip" source "-d" "source"))
(begin (chdir "source") #t))))
## Additional subject: Absence of `ldconfig`
Seeing the GNUmakefile, it seems to expect some commands to be available
in the environment, so I tried finding those and seeing if the
environment sees them from the profile.
[..]
This indicates that `ldconfig` is absent. Someone in #guix told me that
it was supposed to be provided by
It seems that this line hard-codes the path to ldconfig, so it will need
to be modified.
LDCONF ?= /sbin/ldconfig -n
Additionally, `which` was included in the output (comes from the
"debianutils" package on .deb-based distributions) and is also absent,
and the GNUmakefile seems to expect `which` at some point (although I'm
not sure if the build process reached that), so the absence of `which`
might be good to discuss on other bug report.
'which' is provided by the 'which' package.
Good luck,
ben
- Writing recipe for Crypto++, and getting build errors, Adonay Felipe Nogueira, 2016/09/21
- Re: Writing recipe for Crypto++, and getting build errors,
Ben Woodcroft <=
- Re: Writing recipe for Crypto++, and getting build errors, Ben Woodcroft, 2016/09/21
- Re: Writing recipe for Crypto++, and getting build errors, Ludovic Courtès, 2016/09/26
- Re: Writing recipe for Crypto++, and getting build errors, Adonay Felipe Nogueira, 2016/09/30
- Re: Writing recipe for Crypto++, and getting build errors, Ludovic Courtès, 2016/09/30
- Re: Writing recipe for Crypto++, and getting build errors, Adonay Felipe Nogueira, 2016/09/30