Linux installation issue

Hello everybody:

Today I was trying to install Radiance on Linux but it partially failed.

I am using Window linux subsystem.

Does anyone know how this happened?

(base) user@DESKTOP-MKGHKQE:~/Radiance-5.2$ sudo ./makeall install

                RADIANCE 5.2 INSTALLATION

This script rebuilds all of the Radiance programs and installs
them on your system.  You should read the file README before running
this script.  You can type ^C (followed by return) at any time to abort.

You must first answer the following questions.

What is your preferred editor [vi]?
Where do you want the executables [/usr/local/bin]?
Current rmake command is:
#!/bin/sh
exec make "SPECIAL=" \
        "OPT=-O" \
        "MACH=" \
        ARCH=other "COMPAT=erf.o strcmp.o strlcpy.o timegm.o" \
        INSTDIR=/usr/local/bin \
        LIBDIR=/usr/local/lib/ray \
        ESUFFIX= \
         "$@" -f Rmakefile
Do you want to change it? n
Making programs...
/home/user/Radiance-5.2/src/common /home/user/Radiance-5.2/src
In directory common...
rm -f librtrad.a
ar rc librtrad.a cone.o face.o free_os.o instance.o readobj.o readoct.o otypes.o objset.o octree.o readfargs.o modobject.o getlibpath.o addobjnotify.o zeroes.o mesh.o readmesh.o tmesh.o sceneio.o color.o header.o image.o lamps.o resolu.o rexpr.o spec_rgb.o colrops.o font.o tonemap.o tmapcolrs.o tmapluv.o tmaptiff.o tmap16bit.o bmpfile.o falsecolor.o ezxml.o ccolor.o ccyrgb.o bsdf.o bsdf_m.o bsdf_t.o loadbsdf.o disk2square.o hilbert.o interp2d.o triangulate.o fgetline.o fropen.o linregr.o xf.o mat4.o invmat4.o fvect.o urand.o urind.o calexpr.o caldefn.o calfunc.o calprnt.o biggerlib.o multisamp.o unix_process.o process.o gethomedir.o getpath.o error.o savestr.o savqstr.o badarg.o fgetword.o words.o expandarg.o wordfile.o fgetval.o clip.o plocate.o eputs.o wputs.o quit.o lookup.o bmalloc.o loadvars.o tcos.o fputword.o chanvalue.o dircode.o paths.o byteswap.o cvtcmd.o ealloc.o fdate.o portio.o myhostname.o erf.o strcmp.o strlcpy.o timegm.o
ranlib librtrad.a
rm -f libmgf.a
ar rc libmgf.a mgf_parser.o mgf_object.o mgf_xf.o mgf_context.o
ranlib libmgf.a
rm -f libreetz.a
ar rc libreetz.a g3affine.o g3flist.o g3sphere.o g3vector.o gbasic.o muc_randvar.o
ranlib libreetz.a
mv -f librtrad.a libmgf.a libreetz.a ../lib
cd /usr/local/lib/ray && rm -f tmesh.cal
cp -f tmesh.cal /usr/local/lib/ray
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/rt /home/user/Radiance-5.2/src
In directory rt...
cp ./rtrace ./rpict ./rvu ./rcontrib ./lookamb ./mkpmap ./pmapdump /usr/local/bin
cd /usr/local/bin ; rm -f rview ; ln -s rvu rview
cd /usr/local/bin ; rm -f rtcontrib ; ln -s rcontrib rtcontrib
rm -f /usr/local/lib/ray/rayinit.cal
cp rayinit.cal /usr/local/lib/ray
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/meta /home/user/Radiance-5.2/src
In directory meta...
cp ./meta2tga ./pexpand ./psort ./cv ./psmeta ./plotin ./x11meta ./bgraph ./igraph ./dgraph ./gcomp ./plot4 ./meta2bmp /usr/local/bin
cp symbols.met vchars.met boxw.plt curve.plt line.plt scatter.plt cartesian.plt function.plt polar.plt standard.plt /usr/local/lib/ray/meta
cp: target '/usr/local/lib/ray/meta' is not a directory
make: *** [Rmakefile:35: install] Error 1
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/cv /home/user/Radiance-5.2/src
In directory cv...
cp ies2rad nff2rad lampcolor tmesh2rad obj2rad mgf2rad rad2mgf mgf2meta mgfilt mgf2inv 3ds2mgf bsdfquery pabopto2xyz pabopto2bsdf bsdf2ttree bsdf2klems pkgBSDF epw2wea bsdf2rad /usr/local/bin
cp optics2rad.csh /usr/local/bin/optics2rad
chmod 755 /usr/local/bin/optics2rad
cd /usr/local/lib/ray && rm -f source.cal tilt.cal lamp.tab window.cal bsdf2rad.cal
cp source.cal tilt.cal lamp.tab window.cal bsdf2rad.cal /usr/local/lib/ray
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/gen /home/user/Radiance-5.2/src
In directory gen...
cp genbox gensky xform genblinds genrev genworm gendaylit gendaymtx gensurf genprism replmarks mkillum mksource genclock /usr/local/bin
cp glaze.csh /usr/local/bin/glaze
chmod 755 /usr/local/bin/glaze
cd /usr/local/lib/ray && rm -f illum.cal rev.cal skybright.cal surf.cal clockface.hex glaze1.cal glaze2.cal perezlum.cal perezlum_c.cal
cp illum.cal rev.cal skybright.cal surf.cal clockface.hex glaze1.cal glaze2.cal perezlum.cal perezlum_c.cal /usr/local/lib/ray
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/ot /home/user/Radiance-5.2/src
In directory ot...
cp oconv getbbox obj2mesh /usr/local/bin
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/px /home/user/Radiance-5.2/src
In directory px...
cd tiff ; ./configure -C -quiet -with-CC=cc \
        "--libdir=`pwd`/../../lib" "--includedir=`pwd`/../../common" \
        --enable-static --disable-shared --disable-cxx \
        --enable-logluv --disable-jpeg \
        --disable-zlib --disable-pixarlog \
        "-with-ENVOPTS=-O" ; \
