octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: build fails on macOS


From: Ben Abbott
Subject: Re: build fails on macOS
Date: Thu, 25 Oct 2018 07:21:54 +0900

On Oct 21, 2018, at 2:25 AM, Ben Abbott <address@hidden> wrote:

On Oct 20, 2018, at 8:41 AM, John W. Eaton <address@hidden> wrote:

On 10/19/2018 10:08 PM, Ben Abbott wrote:
On Oct 18, 2018, at 9:41 PM, Ben Abbott <address@hidden <mailto:address@hidden>> wrote:

On Oct 18, 2018, at 9:36 PM, John W. Eaton <address@hidden <mailto:address@hidden>> wrote:

On 10/19/2018 12:26 AM, Ben Abbott wrote:

I tried removing -framework QtOpenGL from the command, which resulted in …
ld: framework not found QtWidgets
I expect Qt is broken in ./libgui/graphics. We’re just marching down the sequence of Qt frameworks -> "-framework QtOpenGL -framework QtWidgets -framework QtGui -framework QtCore”

Can you try

 make V=1 libgui/liboctgui.la <http://liboctgui.la/>

and see how that is linked?

Or go back to a changeset prior to

 changeset:   25934:332be8be16eb
 user:        John W. Eaton <address@hidden <mailto:address@hidden>>
 date:        Fri Sep 28 18:18:09 2018 -0400
 summary:     dynamically load qt graphics

which made the libgui/graphics library a separate shared library and see how libgui/liboctgui.la <http://liboctgui.la/> was linked?  Did it use -framework Qt... in the link steps?  How was the QtOpenGL library linked?

jwe

I don’t know what I’m looking for, but that command worked.

Could you please go to changeset a00379f6f8c4 (this is the one just prior to the one mentioned above) and build Octave using make V=1 and show me the commands that are used when creating liboctgui.la?

Does that command use -framework QtOpenGL?  If not, then what Qt library provides the QtOpenGL widgets on OS X systems?  And why does configure appear to find a QtOpenGL module?

jwe

Ok. Beginning with tip

changeset:   25955:53f559a78c6d
bookmark:    @
tag:         tip
user:        John W. Eaton <address@hidden>
date:        Fri Oct 19 14:22:30 2018 -0400
summary:     eliminate temporary using declarations

I updated to rev a00379f6f8c4

hg update -r a00379f6f8c4

then bootstrap, configure, make. Which completed without error. Finally ...

rm libgui/liboctgui.la 
make V=1 libgui/liboctgui.la 

/bin/sh config.status oct-conf-post.h-tmp oct-conf-post.h
config.status: creating oct-conf-post.h-tmp
config.status: executing oct-conf-post.h commands
/bin/sh ./build-aux/mk-octave-config-h.sh config.h > octave-config.h-t && \
    if [ -s octave-config.h-t ]; then /bin/sh ./build-aux/move-if-change octave-config.h-t octave-config.h; else echo "octave-config.h-t is empty!" 1>&2; rm -f octave-config.h-t; exit 1; fi
