Multiple definition of `main` in `hqr/testings/draw_systolic.c:24` and others
When trying to install chameleon:
export CUDA_DIR=/usr/local/cuda-9.0/
spack install chameleon@master+starpu+fxt+cuda~mpi~examples ^starpu@svn-trunk+cuda~mpi %gcc@6
Compilation fails with the following errors:
make -f coreblas/compute/CMakeFiles/coreblas.dir/build.make coreblas/compute/CMakeFiles/coreblas.dir/build
CMakeFiles/draw_systolic.dir/draw_systolic.c.o: In function `main':
/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/hqr/testings/draw_systolic.c:24: multiple definition of `main'
/tmp/schnorr/spack-stage/spack-stage-yQ7gPx/trunk/min-dgels/build/minlibf2c.a(main.o):(.text.startup+0x0): first defined here
/tmp/schnorr/spack-stage/spack-stage-yQ7gPx/trunk/min-dgels/build/minlibf2c.a(main.o): In function `main':
(.text.startup+0x9b): undefined reference to `MAIN__'
collect2: error: ld returned 1 exit status
hqr/testings/CMakeFiles/draw_systolic.dir/build.make:124: recipe for target 'hqr/testings/draw_systolic' failed
make[2]: *** [hqr/testings/draw_systolic] Error 1
make[2]: Leaving directory '/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/spack-build'
CMakeFiles/Makefile2:1385: recipe for target 'hqr/testings/CMakeFiles/draw_systolic.dir/all' failed
make[1]: *** [hqr/testings/CMakeFiles/draw_systolic.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
CMakeFiles/testing_systolic.dir/testing_systolic.c.o: In function `main':
/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/hqr/testings/testing_systolic.c:27: multiple definition of `main'
/tmp/schnorr/spack-stage/spack-stage-yQ7gPx/trunk/min-dgels/build/minlibf2c.a(main.o):(.text.startup+0x0): first defined here
/tmp/schnorr/spack-stage/spack-stage-yQ7gPx/trunk/min-dgels/build/minlibf2c.a(main.o): In function `main':
(.text.startup+0x9b): undefined reference to `MAIN__'
collect2: error: ld returned 1 exit status
hqr/testings/CMakeFiles/testing_systolic.dir/build.make:124: recipe for target 'hqr/testings/testing_systolic' failed
make[2]: *** [hqr/testings/testing_systolic] Error 1
make[2]: Leaving directory '/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/spack-build'
CMakeFiles/Makefile2:1496: recipe for target 'hqr/testings/CMakeFiles/testing_systolic.dir/all' failed
make[1]: *** [hqr/testings/CMakeFiles/testing_systolic.dir/all] Error 2
make[2]: Entering directory '/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/spack-build'
make[2]: Nothing to be done for 'coreblas/compute/CMakeFiles/coreblas.dir/build'.
make[2]: Leaving directory '/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/spack-build'
CMakeFiles/draw_hqr.dir/draw_hqr.c.o: In function `main':
/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/hqr/testings/draw_hqr.c:24: multiple definition of `main'
/tmp/schnorr/spack-stage/spack-stage-yQ7gPx/trunk/min-dgels/build/minlibf2c.a(main.o):(.text.startup+0x0): first defined here
/tmp/schnorr/spack-stage/spack-stage-yQ7gPx/trunk/min-dgels/build/minlibf2c.a(main.o): In function `main':
(.text.startup+0x9b): undefined reference to `MAIN__'
collect2: error: ld returned 1 exit status
hqr/testings/CMakeFiles/draw_hqr.dir/build.make:124: recipe for target 'hqr/testings/draw_hqr' failed
make[2]: *** [hqr/testings/draw_hqr] Error 1
make[2]: Leaving directory '/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/spack-build'
CMakeFiles/Makefile2:1422: recipe for target 'hqr/testings/CMakeFiles/draw_hqr.dir/all' failed
make[1]: *** [hqr/testings/CMakeFiles/draw_hqr.dir/all] Error 2
[ 25%] Built target coreblas
CMakeFiles/testing_hqr.dir/testing_hqr.c.o: In function `main':
/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/hqr/testings/testing_hqr.c:27: multiple definition of `main'
/tmp/schnorr/spack-stage/spack-stage-yQ7gPx/trunk/min-dgels/build/minlibf2c.a(main.o):(.text.startup+0x0): first defined here
/tmp/schnorr/spack-stage/spack-stage-yQ7gPx/trunk/min-dgels/build/minlibf2c.a(main.o): In function `main':
(.text.startup+0x9b): undefined reference to `MAIN__'
collect2: error: ld returned 1 exit status
hqr/testings/CMakeFiles/testing_hqr.dir/build.make:124: recipe for target 'hqr/testings/testing_hqr' failed
make[2]: *** [hqr/testings/testing_hqr] Error 1
make[2]: Leaving directory '/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/spack-build'
CMakeFiles/Makefile2:1459: recipe for target 'hqr/testings/CMakeFiles/testing_hqr.dir/all' failed
make[1]: *** [hqr/testings/CMakeFiles/testing_hqr.dir/all] Error 2
make[1]: Leaving directory '/tmp/schnorr/spack-stage/spack-stage-XK4Cso/chameleon/spack-build'
Makefile:165: recipe for target 'all' failed
make: *** [all] Error 2
Here's what spack spec
tells me:
Concretized
------------------------------
chameleon@master%gcc@6.4.0+cuda~debug~examples~eztrace+fxt~mpi~quark+shared~simu+starpu arch=linux-x86_64
^cmake@3.9.0%gcc@6.4.0~doc~ncurses~openssl~qt arch=linux-x86_64
^cuda@exist%gcc@6.4.0 arch=linux-x86_64
^fxt@0.3.3%gcc@6.4.0~moreparams arch=linux-x86_64
^openblas@0.2.19%gcc@6.4.0+lapack~mt~openmp arch=linux-x86_64
^starpu@svn-trunk%gcc@6.4.0~blas+cuda~debug+examples~fortran+fxt+mlr~mpi~opencl+openmp+shared~simgrid arch=linux-x86_64
^hwloc@1.11.8%gcc@6.4.0+cuda arch=linux-x86_64
I've tried with an older commit, 8eb4229c, but I got the same error.
Please, check the spack-build.out file for the complete output.