Can't install any program within macports

Ryan Schmidt ryandesign at macports.org
Tue Dec 29 22:49:11 PST 2009


On Dec 30, 2009, at 00:38, Celso Coutinho wrote:

> A few weeks ago I installed macports by following the tutorial.
> Everything went great, got it working, installed the program that I
> wanted, but today I wanted to use that program, and I wasn't able to
> do so. Got this message:
> 
> 20s-MacBook:~ binte$ lp_solve Dropbox/MDIO/TP3/1.lp
> -bash: lp_solve: command not found

This would either indicate that you have not installed the port that provides lp_solve, or that the path where lp_solve is located is not in your PATH variable.

"port installed" would tell you what's installed. In this case, the port "lp_solve" should provide the program "lp_solve". 


> When I use the command env in the terminal I got this:
> 
> 20s-MacBook:~ binte$ env
[snip]
> PATH=/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin


Since /opt/local/bin and /opt/local/sbin are in your PATH, that seems to be fine. They're in there three times each, so you may want to edit your bash startup files to reduce that to just once, but that would just be an optimization, and wouldn't explain your current difficulties.


> I haven't done anything related to macports since the last time I used
> it. I also find that I can't install any program with macports, even
> after reinstall xcode and macports. I keep getting this message:
> 
> 20s-MacBook:~ binte$ sudo port install lp_solve
> Password:
> Portfile changed since last build; discarding previous state.
> --->  Computing dependencies for lp_solve
> Portfile changed since last build; discarding previous state.
> --->  Fetching lp_solve
> Portfile changed since last build; discarding previous state.
> --->  Verifying checksum(s) for lp_solve
> Portfile changed since last build; discarding previous state.
> --->  Extracting lp_solve
> Portfile changed since last build; discarding previous state.
> --->  Applying patches to lp_solve
> Error: Target org.macports.patch returned: shell command " cd
> "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_lp_solve/work/lp_solve_5.5"
> && /usr/bin/patch -p0 <
> '/opt/local/var/macports/sources/rsync.macports.org/release/ports/math/lp_solve/files/patch-Wno-long-double.diff'"
> returned error 1
> Command output: sh: line 0: cd:
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_math_lp_solve/work/lp_solve_5.5:
> No such file or directory

MacPorts should not be discarding the previous state between each phase. Above, the reason it can't apply the patches to the source directory in the patch phase is that MacPorts has thrown away the source directory right before that phase. I've never seen it do that before. The only reason it should be doing that is if the portfile is newer than the work directory. Unless your filesystem is very strange, that shouldn't be the case here. Can you run Disk Utility's disk check on your disk and see if it's ok? Is there anything else you can tell us -- OS version, Xcode version, MacPorts version, what your startup disk's format is (HFS+? case-sensitive or case-insensitive? journaled?), whether there are any other disks or network volumes attached, whether your computer's clock is set correctly, etc. You could also try cleaning the port and trying again (sudo port clean lp_solve).





More information about the macports-users mailing list