rm -f libinterp/builtin-defun-decls.h-t && \
perl ./libinterp/mk-builtins.pl --header  "." -- libinterp/dldfcn/__delaunayn__.cc libinterp/dldfcn/__eigs__.cc libinterp/dldfcn/__fltk_uigetfile__.cc libinterp/dldfcn/__glpk__.cc libinterp/dldfcn/__init_fltk__.cc libinterp/dldfcn/__init_gnuplot__.cc libinterp/dldfcn/__ode15__.cc libinterp/dldfcn/__voronoi__.cc libinterp/dldfcn/amd.cc libinterp/dldfcn/audiodevinfo.cc libinterp/dldfcn/audioread.cc libinterp/dldfcn/ccolamd.cc libinterp/dldfcn/chol.cc libinterp/dldfcn/colamd.cc libinterp/dldfcn/convhulln.cc libinterp/dldfcn/dmperm.cc libinterp/dldfcn/fftw.cc libinterp/dldfcn/gzip.cc libinterp/dldfcn/qr.cc libinterp/dldfcn/symbfact.cc libinterp/dldfcn/symrcm.cc libinterp/corefcn/DASPK-opts.cc libinterp/corefcn/DASRT-opts.cc libinterp/corefcn/DASSL-opts.cc libinterp/corefcn/LSODE-opts.cc libinterp/corefcn/Quad-opts.cc libinterp/octave.cc libinterp/octave-value/ov-base.cc libinterp/octave-value/ov-bool-mat.cc libinterp/octave-value/ov-cell.cc libinterp/octave-value/ov-class.cc libinterp/octave-value/ov-classdef.cc libinterp/octave-value/ov-fcn-handle.cc libinterp/octave-value/ov-fcn-inline.cc libinterp/octave-value/ov-java.cc libinterp/octave-value/ov-null-mat.cc libinterp/octave-value/ov-oncleanup.cc libinterp/octave-value/ov-struct.cc libinterp/octave-value/ov-typeinfo.cc libinterp/octave-value/ov-usr-fcn.cc libinterp/octave-value/ov.cc libinterp/parse-tree/lex.ll libinterp/parse-tree/oct-parse.yy libinterp/parse-tree/profiler.cc libinterp/parse-tree/pt-eval.cc libinterp/parse-tree/pt-jit.cc libinterp/corefcn/__betainc__.cc libinterp/corefcn/__contourc__.cc libinterp/corefcn/__dsearchn__.cc libinterp/corefcn/__expint__.cc libinterp/corefcn/__gammainc__.cc libinterp/corefcn/__ichol__.cc libinterp/corefcn/__ilu__.cc libinterp/corefcn/__lin_interpn__.cc libinterp/corefcn/__magick_read__.cc libinterp/corefcn/__pchip_deriv__.cc libinterp/corefcn/__qp__.cc libinterp/corefcn/balance.cc libinterp/corefcn/besselj.cc libinterp/corefcn/bitfcns.cc libinterp/corefcn/bsxfun.cc libinterp/corefcn/call-stack.cc libinterp/corefcn/cellfun.cc libinterp/corefcn/colloc.cc libinterp/corefcn/conv2.cc libinterp/corefcn/daspk.cc libinterp/corefcn/dasrt.cc libinterp/corefcn/dassl.cc libinterp/corefcn/data.cc libinterp/corefcn/debug.cc libinterp/corefcn/defaults.cc libinterp/corefcn/det.cc libinterp/corefcn/dirfns.cc libinterp/corefcn/display.cc libinterp/corefcn/dlmread.cc libinterp/corefcn/dot.cc libinterp/corefcn/eig.cc libinterp/corefcn/ellipj.cc libinterp/corefcn/environment.cc libinterp/corefcn/error.cc libinterp/corefcn/fft.cc libinterp/corefcn/fft2.cc libinterp/corefcn/fftn.cc libinterp/corefcn/file-io.cc libinterp/corefcn/filter.cc libinterp/corefcn/find.cc libinterp/corefcn/gcd.cc libinterp/corefcn/getgrent.cc libinterp/corefcn/getpwent.cc libinterp/corefcn/getrusage.cc libinterp/corefcn/givens.cc libinterp/corefcn/graphics.cc libinterp/corefcn/gsvd.cc libinterp/corefcn/hash.cc libinterp/corefcn/help.cc libinterp/corefcn/hess.cc libinterp/corefcn/hex2num.cc libinterp/corefcn/input.cc libinterp/corefcn/inv.cc libinterp/corefcn/interpreter.cc libinterp/corefcn/kron.cc libinterp/corefcn/load-path.cc libinterp/corefcn/load-save.cc libinterp/corefcn/lookup.cc libinterp/corefcn/ls-oct-text.cc libinterp/corefcn/lsode.cc libinterp/corefcn/lu.cc libinterp/corefcn/mappers.cc libinterp/corefcn/matrix_type.cc libinterp/corefcn/max.cc libinterp/corefcn/mgorth.cc libinterp/corefcn/nproc.cc libinterp/corefcn/oct-hist.cc libinterp/corefcn/octave-link.cc libinterp/corefcn/ordschur.cc libinterp/corefcn/pager.cc libinterp/corefcn/pinv.cc libinterp/corefcn/pr-flt-fmt.cc libinterp/corefcn/pr-output.cc libinterp/corefcn/psi.cc libinterp/corefcn/quad.cc libinterp/corefcn/quadcc.cc libinterp/corefcn/qz.cc libinterp/corefcn/rand.cc libinterp/corefcn/rcond.cc libinterp/corefcn/regexp.cc libinterp/corefcn/schur.cc libinterp/corefcn/settings.cc libinterp/corefcn/sighandlers.cc libinterp/corefcn/sparse.cc libinterp/corefcn/spparms.cc libinterp/corefcn/sqrtm.cc libinterp/corefcn/str2double.cc libinterp/corefcn/strfind.cc libinterp/corefcn/strfns.cc libinterp/corefcn/sub2ind.cc libinterp/corefcn/svd.cc libinterp/corefcn/sylvester.cc libinterp/corefcn/symtab.cc libinterp/corefcn/syscalls.cc libinterp/corefcn/sysdep.cc libinterp/corefcn/time.cc libinterp/corefcn/toplev.cc libinterp/corefcn/tril.cc libinterp/corefcn/tsearch.cc libinterp/corefcn/typecast.cc libinterp/corefcn/urlwrite.cc libinterp/corefcn/utils.cc libinterp/corefcn/variables.cc > libinterp/builtin-defun-decls.h-t && \
    if [ -s libinterp/builtin-defun-decls.h-t ]; then /bin/sh ./build-aux/move-if-change libinterp/builtin-defun-decls.h-t libinterp/builtin-defun-decls.h; else echo "libinterp/builtin-defun-decls.h-t is empty!" 1>&2; rm -f libinterp/builtin-defun-decls.h-t; exit 1; fi
