Ticket #3126 (closed defect: wontfix)
Xaw3d can't activate
| Reported by: | opendarwin@… | Owned by: | toby@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 1.0 |
| Keywords: | Cc: | ||
| Port: |
Description
powerbook<1># port install Xaw3d ---> Fetching Xaw3d ---> Attempting to fetch Xaw3d-1.5E.tar.gz from ftp://ftp.visi.com/users/hawkeyd/X/ ---> Verifying checksum(s) for Xaw3d ---> Extracting Xaw3d ---> Configuring Xaw3d ---> Building Xaw3d with target all ---> Staging Xaw3d into destroot ---> Packaging tgz archive for Xaw3d 1.5E_0 ---> Installing Xaw3d 1.5E_0 ---> Activating Xaw3d 1.5E_0 Error: Target com.apple.activate returned: Image error: /usr/X11R6/include/X11/Xaw3d/AllWidgets.h already exists and does not belong to a registered port. Unable to activate port Xaw3d.
Presumeably this doesn't work if one has the X11 development headers from Apple installed.
Change History
comment:2 Changed 8 years ago by opendarwin@…
- Status changed from closed to reopened
- Resolution fixed deleted
You're missing the point. Nobody should *have* to do what you suggest. Darwin Ports is intended for Mac OS X systems. Mac OS X systems used by developers most likely have X Windows headers installed. The install procedure should account for the case where the header is /usr/X11R6/include is already installed. Nobody should have to move anything aside or touch anything outside of the /opt/local directory. A non-root user (or a user who chooses not to become root) who is installing Darwin Ports in his home directory certainly can't do this.
The port should be fixed to account for this case.
comment:3 Changed 8 years ago by olegb@…
- Owner changed from darwinports-bugs@… to toby@…
- Status changed from reopened to new
There are a bunch of problems that needs to be addressed if you choose to install as "non-root", though I agree that darwinport *should* be in ${prefix} only, this isn't always the case (some have good reason to break policy).
Lets leave this open and see what the maintainer says, its his call.
comment:4 Changed 8 years ago by toby@…
I don't see /usr/X11R6/include/X11/Xaw3d/AllWidgets.h on my system (10.4.1). I only see /usr/X11R6/ include/X11/Xaw/AllWidgets.h
comment:5 Changed 8 years ago by opendarwin@…
(In reply to comment #4)
I don't see /usr/X11R6/include/X11/Xaw3d/AllWidgets.h on my system (10.4.1). I only see /usr/X11R6/ include/X11/Xaw/AllWidgets.h
What can I tell you? I have both. Did you install all of the X11 development APIs from Apple? The point is that something else could have installed it. Since there can only be one /usr/X11R6 directory, you shouldn't assume that just because a file is already there that the install should fail. Is it impossible to ask the user what to do?


All you need to do is supply the -f (force) flag to port(1) on the initial call to move the offending files aside and activate the port. You can now do "sudo port -f activate Xaw3d" and it should work.
-jmpp