[MacPorts] #53982: libpurple @2.12.0: Tk 8.6 must be compiled with tcl.h from Tcl 8.6 or better (was: Cannot upgrade libpurple, Tk 8.6 need Tcl 8.6)

MacPorts noreply at macports.org
Sat Apr 15 10:55:32 UTC 2017


#53982: libpurple @2.12.0: Tk 8.6 must be compiled with tcl.h from Tcl 8.6 or
better
------------------------+----------------------
  Reporter:  arifsaha   |      Owner:  dbevans
      Type:  defect     |     Status:  assigned
  Priority:  Normal     |  Milestone:
 Component:  ports      |    Version:
Resolution:             |   Keywords:  haspatch
      Port:  libpurple  |
------------------------+----------------------
Changes (by ryandesign):

 * owner:   => dbevans
 * cc: ryandesign (added)
 * status:  new => assigned
 * keywords:   => haspatch


Comment:

 This occurs specifically because MacPorts tcl and tk 8.6 are installed.
 The configure script finds the macOS copy of tcl and tk 8.5 in /usr/lib:

 {{{
 :info:configure checking for tclConfig.sh... yes (/usr/lib/tclConfig.sh)
 :info:configure checking Tcl version compatability... ok, 8.5
 :info:configure checking for Tcl linkability... yes
 :info:configure checking for tkConfig.sh... yes (/usr/lib/tkConfig.sh)
 :info:configure checking for Tk linkability... yes
 }}}

 But then later the build phase erroneously tries to use tk.h from MacPorts
 in /opt/local/include, which is a different version:

 {{{
 :info:build In file included from tcl.c:28:
 :info:build /opt/local/include/tk.h:21:3: error: Tk 8.6 must be compiled
 with tcl.h from Tcl 8.6 or better
 :info:build #       error Tk 8.6 must be compiled with tcl.h from Tcl 8.6
 or better
 :info:build         ^
 }}}

 You won't see this problem if you don't have MacPorts tcl and tk active.
 In that case, libpurple will just link with macOS tcl and tk.

 One solution is to add a dependency on MacPorts tcl and tk and add
 configure flags to tell libpurple how to find it. This solves the problem
 for me and I'll attach that patch.

 I don't know how important tcl/tk support is in libpurple. If it's not
 important, another option would be to disable tcl/tk support normally, and
 offer a variant to enable it. Since other ports (including finch and
 pidgin) depend on libpurple, it's probably best to keep it enabled all the
 time, unless there are serious problems with doing so.

--
Ticket URL: <https://trac.macports.org/ticket/53982#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list