/bin/sh config.status liboctave/mk-version-h.sh-tmp liboctave/mk-version-h.sh
config.status: creating liboctave/mk-version-h.sh-tmp
config.status: executing liboctave/mk-version-h.sh commands
/bin/sh config.status libinterp/corefcn/mk-mxarray-h.sh-tmp libinterp/corefcn/mk-mxarray-h.sh
config.status: creating libinterp/corefcn/mk-mxarray-h.sh-tmp
config.status: executing libinterp/corefcn/mk-mxarray-h.sh commands
/bin/sh config.status liboctave/external/mk-f77-def.sh-tmp liboctave/external/mk-f77-def.sh
config.status: creating liboctave/external/mk-f77-def.sh-tmp
config.status: executing liboctave/external/mk-f77-def.sh commands
/bin/sh ./libtool  --tag=CXX   --mode=link g++ -std=gnu++11 -fPIC -D_THREAD_SAFE -pthread -Wall -W -Wshadow -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual -g -O2 -version-info 4:0:0 -no-undefined -bindir /usr/local/bpabbott/octave/bin -F/usr/local/Cellar/qt/5.10.1/lib   -L/usr/local/opt/hdf5/lib -L/usr/local/Cellar/graphicsmagick/1.3.29/lib  -L/usr/local/Cellar/fftw/3.3.7_1/lib -L/usr/local/Cellar/fftw/3.3.7_1/lib           -L/usr/local/Cellar/arpack/3.5.0/libexec/lib  -L/usr/local/Cellar/fftw/3.3.7_1/lib -L/usr/local/Cellar/fftw/3.3.7_1/lib -L/usr/local/Cellar/pcre/8.42/lib  -L/usr/local/opt/readline/lib -L/usr/local/opt/sqlite/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/bison/lib -L/usr/local/opt/gettext/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/icu4c/lib -L/usr/local/opt/texinfo/lib -L/usr/local/opt/qt/lib -o libgui/liboctgui.la -rpath /usr/local/bpabbott/octave/lib/octave/5.0.0 libgui/liboctgui_la-liboctgui-build-info.lo libgui/qterminal/libqterminal.la libgui/src/libgui-src.la libgui/graphics/libgui-graphics.la libinterp/liboctinterp.la liboctave/liboctave.la -framework QtNetwork -framework QtOpenGL -framework QtPrintSupport -framework QtHelp -framework QtWidgets -framework QtGui -framework QtSql -framework QtCore  -lqscintilla2_qt5 -framework OpenGL -L/usr/local/opt/freetype/lib -lfreetype -lhdf5 -lGraphicsMagick++ -lGraphicsMagick -lz -lfftw3_threads -lfftw3 -lfftw3f_threads -lfftw3f -framework OpenGL -lfontconfig -lfreetype   -framework Carbon -lgl2ps    -lcurl -lcholmod -lumfpack -lamd -lcamd -lcolamd -lccolamd -lcxsparse -lsuitesparseconfig -larpack -lqrupdate -lfftw3_threads -lfftw3 -lfftw3f_threads -lfftw3f  -L/usr/local/opt/veclibfort/lib -lvecLibFort -lreadline -lncurses  -lpcre -ldl   -L/usr/local/opt/readline/lib -L/usr/local/opt/sqlite/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/bison/lib -L/usr/local/opt/gettext/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/icu4c/lib -L/usr/local/opt/texinfo/lib -L/usr/local/opt/qt/lib -L/usr/local/Cellar/gcc/8.1.0/lib/gcc/8/gcc/x86_64-apple-darwin17.5.0/8.1.0 -L/usr/local/Cellar/gcc/8.1.0/lib/gcc/8/gcc/x86_64-apple-darwin17.5.0/8.1.0/../../.. -lgfortran -lquadmath -lm  -lm           -liconv   -lm 
libtool: link: rm -fr  libgui/.libs/liboctgui.4.dylib libgui/.libs/liboctgui.dylib libgui/.libs/liboctgui.la libgui/.libs/liboctgui.lai
libtool: link: g++ -std=gnu++11 -dynamiclib  -o libgui/.libs/liboctgui.4.dylib  libgui/.libs/liboctgui_la-liboctgui-build-info.o   -Wl,-force_load,libgui/qterminal/.libs/libqterminal.a -Wl,-force_load,libgui/src/.libs/libgui-src.a -Wl,-force_load,libgui/graphics/.libs/libgui-graphics.a  -L/usr/local/opt/hdf5/lib -L/usr/local/Cellar/graphicsmagick/1.3.29/lib -L/usr/local/Cellar/fftw/3.3.7_1/lib -L/usr/local/Cellar/arpack/3.5.0/libexec/lib -L/usr/local/Cellar/pcre/8.42/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/sqlite/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/bison/lib -L/usr/local/opt/gettext/lib -L/usr/local/opt/libffi/lib -L/usr/local/opt/icu4c/lib -L/usr/local/opt/texinfo/lib -L/usr/local/opt/qt/lib libinterp/.libs/liboctinterp.dylib -L/usr/local/opt/openblas/lib -L/usr/local/opt/veclibfort/lib -L/usr/local/Cellar/gcc/8.1.0/lib/gcc/8/gcc/x86_64-apple-darwin17.5.0/8.1.0 -L/usr/local/Cellar/gcc/8.1.0/lib/gcc/8/gcc/x86_64-apple-darwin17.5.0/8.1.0/../../.. -L/usr/local/opt/freetype/lib -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib /Users/bpabbott/Development/mercurial/default/sources/liboctave/.libs/liboctave.dylib liboctave/.libs/liboctave.dylib -framework QtNetwork -framework QtOpenGL -framework QtPrintSupport -framework QtHelp -framework QtWidgets -framework QtGui -framework QtSql -framework QtCore -lqscintilla2_qt5 -framework OpenGL -lhdf5 /usr/local/Cellar/graphicsmagick/1.3.29/lib/libGraphicsMagick++.dylib /usr/local/Cellar/graphicsmagick/1.3.29/lib/libGraphicsMagick.dylib -lbz2 -lltdl -lpthread -lz -lfontconfig -lfreetype -framework Carbon -lgl2ps -lcurl -lcholmod -lumfpack -lamd -lcamd -lcolamd -lccolamd -lcxsparse -lsuitesparseconfig /usr/local/Cellar/arpack/3.5.0/libexec/lib/libarpack.dylib -lopenblas -lqrupdate -lfftw3_threads -lfftw3 -lfftw3f_threads -lfftw3f -lvecLibFort -lreadline -lncurses -lpcre -ldl -lgfortran -lquadmath -liconv -lm  -pthread -g -O2 -F/usr/local/Cellar/qt/5.10.1/lib -Wl,-dylib_file -Wl,/usr/local/bpabbott/octave/lib/octave/5.0.0/liboctave.6.dylib:/Users/bpabbott/Development/mercurial/default/sources/liboctave/.libs/liboctave.dylib   -pthread -framework OpenGL -framework Carbon -framework QtNetwork -framework QtOpenGL -framework QtPrintSupport -framework QtHelp -framework QtWidgets -framework QtGui -framework QtSql -framework QtCore -install_name  /usr/local/bpabbott/octave/lib/octave/5.0.0/liboctgui.4.dylib -compatibility_version 5 -current_version 5.0 -Wl,-single_module
libtool: link: (cd "libgui/.libs" && rm -f "liboctgui.dylib" && ln -s "liboctgui.4.dylib" "liboctgui.dylib")
libtool: link: ( cd "libgui/.libs" && rm -f "liboctgui.la" && ln -s "../liboctgui.la" "liboctgui.la" )

Ben

Noticed I dropped the mail-list … correcting that now.

John, let me know if there is additional information that would be useful.

Ben



reply via email to

[Prev in Thread] Current Thread [Next in Thread]