#25833 closed defect (fixed)
computing large dependency trees takes longer than necessary
Reported by: | celil.kj@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | MacPorts 2.0.0 |
Component: | base | Version: | 1.9.1 |
Keywords: | Cc: | vinc17@…, drkp (Dan Ports), raphael-st (Raphael Straub), diannaxu@… | |
Port: | geomview |
Description
Installing geomview hangs with no furhter output and no indication what is going on. To reproduce the bug, type:
$ sudo port install geomview
and you will be stuck with the following output for hours
---> Computing dependencies for geomview
Change History (15)
comment:1 Changed 14 years ago by danielluke (Daniel J. Luke)
comment:2 Changed 14 years ago by celil.kj@…
I left it running, and it failed with this error code:
---> Computing dependencies for geomviewError: Internal error: port lookup failed: too many nested evaluations (infinite loop?) Error: Status 1 encountered during processing.
comment:3 Changed 14 years ago by celil.kj@…
Running with the '-d' option I get repetitive output like below:
DEBUG: Searching for dependency: cairo DEBUG: Didn't find receipt, going to depspec regex for: cairo DEBUG: Checking for conflicts against glib2 DEBUG: Searching for dependency: glib2-devel DEBUG: Didn't find receipt, going to depspec regex for: glib2-devel DEBUG: Searching for dependency: pkgconfig DEBUG: Found Dependency: receipt exists for pkgconfig DEBUG: Searching for dependency: autoconf DEBUG: Found Dependency: receipt exists for autoconf DEBUG: Searching for dependency: automake DEBUG: Found Dependency: receipt exists for automake DEBUG: Searching for dependency: libtool DEBUG: Found Dependency: receipt exists for libtool DEBUG: Searching for dependency: gettext
I am not sure if this is a bug in macports (an infinite loop maybe), or a bug in the geomview port.
comment:4 Changed 14 years ago by danielluke (Daniel J. Luke)
You need to include the full output if you want someone to help figure it out.
you can do:
sudo port clean geomview sudo port -d install geomview | tee build.txt
and upload the build.txt file if you would like.
Otherwise, there is probably a loop in the dependency graph (which is a bug in some port) and you might be able to figure out where it is based on the output (if you do figure it out on your own, please note the problem here so that it can get fixed).
comment:5 Changed 14 years ago by celil.kj@…
Thanks for your suggestions. Are you able to install geomview on your computer?
comment:7 Changed 14 years ago by jmroot (Joshua Root)
Cc: | vinc17@… dports@… raphael@… added |
---|
comment:9 Changed 14 years ago by celil.kj@…
No, the problem isn't yet fixed. I tried
sudo port selfupdate sudo port upgrade outdated sudo port install geomview
and the port command still gets stuck.
comment:10 Changed 14 years ago by vinc17@…
So, the problem is not related to #25836. On my machine "sudo port -v install geomview" doesn't get stuck, but it takes 30 seconds before it starts displaying anything (using -n after "install" is faster, as port doesn't look at ports to upgrade).
comment:11 follow-up: 12 Changed 13 years ago by diannaxu@…
Replying to celil.kj@…:
Installing geomview hangs with no furhter output and no indication what is going on. To reproduce the bug, type:
$ sudo port install geomviewand you will be stuck with the following output for hours
---> Computing dependencies for geomview
I am having the exact same problem, now attempting to port geomview 1.9.4. This was on a brand new macbook air with near vanilla snow leopard (only software installed so far are Carbon Emacs and MacTex, both installed outside of macports, and geomview was the first port attempted).
comment:12 Changed 13 years ago by raphael-st (Raphael Straub)
Replying to diannaxu@…:
Replying to celil.kj@…:
Installing geomview hangs with no furhter output and no indication what is going on. To reproduce the bug, type:
$ sudo port install geomviewand you will be stuck with the following output for hours
I am having the exact same problem, now attempting to port geomview 1.9.4.
I cannot reproduce your problem here. Please try running
sudo port -d install geomview
to see what is going on.
comment:13 Changed 13 years ago by drkp (Dan Ports)
My guess is that what's going on here is that, due to a bug, dependency computation can take a very long time when there are lots of dependencies with many paths to each. This usually comes up when installing texlive +full on a system with no ports previously installed.
(See http://lists.macosforge.org/pipermail/macports-dev/2010-November/013219.html for more info about the bug. It was fixed in r73133, so the fix should be in the MacPorts 2.0.0 betas, but it's not in the stable release yet.)
My usual workaround is to explicitly install an intermediate dependency like texlive-bin first to help speed things along. Although if you've got MacTeX installed already you might not have been looking to install another texlive distribution. You may be able to accomplish that by putting /usr/texbin in your binpath in macports.conf, but I can't speak to how well that works.
comment:14 Changed 13 years ago by jmroot (Joshua Root)
Cc: | diannaxu@… added |
---|---|
Component: | ports → base |
Milestone: | → MacPorts 2.0.0 |
Resolution: | → fixed |
Status: | new → closed |
Summary: | installing geomview hangs → computing large dependency trees takes longer than necessary |
So, assuming fixed unless you can reproduce with 2.0 or trunk.
comment:15 Changed 13 years ago by diannaxu@…
Yes, installing texlive-bin as an intermediate dependency fixed the problem for me. I also installed mesa as another intermediate just for good measure. I did not try the putting /usr/texbin in the binpath route, I might try that if hard disk space becomes a problem and I can not tolerate two texlive distributions.
Try running with -d to see what is going on:
sudo port -d install geomview