On Thu, Oct 12, 2017 at 04:56:07PM -0700, Steve Kargl wrote: > Has anyone successfully updated math/octave? > > The current math/octave port uses version 4.0.3, > which was released 2016-07-01. The newest version > is 4.2.1 and it was released on 2017-02-22. The > newer version contains new features and boatload > of bugfixes. > > My attempts at an upgrade die with a C++ error. > > libtool: link: c++ -std=gnu++11 -fPIC -D_THREAD_SAFE -pthread -fopenmp -Wall > -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings > -Wcast-align -Wcast-qual -O2 -pipe -fstack-protector -fno-strict-aliasing > -Wl,-rpath=/usr/local/lib/gcc6 -B/usr/local/bin -fstack-protector -o > src/.libs/octave-cli src/src_octave_cli-main-cli.o > src/src_octave_cli-octave-build-info.o -Wl,-R/usr/local/lib -L/usr/local/lib > -L/usr/local/lib/gcc6 libinterp/.libs/liboctinterp.so > liboctave/.libs/liboctave.so libgnu/.libs/libgnu.a -lhdf5 -lGraphicsMagick++ > -lGraphicsMagick -lz -lGL -lGLU -lfontconfig -lfreetype -lX11 -lgl2ps -lcurl > -lumfpack -lcholmod -lamd -lcamd -lcolamd -lccolamd -lcxsparse > -lsuitesparseconfig -larpack -lqrupdate -lfftw3_threads -lfftw3 > -lfftw3f_threads -lfftw3f -lopenblasp -lreadline -lncurses -lpcre > -L/usr/local/bin -L/usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd12.0/6.4.0 > -L/usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd12.0/6.4.0/../../../../../x86_64-portbld-freebsd12.0 /l > ib -L/usr/local/lib/gcc6/gcc/x86_64-portbld-freebsd12.0/6.4.0/../../.. > -lgfortran -lssp_nonshared -lquadmath -lutil -lm -fopenmp -pthread -Wl,-rpath > -Wl,/usr/local/lib/octave/4.2.1 > libinterp/.libs/liboctinterp.so: undefined reference to > `octave::sys::file_stat::~file_stat()' > > ~file_stat() appears in work/octave-4.2.1/liboctave/system/file-stat.h > > lines 235-238 > > // This destructor must remain as an empty destructor defined in the > // cpp file rather than in the header file (bug #50234). > ~file_stat (void); > > and > > line 295 > > ~file_fstat (void) { }
It seems I missed an instance of ~file_stat in liboctave/system/file-stat.cc, which was declared as 'inline file_stat::~file_stat () { }'. Removing inline keyword allows the compilation to continue. Now, the port fails at mv doc/interpreter/doc-cache-t doc/interpreter/doc-cache lrelease -qt4 -qm libgui/languages/be_BY.qm libgui/languages/be_BY.ts lrelease: could not find a Qt installation of '4' gmake[4]: *** [Makefile:27269: libgui/languages/be_BY.qm] Error 1 gmake[4]: Leaving directory '/usr/ports/math/octave42/work/octave-4.2.1' gmake[3]: *** [Makefile:26135: all-recursive] Error 1 gmake[3]: Leaving directory '/usr/ports/math/octave42/work/octave-4.2.1' gmake[2]: *** [Makefile:9910: all] Error 2 gmake[2]: Leaving directory '/usr/ports/math/octave42/work/octave-4.2.1' *** Error code 1 % lrelease -qt4 lrelease: could not find a Qt installation of '4' % lrelease lrelease: could not exec '/usr/local/lib/qt5/bin/lrelease': No such file or directory % pkg which /usr/local/bin/lrelease /usr/local/bin/lrelease was installed by package qtchooser-39 % pkg info | grep qt4 | wc -l 25 % pkg info | grep qt5 | wc -l -- Steve 20170425 https://www.youtube.com/watch?v=VWUpyCsUKR4 20161221 https://www.youtube.com/watch?v=IbCHE-hONow _______________________________________________ freebsd-ports@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"