简体   繁体   中英

MacPorts Installation — Shell Commands/Postflight Script

I had run the MacPorts installer (2.0.3) for my OS X Leopard (10.5.8) which finished "successfully". Unfortunately the port command was not available so I looked in the MacPorts Guide which says that the installer should have run a so-called "postflight" script that sets the necessary environment variables. I tried to run the postflight script manually (which I downloaded from here ), but the execution fails with the following output:

    Detected the bash shell.
    Your shell already has the right PATH environment variable for use with
    MacPorts!
    Your shell already has the right MANPATH environment variable for use with
    MacPorts!
    Your shell already has the right DISPLAY environment variable for use with
    MacPorts!
    Adding [default] tag to sources.conf if needed...
    couldn't read file "/Contents/Resources/upgrade_sources_conf_default.tcl": no
   such file or directory
    Updating port image format...
    couldn't read file "/Contents/Resources/images_to_archives.tcl": no such file or
    directory
    Synchronizing the MacPorts installation with the project's rsync server...
    -bash: __PREFIX__/bin/port: No such file or directory
    An attempt to synchronize your recent MacPorts installation with the project's
    rsync server failed!
    Please run 'sudo port -d selfupdate' manually to find out the cause of the 
    error.
    You have succesfully installed the MacPorts system, launch a terminal and try it
    out!
    Read the port(1) manual page and http://guide.macports.org for help,
    http://www.macports.org/contact.php if you need to get in touch with The 
    MacPorts Project.

Any ideas?

First invoke the port command directly:

$ /opt/local/bin/port help

If that comes back with something reasonable (like the help text) then it's just that your $PATH isn't being used by your current shell. Try logging off and back on again to resolve that in the short term (this will test that your .bashrc file is correctly configured) or you could just modify the PATH environment variable directly (which doesn't test .bashrc ):

$ export PATH=$PATH:/opt/local/bin

You downloaded the postflight script but it alone cannot access the accessory scripts in Contents/ because those are located into the install package.

Those missing Tcl scripts are for upgrading from an older install, the log says PATH was already correctly configured but the macports bin directory could have the wrong position in PATH variables, for instance being at the end of PATH.

If you are doing a fresh install you can just only need PATH and MANPATH -you want man pages provided by macports before system's ones- as per [1]

[1] http://guide.macports.org/#installing.shell.postflight

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM