Dear Loris,

Please open an issue on this, since we can actually avoid that you need to have 'zip' installed in the OS.

We can include 'zip' as a build dependency for Bazel, after creating an easyconfig file for Zip (see http://infozip.sourceforge.net/Zip.html). We already have easyconfigs for UnZip (which is apparently a separate project...).


regards,

Kenneth

On 26/02/2020 09:59, Loris Bennett wrote:
Hi Terje,

Yes, thank you, 'osdependencies' was what I was thinking of.  Strangely,
searching for 'dependencies' on https://easybuild.readthedocs.io/
doesn't return any results for 'osdependencies'.

Cheers,

Loris

Terje Kvernes <terj...@math.uio.no> writes:

Hi Loris,

In easyconfigs, “osdependencies” is used to designate dependencies that the OS 
has to provide. This is typically seen used something like this:

# OpenSSL is required
osdependencies = ['openssl', ('openssl-devel', 'libssl-dev', 
'libopenssl-devel’)]

These are package names that need to be installed on the system, openssl and one
of the devel packages listed — as their name varies depending on the flavour of
your linux. This can be overridden with the command line parameter
--ignore-osdeps.

I am not aware of a way to specify a required binary though, but specifying a 
package providing “zip” would probably be a good idea.

On 26 Feb 2020, at 09:14, Loris Bennett <loris.benn...@fu-berlin.de> wrote:

Hi,

So the admin node on which I normally build software does have 'zip',
but as I was building TensorFlow with GPU support, I was doing this on a
GPU node, which didn't have 'zip' installed :-/

I had a vague idea that external dependencies could be specified in an
easyconfig, but I could only find some thing on external modules.  Maybe
I was thinking of '--filter-deps', but that's sort of the opposite of
what one would need.

Thanks for the pointer,

Cheers,

Loris

Lars Viklund <lars.vikl...@umu.se> writes:

For reference, EB documents the shell tools (including `unzip`) that may be
occasionally needed by easyconfigs:

https://easybuild.readthedocs.io/en/latest/Installation.html#required-shell-tools

Sounds like Bazel goes a bit beyond this and also assumes that the environment
has the ability to zip things. Lovely :D

// Lars

On 2/25/20 5:06 PM, Terje Kvernes wrote:
Hi Loris,

 From the output it would seem that zip is an implied system dependency in
Bazel. Depending on the underlying distribution, the easiest solution is
probably to install zip as a system package via yum/dnf/apt-get/etc.

I took a quick look at the easyconfig tree and didn’t find a suitable zip to
add as a dependency, so I’m guessing this has gone under the radar as
“everyone” already had zip installed.

I’m not sure what the long-term solution is here, as I’m not sure one wants to
move zip from a system dependency to a toolchain one, but opening an issue on
https://github.com/easybuilders/easybuild-easyconfigs/issues is probably a
good idea. :-)

On 25 Feb 2020, at 16:53, Loris Bennett <loris.benn...@fu-berlin.de> wrote:

Hi,

Bazel-0.26.1-GCCcore-8.3.0.eb is failing with the following error:

  ^MESC[1AESC[KESC[31mESC[1mERROR: 
ESC[0m/trinity/shared/easybuild/build/Bazel/0.26.1/GCCcore-8.3.0/src/BUILD:339:2:
 Executing genrule //src:package-zip_nojdk failed (Exit 127): bash failed: 
error executing command
    (cd /tmp/eb-0CJXT7/bazel_M82PHrmR/out/execroot/io_bazel && \
    exec env - \
      
LD_LIBRARY_PATH=/trinity/shared/easybuild/software/Java/1.8.0_192/lib:/trinity/shared/easybuild/software/Python/3.7.4-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/libffi/3.2.1-GCCcore-8.3.0/lib64:/trinity/shared/easybuild/software/libffi/3.2.1-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/GMP/6.1.2-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/XZ/5.2.4-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/SQLite/3.29.0-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/Tcl/8.6.9-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/libreadline/8.0-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/ncurses/6.1-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/bzip2/1.0.8-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/binutils/2.32-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/zlib/1.2.11-GCCcore-8.3.0/lib:/trinity/shared/easybuild/software/GCCcore/8.3.0/lib/gcc/x86_64-pc-linux-gnu/8.3.0:/trinity/shared/easybuild/software/GCCcore/8.3.0/lib64:/trinity/shared/easybuild/software/GCCcore/8.3.0/lib
 \
      
PATH=/trinity/shared/easybuild/software/Java/1.8.0_192:/trinity/shared/easybuild/software/Java/1.8.0_192/bin:/trinity/shared/easybuild/software/Python/3.7.4-GCCcore-8.3.0/bin:/trinity/shared/easybuild/software/XZ/5.2.4-GCCcore-8.3.0/bin:/trinity/shared/easybuild/software/SQLite/3.29.0-GCCcore-8.3.0/bin:/trinity/shared/easybuild/software/Tcl/8.6.9-GCCcore-8.3.0/bin:/trinity/shared/easybuild/software/ncurses/6.1-GCCcore-8.3.0/bin:/trinity/shared/easybuild/software/bzip2/1.0.8-GCCcore-8.3.0/bin:/trinity/shared/easybuild/software/binutils/2.32-GCCcore-8.3.0/bin:/trinity/shared/easybuild/software/GCCcore/8.3.0/bin:/trinity/shared/easybuild/software/EasyBuild/4.1.1/bin:/trinity/shared/zedat/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/usr/bin/syscfg:/trinity/home/build/.local/bin:/trinity/home/build/bin
 \
    /bin/bash -c 'source external/bazel_tools/tools/genrule/genrule-setup.sh; 
src/package-bazel.sh bazel-out/k8-opt/bin/src/package_nojdk.zip  
bazel-out/k8-opt/bin/src/embedded_tools_nojdk.zip 
bazel-out/k8-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
 bazel-out/k8-opt/bin/src/install_base_key_nojdk 
bazel-out/k8-opt/bin/src/main/native/libunix.so 
bazel-out/k8-opt/bin/src/main/tools/build-runfiles 
bazel-out/k8-opt/bin/src/main/tools/process-wrapper src/main/tools/jdk.BUILD 
bazel-out/k8-opt/bin/src/main/tools/linux-sandbox 
bazel-out/k8-opt/bin/tools/osx/xcode-locator 
bazel-out/k8-opt/bin/src/main/tools/daemonize')
  Execution platform: @bazel_tools//platforms:host_platform
  ESC[32m[1,793 / 1,794]ESC[0m checking cached actions
  ^MESC[1AESC[Ksrc/package-bazel.sh: line 42: zip: command not found

Anyone know what sort of zip package is missing here?

Cheers,

Loris

--
Dr. Loris Bennett (Mr.)
ZEDAT, Freie Universität Berlin         Email loris.benn...@fu-berlin.de


--
Dr. Loris Bennett (Mr.)
ZEDAT, Freie Universität Berlin         Email loris.benn...@fu-berlin.de

Reply via email to