[MacPorts] #56653: octave @4.4.0_3 +qt4: destroot fails: QSqlDatabase: QSQLITE driver not loaded
MacPorts
noreply at macports.org
Tue Jun 12 17:11:46 UTC 2018
#56653: octave @4.4.0_3 +qt4: destroot fails: QSqlDatabase: QSQLITE driver not
loaded
------------------------+--------------------
Reporter: saherr1969 | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Keywords: | Port: octave
------------------------+--------------------
Similar to ticket [https://trac.macports.org/ticket/56584/ #56584] but for
+qt4 variant.\\
Follow on to ticket [https://trac.macports.org/ticket/56582/ #56582]
On screen error:
{{{
---> Staging octave into destroot
Error: Failed to destroot octave: command execution failed
}}}
main.log contains:
{{{
:info:destroot GEN doc/interpreter/octave_interpreter.qhc
:info:destroot QSqlDatabase: QSQLITE driver not loaded
:info:destroot QSqlDatabase: available drivers:
:info:destroot Cannot open data base file
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_octave/octave/work/octave-4.4.0/doc/interpreter/octave_interpreter.qch!
:info:destroot make[2]: *** [doc/interpreter/octave_interpreter.qhc] Error
255
:info:destroot make[2]: Leaving directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_octave/octave/work/octave-4.4.0'
:info:destroot make[1]: *** [install-recursive] Error 1
:info:destroot make[1]: Leaving directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_octave/octave/work/octave-4.4.0'
:info:destroot make: *** [install] Error 2
:info:destroot make: Leaving directory
`/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_octave/octave/work/octave-4.4.0'
:info:destroot Command failed: cd
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_octave/octave/work/octave-4.4.0"
&& /usr/bin/make -w install DESTDIR=/opt/loca
:info:destroot Exit code: 2
:error:destroot Failed to destroot octave: command execution failed
:debug:destroot Error code: CHILDSTATUS 98573 2
:debug:destroot Backtrace: command execution failed
:debug:destroot while executing
:debug:destroot "system {*}$notty {*}$nice $fullcmdstring"
:debug:destroot invoked from within
:debug:destroot "command_exec destroot"
:debug:destroot (procedure "portdestroot::destroot_main" line 2)
:debug:destroot invoked from within
:debug:destroot "$procedure $targetname"
:error:destroot See
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_octave/octave/main.log
for details.
}}}
A web search showed that QSqlDatabase is Qt's SQL Database class. Using
{{{port search}}} for QSqlDatabase and QSQLITE provided no insight. So I
then ran {{{port search --line Qt | grep -i sqlite}}} which revealed qt4
and qt5 plugins. Because the MacPorts Portfiles web page lists qt5-sqlite-
plugin, I installed that, successfully, and then retried the {{{port
upgrade outdated}}} command to upgrade {{{octave}}}. Again it failed
during the destroot processing.
I reviewed the log file a bit higher and found:
{{{
:debug:clean Searching for dependency: qt4-mac
:debug:clean Found Dependency: receipt exists for qt4-mac
:debug:clean Searching for dependency: qscintilla-qt4
:debug:clean Found Dependency: receipt exists for qscintilla-qt4
}}}
The qt4 items suggested I needed qt4 and not qt5 sqlite plugin. Proceeded
to:
1. {{{port uninstall qt5-sqlite-plugin}}} (successful)
2. {{{port install qt4-mac-sqlite3-plugin}}} (successful)
3. {{{port upgrade outdated}}} (SUCCESSFUL)!!!!!!
Looking at the "source" for the portfile and found:
{{{
variant qt4 conflicts qt5 description {build the GUI using Qt4} {
PortGroup qt4 1.0
depends_lib-append port:qscintilla-qt4
configure.args-replace --without-qt --with-qt=4
}
variant qt5 conflicts qt4 description {build the GUI using Qt5} {
PortGroup qt5 1.0
qt5.depends_component qttools sqlite-plugin
depends_lib-append port:qscintilla-qt5
...
}}}
This suggests the fix for the destroot issue is to add a dependency check
for {{{qt4-mac-sqlite3-plugin}}}.
I have no clue how to do this so hopefully the maintainers of {{{octave}}}
can add this.
--
Ticket URL: <https://trac.macports.org/ticket/56653>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list