How to specify versions of ports?
Hello, this is probably a silly question, but... How do you specify versions of ports to be installed? I tried upgrading ghc from 6.6_2 to 6.6_3 but the compile fails. I now want to have my old version back, of which I still have a package. I am in /opt/local/var/db/dports/packages/darwin/powerpc I can see that I have several packages of ghc, including the one that I want 6.6_2 $ ls ghc* ghc-6.6_0+darwin_8_powerpc.powerpc.tgz ghc-6.6_2+darwin_8_powerpc.powerpc.tgz ghc-6.6_1+darwin_8_powerpc.powerpc.tgz I want to install it: $ sudo port install -b ghc @6.6_2 Error: Target com.apple.unarchive returned: Archive for ghc 6.6_3+darwin_8_powerpc not found, required when binary-only is set! Error: Status 1 encountered during processing. Why does this not work? What do I need to do? Thanks, Max
Hi, Am 07.03.2007 um 16:40 schrieb Max Brown:
I can see that I have several packages of ghc, including the one that I want 6.6_2 $ ls ghc* ghc-6.6_0+darwin_8_powerpc.powerpc.tgz ghc-6.6_2+darwin_8_powerpc.powerpc.tgz ghc-6.6_1+darwin_8_powerpc.powerpc.tgz
I want to install it: $ sudo port install -b ghc @6.6_2
sudo port install ghc@6.6_2 sudo port install ghc@6.6_2+darwin_8 Dont know what -b stands for and I dont think it is necessary. Leaving out the space between the port and the version is a must. Specifying it completely might be required as well (this is the second line). Bye, Christian
Hi Christian, Thanks for that tip.
Leaving out the space between the port and the version is a must. Specifying it completely might be required as well (this is the second line).
I tried the following: $ sudo port -v install ghc@6.6_2+darwin_8 ---> Fetching ghc ---> Verifying checksum(s) for ghc ---> Checksumming ghc-6.6-src.tar.bz2 ---> Checksumming ghc-6.6-src-extralibs.tar.bz2 ---> Checksumming ghc-6.4-darwin-bootstrap-tiger.tar.bz2 ---> Extracting ghc ---> Extracting ghc-6.6-src.tar.bz2 ---> Extracting ghc-6.6-src-extralibs.tar.bz2 ---> Extracting ghc-6.4-darwin-bootstrap-tiger.tar.bz2 ---> Applying patches to ghc ---> Applying /opt/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/lang/ghc/files/patch-configure.ac patching file configure.ac [...configure and compile output...] To me this doesn't look like it is installing the package from the binary archive that I already have - or thought I had. For whatever reason, "port install" seems to be set on compiling ghc 6.6_3, regardless of what version I specify. That is kind of annoying, because the build fails, and I am now without ghc. What do I need to do to get the old version back?
Max Brown wrote:
To me this doesn't look like it is installing the package from the binary archive that I already have - or thought I had. For whatever reason, "port install" seems to be set on compiling ghc 6.6_3, regardless of what version I specify. That is kind of annoying, because the build fails, and I am now without ghc. What do I need to do to get the old version back?
Do you have it still installed, but not activated? sudo port installed ghc If the old version is listed, try sudo port activate ghc @6.6_2 HTH, Rainer
Do you have it still installed, but not activated? sudo port installed ghc
$ sudo port installed ghc Port ghc is not installed. No ports are installed. (No ports are installed??? Actually, when I run "port installed", I get a list of some stuff, ghc is just not on that list. Phew.) How did I manage to break this? Are the files in my package directory worthless now?
On Mar 7, 2007, at 12:31 PM, Max Brown wrote:
How did I manage to break this? Are the files in my package directory worthless now?
You didn't break it. Archive mode just doesn't do quite all it should. As a hack, you could change the version of the ghc portfile to the version you have an archive for and then do port install ghc. -- Daniel J. Luke +========================================================+ | *---------------- dluke@geeklair.net ----------------* | | *-------------- http://www.geeklair.net -------------* | +========================================================+ | Opinions expressed are mine and do not necessarily | | reflect the opinions of my employer. | +========================================================+
Thanks, that was a good idea - seems to have worked. On 3/7/07, Daniel J. Luke <dluke@geeklair.net> wrote:
On Mar 7, 2007, at 12:31 PM, Max Brown wrote:
How did I manage to break this? Are the files in my package directory worthless now?
You didn't break it. Archive mode just doesn't do quite all it should.
As a hack, you could change the version of the ghc portfile to the version you have an archive for and then do port install ghc.
-- Daniel J. Luke +========================================================+ | *---------------- dluke@geeklair.net ----------------* | | *-------------- http://www.geeklair.net -------------* | +========================================================+ | Opinions expressed are mine and do not necessarily | | reflect the opinions of my employer. | +========================================================+
-b means only install binaries, which prevents it from doing a fetch/ configure/build/destroot cycle if the archive isn't present. On Mar 7, 2007, at 10:49 AM, Christian Voelker wrote:
Dont know what -b stands for and I dont think it is necessary. Leaving out the space between the port and the version is a must. Specifying it completely might be required as well (this is the second line).
-- Kevin Ballard http://kevin.sb.org eridius@macports.org http://www.tildesoft.com
participants (5)
-
Christian Voelker
-
Daniel J. Luke
-
Kevin Ballard
-
Max Brown
-
Rainer Müller