[MacPorts] #56653: octave @4.4.0_3 +qt4: destroot fails: QSqlDatabase: QSQLITE driver not loaded

MacPorts noreply at macports.org
Tue Jun 12 18:24:14 UTC 2018


#56653: octave @4.4.0_3 +qt4: destroot fails: QSqlDatabase: QSQLITE driver not
loaded
-------------------------+---------------------------------
  Reporter:  saherr1969  |      Owner:  MarcusCalhoun-Lopez
      Type:  defect      |     Status:  accepted
  Priority:  Normal      |  Milestone:
 Component:  ports       |    Version:
Resolution:              |   Keywords:
      Port:  octave      |
-------------------------+---------------------------------
Description changed by mf2k:

Old description:

> 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.

New description:

 Similar to ticket #56584 but for +qt4 variant.\\
 Follow on to ticket #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#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list