How to use macport to install software?

5,287

You seem to have a corrupted Portfile: your openssl port doesn't have a checksums variable set.

The clean --all operation is not of any help because it cleans distfile (the actual archive for the port being built) and work directory, not the Portfile.

You can check if your current Portfile has checksums setting in it by running

port cat openssl | grep checksums ; echo $?

a 1 as output means Portfile is corrupted.

The easiest way to restore the file is deleting it and then resync, when on rsync or svn (I'm unsure about the single tarball). So switch back to svn in sources.conf, i.e. restore the file:/// entry, and run:

sudo port -d sync; sudo rm $(port dir openssl)/Portfile; sudo port -d sync

The errors in EDIT 2 means that your port command doesn't know about procedures used in portfiles, that is it's outdated. I'm not sure why selfupdate didn't update it.

Share:
5,287

Related videos on Youtube

qazwsx
Author by

qazwsx

Updated on September 18, 2022

Comments

  • qazwsx
    qazwsx almost 2 years
    $ sudo port install linkchecker
    --->  Computing dependencies for openssl
    --->  Verifying checksum(s) for openssl
    Error: No checksum set for openssl-1.0.0f.tar.gz
    Error: Target org.macports.checksum returned: Unable to verify file checksums
    Log for openssl is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_svn.macports.org_trunk_dports_devel_openssl/main.log
    Error: Unable to upgrade port: 1
    Error: Unable to execute port: upgrade python27 failed
    To report a bug, see <http://guide.macports.org/#project.tickets>
    

    It seems the port doesn't have a clean state to start with?

    [EDIT1] sudo port -d selfupdate

    I'm behind a firewall which might not allow rsync.

    $ sudo port -d selfupdate
    Password:
    --->  Updating the ports tree
    DEBUG: Synchronizing ports tree(s)
    Synchronizing local ports tree from file:///opt/local/var/macports/sources/svn.macports.org/trunk/dports/
    DEBUG: /usr/bin/svn update --non-interactive /opt/local/var/macports/sources/svn.macports.org/trunk/dports
    DEBUG: changing euid/egid - current euid: 0 - current egid: 0
    U    /opt/local/var/macports/sources/svn.macports.org/trunk/dports/python/py-pyqt4/Portfile
    U    /opt/local/var/macports/sources/svn.macports.org/trunk/dports/python/py-mhash/Portfile
    U    /opt/local/var/macports/sources/svn.macports.org/trunk/dports/python/py-tweepy/Portfile
    U    /opt/local/var/macports/sources/svn.macports.org/trunk/dports/python/py-pyttsx/Portfile
    U    /opt/local/var/macports/sources/svn.macports.org/trunk/dports/python/py-docx/Portfile
    U    /opt/local/var/macports/sources/svn.macports.org/trunk/dports/python/py-clint/Portfile
     U   /opt/local/var/macports/sources/svn.macports.org/trunk/dports/gnome/gnucash-devel
    Updated to revision 88813.
    Creating port index in /opt/local/var/macports/sources/svn.macports.org/trunk/dports
    Adding port aqua/Readown
    Failed to parse file archivers/arj/Portfile: invalid command name "get_canonical_archflags"
    Failed to parse file archivers/gzip/Portfile: invalid command name "installs_libs"
    Failed to parse file archivers/ucl/Portfile: invalid command name "get_canonical_archflags"
    Failed to parse file archivers/unzip/Portfile: invalid command name "installs_libs"
    Failed to parse file archivers/upx/Portfile: invalid command name "get_canonical_archflags"
    Failed to parse file archivers/xdelta/Portfile: invalid command name "get_canonical_archflags"
    Failed to parse file archivers/zip/Portfile: invalid command name "installs_libs"
    Failed to parse file archivers/zoo/Portfile: invalid command name "get_canonical_archflags"
    .
    .
    .
    

    [EDIT2] sudo port clean --all openssl

    sudo port clean --all openssl didn't work.

    $ sudo port install linkchecker
    --->  Computing dependencies for openssl
    --->  Verifying checksum(s) for openssl
    Error: No checksum set for openssl-1.0.0f.tar.gz
    Error: Target org.macports.checksum returned: Unable to verify file checksums
    Log for openssl is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_svn.macports.org_trunk_dports_devel_openssl/main.log
    Error: Unable to upgrade port: 1
    Error: Unable to execute port: upgrade python27 failed
    To report a bug, see <http://guide.macports.org/#project.tickets>
    $ sudo port clean --all openssl
    --->  Cleaning openssl
    $ sudo port install linkchecker
    --->  Computing dependencies for openssl
    --->  Fetching openssl
    --->  Attempting to fetch openssl-1.0.0f.tar.gz from http://www.openssl.org/source/
    --->  Verifying checksum(s) for openssl
    Error: No checksum set for openssl-1.0.0f.tar.gz
    Error: Target org.macports.checksum returned: Unable to verify file checksums
    Log for openssl is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_svn.macports.org_trunk_dports_devel_openssl/main.log
    Error: Unable to upgrade port: 1
    Error: Unable to execute port: upgrade python27 failed
    To report a bug, see <http://guide.macports.org/#project.tickets>
    $
    

    [EDIT3] tarball install also doesn't work

    $ more /opt/local/etc/macports/sources.conf
    #  MacPorts system wide sources configuration file
    #  $Id: sources.conf 42662 2008-11-28 23:18:50Z [email protected] $
    
    <snip>   
    
    #  To get the ports tree from the master MacPorts server in California, USA use:
    #      rsync://rsync.macports.org/release/ports/
    #  To get it from the mirror in Trondheim, Norway use:
    #      rsync://trd.no.rsync.macports.org/release/ports/
    #  A current list of mirrors is available at http://trac.macports.org/wiki/Mirrors
    #rsync://rsync.macports.org/release/ports/ [default]
    #http://www.macports.org/files/ports.tar.gz [default]
    file:///opt/local/var/macports/sources/svn.macports.org/trunk/dports/ [default]
    $ sudo vim /opt/local/etc/macports/sources.conf
    $ sudo port -d sync
    DEBUG: Synchronizing ports tree(s)
    Synchronizing local ports tree from http://www.macports.org/files/ports.tar.gz
    No updates for http://www.macports.org/files/ports.tar.gz
    $ more /opt/local/etc/macports/sources.conf
    $ sudo port install linkchecker
    --->  Computing dependencies for openssl
    --->  Fetching openssl
    --->  Attempting to fetch openssl-1.0.0f.tar.gz from http://www.openssl.org/source/
    --->  Verifying checksum(s) for openssl
    Error: No checksum set for openssl-1.0.0f.tar.gz
    Error: Target org.macports.checksum returned: Unable to verify file checksums
    Log for openssl is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_www.macports.org_files_ports_devel_openssl/main.log
    Error: Unable to upgrade port: 1
    Error: Unable to execute port: upgrade python27 failed
    To report a bug, see <http://guide.macports.org/#project.tickets>
    
    • HikeMike
      HikeMike over 12 years
      Have you tried sudo port -d selfupdate to update the installed MacPorts infrastructure?
    • HikeMike
      HikeMike over 12 years
      Consider doing what the comments on this issue suggest.
    • HikeMike
      HikeMike over 12 years
      Use these instructions instead to selfupdate.
    • qazwsx
      qazwsx over 12 years
      I can actually use svn, is there a reason why I should use tar ball instead?
    • qazwsx
      qazwsx over 12 years
      Thanks for reply. But my question was NOT something like "how to install softwares using package management systems for Mac OS X".
    • HikeMike
      HikeMike over 12 years
      It's also for user unable to use rsync. Know anyone like that? It's simply the same solution for both problems...
    • HikeMike
      HikeMike over 12 years
      This is odd. The portfile contains the checksums.
  • qazwsx
    qazwsx over 12 years
    I ended up reinstalling MacPorts. I'll try this next time when I have the same issue.
  • Nabil
    Nabil over 12 years
    You shouldn't have it again, but in case you do I suggest to investigate what's the real cause.