LLNL/UEDGE

Manual install fails when source path contains space

Closed this issue · 1 comments

Installing uedge with python setup.py install fails when the uedge source directory is located in a path where one or more of the directories contain a space. Tested in MacOS and linux. In the generated build/Makefile.com, the full path of uedge/com is not escaped properly.

This is the output of python setup.py install:

running install
running build
(export PYTHONPATH=.:./pyscripts; python2 convertor)
directory list =['com', 'aph', 'api', 'bbb', 'dce', 'flx', 'grd', 'svr', 'wdf', 'pfb', 'idf', 'psi', 'std', 'dst']
Output directory already exists; proceeding
Entering directory com
processing for file type M2F
processing directorycomto directory./com
converting file com/comutil.m to ./com/comutil.F
converting file com/brent.m to ./com/brent.F
converting file com/blasext.m to ./com/blasext.F
converting file com/mnbrak.m to ./com/mnbrak.F
converting file com/misc.m to ./com/misc.F
Entering directory aph
processing for file type M2F
processing directoryaphto directory./aph
converting file aph/aphrates.m to ./aph/aphrates.F
converting file aph/aphread.m to ./aph/aphread.F
Entering directory api
processing for file type M2F
processing directoryapito directory./api
converting file api/apisorc.m to ./api/apisorc.F
converting file api/apip93.m to ./api/apip93.F
converting file api/fmombal.m to ./api/fmombal.F
converting file api/fimp.m to ./api/fimp.F
converting file api/inelrates.m to ./api/inelrates.F
converting file api/sputt.m to ./api/sputt.F
converting file api/apifcn.m to ./api/apifcn.F
Entering directory bbb
processing for file type M2F
processing directorybbbto directory./bbb
converting file bbb/griddubl.m to ./bbb/griddubl.F
converting file bbb/convert.m to ./bbb/convert.F
converting file bbb/odesolve.m to ./bbb/odesolve.F
converting file bbb/geometry.m to ./bbb/geometry.F
converting file bbb/odesetup.m to ./bbb/odesetup.F
converting file bbb/ext_neutrals.m to ./bbb/ext_neutrals.F
converting file bbb/potencur.m to ./bbb/potencur.F
converting file bbb/boundary.m to ./bbb/boundary.F
converting file bbb/s.m to ./bbb/s.F
converting file bbb/oderhs.m to ./bbb/oderhs.F
converting file bbb/turbulence.m to ./bbb/turbulence.F
Entering directory dce
processing for file type M2F
processing directorydceto directory./dce
Entering directory flx
processing for file type M2F
processing directoryflxto directory./flx
converting file flx/flxwrit.m to ./flx/flxwrit.F
converting file flx/flxcomp.m to ./flx/flxcomp.F
converting file flx/flxdriv.m to ./flx/flxdriv.F
converting file flx/dvshdf5.m to ./flx/dvshdf5.F
converting file flx/flxread.m to ./flx/flxread.F
Entering directory grd
processing for file type M2F
processing directorygrdto directory./grd
converting file grd/grdwrit.m to ./grd/grdwrit.F
converting file grd/grdcomp.m to ./grd/grdcomp.F
converting file grd/grddriv.m to ./grd/grddriv.F
converting file grd/grdinit.m to ./grd/grdinit.F
converting file grd/grdread.m to ./grd/grdread.F
Entering directory svr
processing for file type M2F
processing directorysvrto directory./svr
converting file svr/svrut4.m to ./svr/svrut4.F
converting file svr/svrut3.m to ./svr/svrut3.F
converting file svr/uoa.m to ./svr/uoa.F
converting file svr/daspk.m to ./svr/daspk.F
converting file svr/svrut2.m to ./svr/svrut2.F
converting file svr/nksol.m to ./svr/nksol.F
converting file svr/vodpk.m to ./svr/vodpk.F
converting file svr/svrut1.m to ./svr/svrut1.F
Entering directory wdf
processing for file type M2F
processing directorywdfto directory./wdf
converting file wdf/wdf.m to ./wdf/wdf.F
Entering directory pfb
processing for file type M2F
processing directorypfbto directory./pfb
Entering directory idf
processing for file type M2F
processing directoryidfto directory./idf
Entering directory psi
processing for file type M2F
processing directorypsito directory./psi
Entering directory std
processing for file type M2F
processing directorystdto directory./std
Entering directory dst
processing for file type M2F
processing directorydstto directory./dst
(cd com;Forthon --builddir ../build -a  -v --fargs "-Ofast -DFORTHON -cpp -finit-local-zero"  -f blasext.F com brent.F comutil.F misc.F mnbrak.F dsum.f dummy_py.f error.f getmsg.f ssum.f )
Building package com
make[1]: *** No rule to make target `/Users/sean/Desktop/test', needed by `compymodule.c'.  Stop.
make: *** [compy.so] Error 2
running build_py
creating build/lib.macosx-10.15-x86_64-2.7
creating build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/convert1.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uefacets.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/ueplotdata.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uewall.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uedgeutils.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/testpfb.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uedgeplots.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uereadgrid.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/rdcontdt.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/ueplot.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/convert.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/rundt.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/pdb_restore.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/pdb_save.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/__init__.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uefcifc.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/__version__.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/hdf5.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/pdb2h5.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/bas2py_rules.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/convertvsh5.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uexec.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/sources.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uegenlineout.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/ueparallel.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/PRpyt.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/cdf4.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/double.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/plotEdgeStd.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/PWpyt.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/parallel.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/rdinitdt.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/ruthere.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uedge_lists.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/filelists.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/uedge.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
copying pyscripts/ue2vsh5.py -> build/lib.macosx-10.15-x86_64-2.7/uedge
creating build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
copying pyscripts/contrib/create_database.py -> build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
copying pyscripts/contrib/reconv.py -> build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
copying pyscripts/contrib/ue_plot.py -> build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
copying pyscripts/contrib/read_gridue.py -> build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
copying pyscripts/contrib/__init__.py -> build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
copying pyscripts/contrib/ue_animate.py -> build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
copying pyscripts/contrib/utils.py -> build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
copying pyscripts/contrib/conv_step.py -> build/lib.macosx-10.15-x86_64-2.7/uedge/contrib
running build_ext
building 'uedge.uedgeC' extension
creating build/temp.macosx-10.15-x86_64-2.7
creating build/temp.macosx-10.15-x86_64-2.7/build
creating build/temp.macosx-10.15-x86_64-2.7/com
clang -fno-strict-aliasing -fno-common -dynamic -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DWITH_NUMERIC=0 -DFORTHON_PKGNAME="uedgeC" -Ibuild -I/usr/local/lib/python2.7/site-packages/numpy/core/include -I/usr/local/include -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python@2/2.7.17/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c uedgeC_Forthon.c -o build/temp.macosx-10.15-x86_64-2.7/uedgeC_Forthon.o
clang -fno-strict-aliasing -fno-common -dynamic -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DWITH_NUMERIC=0 -DFORTHON_PKGNAME="uedgeC" -Ibuild -I/usr/local/lib/python2.7/site-packages/numpy/core/include -I/usr/local/include -I/usr/local/opt/openssl@1.1/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python@2/2.7.17/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c build/Forthon.c -o build/temp.macosx-10.15-x86_64-2.7/build/Forthon.o
clang: error: no such file or directory: 'build/Forthon.c'
clang: error: no input files
error: command 'clang' failed with exit status 1```

This is fixed by installing forthon 0.8.41