Changes between Initial Version and Version 1 of Ticket #43809


Ignore:
Timestamp:
May 24, 2014, 3:37:08 PM (10 years ago)
Author:
ryandesign (Ryan Carsten Schmidt)
Comment:

MacPorts does not support Tcl 8.6. Mac OS X 10.4 and 10.5 ship with Tcl 8.4. Mac OS X 10.6, 10.7, 10.8 and 10.9 ship with Tcl 8.5. MacPorts 2.3.0 for the first time includes its own copy of Tcl 8.5, which is what we intend to use to avoid differences between Tcl versions and insulate ourselves from a hypothetical future version of OS X in which Apple upgrades Tcl to 8.6.

It seems you have installed a version of Tcl 8.6 into /usr/bin. That's probably a bad idea, and you should uninstall it. Possibly it has overwritten Apple's copy of Tcl 8.4 that was there. If so, you should put that back by reinstalling your OS and combo updates.

It does seem like a bug that we're trying to use /usr/bin/tclsh8.6-64 (or any tclsh from /usr/bin) and we should fix that if we can figure out a way to do so.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #43809 – Description

    initial v1  
    1 {{{
    21Today I've been trying to run 'port selfupgrade' on my PowerBook G4.  It has Mac OS 10.5.8, and XCode version 3.1.4
    32
    43After the command failed on several attempts, I reran with -v to get some information; at the outset, I see:
    54
     5{{{
    66MacPorts base version 2.2.1 installed,
    77MacPorts base version 2.3.0 downloaded.
     8}}}
    89
    910All appears to proceed ok until:
    1011
     12{{{
    1113===> staging to destroot in vendor/tcllib-1.15
    1214/usr/bin/tclsh8.6-64 `echo ./installer.tcl` \
     
    2123Exit code: 2
    2224Error: Error installing new MacPorts base: command execution failed
     25}}}
    2326
    2427The invocation of /usr/bin/tclsh8.6-64 seems incorrect; the 'file' command says:
    2528
     29{{{
    2630/usr/bin/tclsh8.6-64: Mach-O universal binary with 2 architectures: [ppc64: Mach-O ppc64 executable] [x86_64: Mach-O 64-bit x86_64 executable]
     31}}}
    2732
    2833On my PowerBook G4, clearly neither of those architectures is going to be any help.
     
    3035Looks like a better choice would be:
    3136
     37{{{
    3238/usr/bin/tclsh8.6:    Mach-O universal binary with 2 architectures: [ppc: Mach-O ppc executable] [i386: Mach-O i386 executable]
     39}}}
    3340
    3441I'll continue to pursue this myself, in an effort to understand why the 64-bit tclsh8.6 is being selected on what's clearly a 32-bit host; but I'm sure someone familiar with MacPorts internals could get there much more quickly. I can provide more info if needed.
    35 }}}