HomerReid / scuff-em

A comprehensive and full-featured computational physics suite for boundary-element analysis of electromagnetic scattering, fluctuation-induced phenomena (Casimir forces and radiative heat transfer), nanophotonics, RF device engineering, electrostatics, and more. Includes a core library with C++ and python APIs as well as many command-line applications.
http://www.homerreid.com/scuff-em
GNU General Public License v2.0
126 stars 50 forks source link

Build Failing on Manjaro x86_64 #5

Closed gevero closed 9 years ago

gevero commented 9 years ago

I am trying to build scuff-em on a Manjaro x86_64 box with gcc version 4.9.1

The build fails with the following message

make[5]: Entering directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src/libs/libMatProp/cmatheval' make[5]: *** No rule to make target 'parser.y', needed by 'parser.c'. Stop. make[5]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src/libs/libMatProp/cmatheval' Makefile:509: recipe for target 'all-recursive' failed make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src/libs/libMatProp' Makefile:372: recipe for target 'all-recursive' failed make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src/libs' Makefile:370: recipe for target 'all-recursive' failed make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src' Makefile:421: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em' Makefile:352: recipe for target 'all' failed make: *** [all] Error 2

Best

Giovanni

HomerReid commented 9 years ago

Whoops! Thanks for bug report. I added the missing file to the repository.

gevero commented 9 years ago

That is fixed now... but now i get:

make[5]: *** No rule to make target 'scanner.l', needed by 'scanner.c'. Stop. make[5]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src/libs/libMatProp/cmatheval' Makefile:509: recipe for target 'all-recursive' failed make[4]: *** [all-recursive] Error 1 make[4]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src/libs/libMatProp' Makefile:372: recipe for target 'all-recursive' failed make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src/libs' Makefile:370: recipe for target 'all-recursive' failed make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em/src' Makefile:421: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/giovi/data/work/electrodynamics/bem/scuff-em' Makefile:352: recipe for target 'all' failed make: *** [all] Error 2

best

Giovanni

gevero commented 9 years ago

It compiles if i pull scanner.l from the tar.gz file, but it needs to be added to the repo.

Best

Giovanni

jfeist commented 9 years ago

Just a comment: I think after adding scanner.l, you should remove scanner.c, parser.c and parser.h from the repository (since they are generated from parser.y and scanner.l)

HomerReid commented 9 years ago

Thanks, I did as you suggested, so the repository now contains parser.y and scanner.l, and does not contain the corresponding .c and .h files.

I had previously replaced the .y and .l files with the .c and .h files because people had complained about compiling errors on systems without flex/bison (and I figured nobody would want to tweak the cmatheval parser grammar). But it seems that this creates more trouble than it was worth, so we'll go with keeping the flex/bison input files instead.