enzo-project / enzo-e

A version of Enzo designed for exascale and built on charm++.
Other
29 stars 35 forks source link

Scons TypeError #28

Closed mabruzzo closed 2 years ago

mabruzzo commented 4 years ago

While building enzo-e on stampede2, I encountered a python error related to scons at the end of the build process. Everything proceeds as normal until the very end of the build process. Right after the newly-built executable is copied to bin/enzo-p, the traceback for a python TypeError is output. However then the build script indicates that the installation succeeds.

This occurs for both choices of compilers. As far as I can tell, this doesn't actually cause any issues and the executable works as it is supposed to. However, I wanted to document this issue.

An excerpt of the output illustrating this issue is provided below. The full log from the same build process can be found here.

Install file: "build-stampede_build_update/Cello/libcello.a" as "lib/libcello.a" /home1/05274/tg845732/charm/bin/charmc -language charm++ -o build-stampede_build_update/Enzo/enzo-p -Ofast -g -Wall -rdynamic -module CommonLBs build-stampede_build_update/Enzo/enzo-p.o build-stampede_build_update/Cello/main_enzo.o -Llib -L/opt/apps/intel18/hdf5/1.10.4/x86_64/lib -L/opt/apps/intel18/boost/1.68/lib -L/home1/05274/tg845732/local/lib -L/usr/lib64/lib -lenzo -lcharm -lsimulation -ldata -lproblem -lcompute -lcontrol -lmesh -lio -ldisk -lmemory -lparameters -lerror -lmonitor -lparallel -lperformance -ltest -lcello -lexternal -lhdf5 -lz -ldl -lpng -lirc -limf -lifcore -lifport -lstdc++ -lintlc -lsvml -lboost_filesystem -lboost_system -lgrackle Install file: "build-stampede_build_update/Enzo/enzo-p" as "bin/enzo-p" TypeError: signal handler must be signal.SIG_IGN, signal.SIG_DFL, or a callable object: File "/home1/05274/tg845732/enzo-e/scons-local-2.2.0/SCons/Script/Main.py", line 1343: _exec_main(parser, values) File "/home1/05274/tg845732/enzo-e/scons-local-2.2.0/SCons/Script/Main.py", line 1307: _main(parser) File "/home1/05274/tg845732/enzo-e/scons-local-2.2.0/SCons/Script/Main.py", line 1071: nodes = _build_targets(fs, options, targets, target_top) File "/home1/05274/tg845732/enzo-e/scons-local-2.2.0/SCons/Script/Main.py", line 1265: jobs.run(postfunc = jobs_postfunc) File "/home1/05274/tg845732/enzo-e/scons-local-2.2.0/SCons/Job.py", line 114: self._reset_sig_handler() File "/home1/05274/tg845732/enzo-e/scons-local-2.2.0/SCons/Job.py", line 160: signal.signal(signal.SIGTERM, self.old_sigterm) Success done END Enzo-P/Cello ./build.sh: arch = stampede_intel prec = double target = bin/enzo-p time = 2.83 min Done.

jobordner commented 4 years ago

This could be due to an older version of python being used. Is the python2 module loaded?

mabruzzo commented 4 years ago

The problem seems to be independent of the python version loaded. I have tried the installation using:

Regardless of which installation I use, I get the same error

mabruzzo commented 3 years ago

It would be useful if someone could verify if this is still an issue. PR #46 may have fixed this.