Skip to content

Extrae build fails because of removed file #1

@quentin-ag

Description

@quentin-ag

Level

Minor

Component

Extrae

Environment

  • COMPSs version: 2.7
  • Java version: 1.8.0
  • Python version: 3.8.5
  • GCC version: 10.2.0
  • Operating System: Linux (Manjaro)[1]

[1] successfully reproduced on Debian 10, CentOS 7 and Arch Linux.

Description

The build process of Extrae fails because a necessary file cannot be found. The logs show that it is removed.

Minimal example to reproduce

cd ${compss_src}/builders
./buildlocal ${compss_target}

The error can then be reproduced with the same command as executed by buildlocal:

cd ${compss_src}/builders/tmp/dependencies/extrae
./install ${compss_target}/Dependencies/extrae true

Exception

./install ${targetDir}/Dependencies/extrae true exits during the make clean install instruction with the error message

chmod: cannot access '${compss_target}/Dependencies/extrae/etc/extrae-vars.sh': No such file or directory

Below is the relevant excerpt from the full output:

Making install in etc
make[1]: Entering directory '${compss_src}/builders/tmp/dependencies/extrae/etc'
make[2]: Entering directory '${compss_src}/builders/tmp/dependencies/extrae/etc'
make[2]: Nothing to be done for 'install-exec-am'.
make  install-data-hook
make[3]: Entering directory '${compss_src}/builders/tmp/dependencies/extrae/etc'
/usr/sbin/mkdir -p ${compss_target}/Dependencies/extrae/etc
echo "Preparing configured script for SH"
cp extrae-vars.sh ${compss_target}/Dependencies/extrae/etc
rm -fr ${compss_target}/Dependencies/extrae/etc/extrae-vars.sh ${compss_target}/Dependencies/extrae/etc/extrae-vars.csh
chmod 0644 ${compss_target}/Dependencies/extrae/etc/extrae-vars.sh
chmod: cannot access '${compss_target}/Dependencies/extrae/etc/extrae-vars.sh': No such file or directory
make[3]: *** [Makefile:773: SHscripts] Error 1
make[3]: *** Waiting for unfinished jobs....
Preparing configured script for SH
echo "export PACKAGE_NAME=Extrae" >> extrae-vars.sh
echo "export PACKAGE_BUGREPORT=tools@bsc.es" >> extrae-vars.sh
echo "export CONFIGURE_LINE=\"`head -7 ../config.log | tail -1`\"" >> extrae-vars.sh
cp ../etc/configured.sh ${compss_target}/Dependencies/extrae/etc
chmod 0755 ${compss_target}/Dependencies/extrae/etc/configured.sh
make[3]: Leaving directory '${compss_src}/builders/tmp/dependencies/extrae/etc'
make[2]: *** [Makefile:673: install-data-am] Error 2
make[2]: Leaving directory '${compss_src}/builders/tmp/dependencies/extrae/etc'
make[1]: *** [Makefile:627: install-am] Error 2
make[1]: Leaving directory '${compss_src}/builders/tmp/dependencies/extrae/etc'
make: *** [Makefile:1107: install-recursive] Error 1

N.B. I have overwritten some file paths, such as ${compss_src}.

Expected behaviour and workaround

The build should not fail. Supposedly, ${compss_target}/Dependencies/extrae/etc/extrae-vars.sh should not be removed.
I worked around the issue by not removing it at all:

diff --git a/etc/Makefile.am b/etc/Makefile.am
index 8ff09aeb..5ea9db2d 100644
--- a/etc/Makefile.am
+++ b/etc/Makefile.am
@@ -44,7 +44,7 @@ endif

 SHscripts:
        $(MKDIR_P) $(DESTDIR)$(sysconfdir)
-	rm -fr $(DESTDIR)$(sysconfdir)/extrae-vars.sh $(DESTDIR)$(sysconfdir)/extrae-vars.csh
+	rm -fr $(DESTDIR)$(sysconfdir)/extrae-vars.csh

 SHscripts:
        cp $(VARS_SCRIPT) $(DESTDIR)$(sysconfdir)
diff --git a/install b/install
index 131b622f..aedab1e8 100755

This modification solved the issue for me. However, it does not look like a clean fix.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions