Hi all, apologies but I seem to have a problem and searching around hasn’t helped.
I’m running Manjaro, and I tried to install Dynare from the AUR using pamac. The building always stops at /mex/build/octave/mjdgges
, giving this error:
Making all in mex/build/octave
make[1]: Entering directory '/var/tmp/pamac-build-samuel/dynare/src/dynare-4.6.1/mex/build/octave'
Making all in mjdgges
make[2]: Entering directory '/var/tmp/pamac-build-samuel/dynare/src/dynare-4.6.1/mex/build/octave/mjdgges'
ln -s -f ../../../sources/mjdgges/mjdgges.cc mjdgges.cc
make all-am
make[3]: Entering directory '/var/tmp/pamac-build-samuel/dynare/src/dynare-4.6.1/mex/build/octave/mjdgges'
g++ -std=gnu++17 -DPACKAGE_NAME=\"dynare\" -DPACKAGE_TARNAME=\"dynare\" -DPACKAGE_VERSION=\"4.6.1\" -DPACKAGE_STRING=\"dynare\ 4.6.1\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE
=\"dynare\" -DVERSION=\"4.6.1\" -DHAVE_CXX17=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INT
TYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBM=1 -DHAVE_LIBZ=1 -DHAVE_LIBSZ=1 -DHAVE_LIBHDF5=1 -DOCTAVE_MEX_FILE -DMEXEXT=\".mex\" -I. -D_FORTIFY_SOURCE=2 -I/usr/include/octave
-5.2.0/octave/.. -I/usr/include/octave-5.2.0/octave -I../../../sources -D_FORTIFY_SOURCE=2 -fPIC -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -Wall -Wno-parentheses -Wold-style-cast -MT
mjdgges.o -MD -MP -MF .deps/mjdgges.Tpo -c -o mjdgges.o mjdgges.cc
mv -f .deps/mjdgges.Tpo .deps/mjdgges.Po
g++ -std=gnu++17 -fPIC -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -Wall -Wno-parentheses -Wold-style-cast -shared -Wl,-Bsymbolic -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -o m
jdgges.mex mjdgges.o -loctinterp -loctave -lblas -llapack -lfftw3_threads -lfftw3 -lfftw3f_threads -lfftw3f -lutil -lm -L/usr/lib/gcc/x86_64-pc-linux-gnu/10.1.0 -L/usr/lib/gcc/x86
_64-pc-linux-gnu/10.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/10.1.0/../../.. -lgfortran -lm -lquadmath
/usr/bin/ld: cannot find -loctinterp
/usr/bin/ld: cannot find -loctave
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:387: mjdgges.mex] Error 1
make[3]: Leaving directory '/var/tmp/pamac-build-samuel/dynare/src/dynare-4.6.1/mex/build/octave/mjdgges'
make[2]: *** [Makefile:308: all] Error 2
make[2]: Leaving directory '/var/tmp/pamac-build-samuel/dynare/src/dynare-4.6.1/mex/build/octave/mjdgges'
make[1]: *** [Makefile:387: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/pamac-build-samuel/dynare/src/dynare-4.6.1/mex/build/octave'
make: *** [Makefile:421: all-recursive] Error 1
==> ERROR: A failure occurred in build().
Aborting...
The weird thing is that I’m able to build Dynare from source by cloning the git repository, and things seem to work after adding the Dynare path to Octave. But I would still like to get the AUR version working if possible.
As a side note, I was also unable to figure out how to get the installation working without passing the --disable-mex-kalman-steady-state
option. It seems that this has something to do with SLICOT, but I have absolutely no idea how to get that working.
If it makes a difference, when building from AUR, the options I entered when building Dynare were --prefix=/usr --disable-matlab --disable-mex-kalman-steady-state
, whereas when building from source I entered ./configure --disable-matlab --disable-mex-kalman-steady-state
since the README didn’t mention --prefix=/usr
(which was already there when I first tried to build from AUR).
Thank you!