Opened 12 years ago

Closed 12 years ago

#37450 closed defect (fixed)

expect 5.45 error on upgrading Tcl & Tk to 8.6.0

Reported by: phildobbin@… Owned by: markd@…
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc: dale+macports@…, ryandesign (Ryan Carsten Schmidt)
Port: expect

Description (last modified by ryandesign (Ryan Carsten Schmidt))

When running selfupdate scanning binaries found:

Scanning binaries for linking errors: 9.9%
 Could not open /opt/local/lib/libtcl8.5.dylib: Error opening or reading
file (referenced from /opt/local/bin/expect)

This was after running port upgrade outdated & involved the ports Tcl & Tk (Tcl 8.5.13 -> 8.6.0_1 & Tk the same) amongst others.

The package manager went on to try to rebuild the ports expect, libnewt & Vim & failed on all but Vim which was uninstalled & then re-installed. The original Vim was compiled with the +tcl variant & the subsequent rebuild excluded it.

I have attached the log files for the failed builds of expect & libnewt...

Attachments (4)

expect_main.log (132.5 KB) - added by phildobbin@… 12 years ago.
libnewt_main.log (18.3 KB) - added by phildobbin@… 12 years ago.
expect.diff (1.2 KB) - added by ryandesign (Ryan Carsten Schmidt) 12 years ago.
main.log (120.1 KB) - added by ryandesign (Ryan Carsten Schmidt) 12 years ago.

Download all attachments as: .zip

Change History (8)

Changed 12 years ago by phildobbin@…

Attachment: expect_main.log added

Changed 12 years ago by phildobbin@…

Attachment: libnewt_main.log added

comment:1 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Owner: changed from macports-tickets@… to markd@…
Port: expect added

expect links with libtcl8.5.dylib:

$ port installed expect
The following ports are currently installed:
  expect @5.45_3+universal (active)
$ otool -L /opt/local/bin/expect
/opt/local/bin/expect:
	/opt/local/lib/libtcl8.5.dylib (compatibility version 8.5.0, current version 8.5.13)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)

Now that tcl has been updated to 8.6.0 libtcl8.5.dylib no longer exists; the port needs to be rebuilt to link with libtcl8.6.dylib instead.

We could also use this opportunity to update expect to use the tcl 8.6.0 sources.

Unfortunately expect does not build with tcl 8.6.0 (regardless of what version of tcl sources it uses). Attached is a patch to update the port, and a log showing how it fails to build.

libnewt is a different port maintained by a different maintainer and probably needs a separate ticket.

Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: expect.diff added

Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: main.log added

comment:2 Changed 12 years ago by dale+macports@…

Cc: dale+macports@… added

Cc Me!

comment:3 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added
Summary: expect 5.45 + libnewt 0.52.14 error on upgrading Tcl & Tkexpect 5.45 error on upgrading Tcl & Tk to 8.6.0

comment:4 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed

In that bug report it was pointed out that we need to add -ltclstub8.6 to LDFLAGS. Fixed in r102801.

Note: See TracTickets for help on using tickets.