cd port ; make all ; \
cd ../libtiff ; make install
/bin/sh: 1: cd: can't cd to tiff
/bin/sh: 1: ./configure: not found
/bin/sh: 7: cd: can't cd to port
make[1]: Entering directory '/home/user/Radiance-5.2/src/px'
make[1]: *** No rule to make target 'all'.
make[1]: Leaving directory '/home/user/Radiance-5.2/src/px'
/bin/sh: 8: cd: can't cd to ../libtiff
make[1]: Entering directory '/home/user/Radiance-5.2/src/px'
make[1]: *** No rule to make target 'install'.
make[1]: Leaving directory '/home/user/Radiance-5.2/src/px'
make: *** [Rmakefile:141: ../lib/libtiff.a] Error 2
make: Target 'install' not remade because of errors.
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/hd /home/user/Radiance-5.2/src
In directory hd...
cp rholo rhpict rhcopy genrhgrid rhoptimize rhinfo /usr/local/bin
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/util /home/user/Radiance-5.2/src
In directory util...
cp findglare glarendx rpiece rad ranimate ranimove vwright getinfo vwrays xglaresrc rsensor dctimestep rttree_reduce rcollate eplus_adduvf rfluxmtx rmtxop wrapBSDF evalglare /usr/local/bin
cp objview.pl /usr/local/bin/objview
cp objline.csh /usr/local/bin/objline
cp objpict.pl /usr/local/bin/objpict
cp glare.csh /usr/local/bin/glare
cp dayfact.csh /usr/local/bin/dayfact
cp debugcal.csh /usr/local/bin/debugcal
cp rlux.csh /usr/local/bin/rlux
cp raddepend.csh /usr/local/bin/raddepend
cp compamb.csh /usr/local/bin/compamb
cp vinfo.csh /usr/local/bin/vinfo
cp genambpos.pl /usr/local/bin/genambpos
cp fieldcomb.csh /usr/local/bin/fieldcomb
cp genklemsamp.pl /usr/local/bin/genklemsamp
cp genskyvec.pl /usr/local/bin/genskyvec
cp genBSDF.pl /usr/local/bin/genBSDF
cp bsdfview.pl /usr/local/bin/bsdfview
cp ltview.pl /usr/local/bin/ltview
cp ltpict.pl /usr/local/bin/ltpict
cp rtpict.pl /usr/local/bin/rtpict
cd /usr/local/bin ; chmod 755 objview objpict \
        glare dayfact debugcal rlux raddepend objline \
        compamb vinfo genambpos fieldcomb genklemsamp \
        genskyvec genBSDF rtpict
