[MacPorts] #56582: mpich-default @3.2.1: Error: Dependency 'gfortran' not found.

MacPorts noreply at macports.org
Mon Jun 11 22:01:16 UTC 2018


#56582: mpich-default @3.2.1: Error: Dependency 'gfortran' not found.
----------------------------+----------------------
  Reporter:  lpn25          |      Owner:  eborisch
      Type:  defect         |     Status:  reopened
  Priority:  Normal         |  Milestone:
 Component:  ports          |    Version:  2.5.0
Resolution:                 |   Keywords:
      Port:  mpich-default  |
----------------------------+----------------------

Comment (by saherr1969):

 Yesterday I ran:
 {{{
 port selfupdate && port installed outdated && port upgrade outdated &&
 port -q reclaim
 }}}
 Like others, it failed with:
 {{{
 --->  Computing dependencies for mpich-default
 Error: Dependency 'gfortran' not found.
 }}}
 I then followed mndavidoff's suggestion of installing {{{mpich-default}}}
 as a requested port.  This was successful.

 When I re-ran {{{port selfupdate && port upgrade outdated}}} it ran
 through the {{{octave}}} build until it ran into the destroot error.  This
 suggests that the maintainers of {{{mpich-default}}} need to modify their
 portfile somehow to allow this to be correctly processed as a dependency
 of {{{octave}}}.
 {{{
 --->  Staging octave into destroot
 Error: Failed to destroot octave: command execution failed
 }}}



 Like previously reported, the log file 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/56582#comment:23>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list