cd /usr/local/lib/ray && rm -f rambpos.cal ambpos.cal tregsamp.dat reinhartb.cal klems_full.cal klems_half.cal klems_quarter.cal disk2square.cal minimalBSDFt.xml WINDOW6BSDFt.xml
cp rambpos.cal ambpos.cal tregsamp.dat reinhartb.cal klems_full.cal klems_half.cal klems_quarter.cal disk2square.cal minimalBSDFt.xml WINDOW6BSDFt.xml /usr/local/lib/ray
csh -f tradinstall.csh /usr/local/bin /usr/local/lib/ray/tcl
Cannot find wish executable in current path -- trad not installed.
make: *** [Rmakefile:59: install] Error 1
/home/user/Radiance-5.2/src
/home/user/Radiance-5.2/src/cal /home/user/Radiance-5.2/src
In directory cal...
cp icalc ev rcalc total cnt neaten rlam tabfunc histo /usr/local/bin
/home/user/Radiance-5.2/src
There were some errors.

Here are some additional error that I don;t really understand… They are too long so I can only share a google drive link:

Looks like your build tree is missing the overlay provided by the auxiliary files archive here: https://radiance-online.org/download-install/radiance-source-code/latest-release/radR52supp.tar.gz

Install this over the source distribution and try again. The Unix build also expects a working installation of X11 and libraries.

Dear @Greg_Ward,

Thank you very much. I did have the auxiliary files (ray folder) install on the home diectory… and I install X11 using the following commands:

sudo apt-get install -y libx11-dev

sudo apt-get install -y libc6-dev

I believe some other errors came up as you can see in the google drive files, e.g.:

  • cp: target '/usr/local/lib/ray/meta' is not a directory

  • ../lib/libtiff.a: file not recognized: file format not recognized

  • cp: target '/usr/local/lib/ray/meta' is not a directory

  • Cannot find wish executable in current path -- trad not installed.

And some many other warnings like lookamb.c:77:4: warning: ignoring return value of ‘fscanf’, declared with attribute warn_unused_result [-Wunused-result] 77 | fscanf(fp, "%*s");

This warning is just an example but there are many more. SHould I pay attention to them?

Thank you so much!

The cc compiler warnings can be safely ignored. Different compilers warn about different “offenses,” and I gave up worrying about it a long time ago.

Regarding /usr/local/lib/ray/meta not being a directory, the first run of “makeall install” usually asks where and if you want your libraries installed. If that fails, then you can get this error.

I forgot to mention that wish is needed if you want to install trad, but it’s optional so you don’t really need to worry about it.

I don’t know what’s going on with libtiff on your build. You may not be able to get ra_tiff and a few other utilities to build because of this.

Dear @Greg_Ward

Thank you for the comments!!

So should I always type /usr/local/bin in the first run? Will the following makeall install runs fix it? If not, is there any way to do this retroactively? Also, what the implication of this error and can I ignore it? I was wondering because even if I typed in /usr/local/bin during makeall install (first and following runs), I never be able to find usr/local/lib/ray/meta directory manually. Is this something that should be created automatically?

So did you mean that if I don’t use ra_tiff, then I don’t have to worry about it?

Thank you so much!

S

Try running “makeall library” and see what happens. The destination defaults to “/usr/local/lib/ray”, but if you don’t have permissions to write “/usr/local/lib”, you can put it somewhere else and set the RAYPATH variable as advised in your .bashrc or whatever shell start-up script you use. Say “yes” when it asks you if you want to install the library files.

Dear @Greg_Ward

Thanks, also for me other question, is it critical to get ra_tiff and a few other utilities to build because of the file not recognized: file format not recognized error?

Yeah, I think that worked for me… I now meta folder there now

(base) user@DESKTOP-MKGHKQE:~$ cd ray
(base) user@DESKTOP-MKGHKQE:~/ray$ sudo ./makeall library
[sudo] password for user:
Where do you want the library files [/usr/local/lib/ray]? /usr/local/lib/ray
Install library files now [n]? y
Copying library files to /usr/local/lib/ray... Done.

Set the environment variable RAYPATH=.:/usr/local/lib/ray
For C-shell users, put the following into ~/.cshrc
        setenv RAYPATH .:/usr/local/lib/ray
For Bourne shell users, put the following into $HOME/.profile
        RAYPATH=.:/usr/local/lib/ray
        export RAYPATH

Thank you so much !

1 Like

No, it’s not critical. You just won’t be able to convert to/from TIFF .

Dear @Greg_Ward,

Great! Thank you very much for your help!

Have a great day!

Hello @Greg_Ward,

Today when I was installing on another linux distributiuo, and a new error came up and I am not sure what casued it. Would you be able to help me one more time please?

/usr/local/bin/rmake: 2: exec: make: not found

Sounds like you have not installed the necessary developer/compiler package on this machine.