Opened 18 years ago
Closed 16 years ago
#10881 closed defect (fixed)
BUG: pkg/mpkg/dmg/mdmg/rpm/dpkg commands skip destroot
Reported by: | dcurtis@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | MacPorts 1.8.0 |
Component: | base | Version: | |
Keywords: | mpkg destroot | Cc: | grahamperrin, liontooth@…, rick.richardson@…, tommyd@…, nerdrew@…, jmroot (Joshua Root) |
Port: |
Description (last modified by jberry@…)
Cannot build packages / meta-packages. For some reason it's thinking it should skip the destroot step and so there is nothing to archive for the pkg.
[Users/dcurtis] > pkg xrender DEBUG: Found port in file:///usr/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/x11/xrender DEBUG: Changing to port directory: /usr/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/x11/xrender DEBUG: Requested variant darwin is not provided by port xrender. DEBUG: Requested variant i386 is not provided by port xrender. DEBUG: Requested variant macosx is not provided by port xrender. DEBUG: Executing variant darwin_8 provides darwin_8 DEBUG: Found port in file:///usr/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/x11/XFree86 DEBUG: Changing to port directory: /usr/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/x11/XFree86 DEBUG: Searching for dependency: XFree86 DEBUG: Didn't find receipt, going to depspec regex for: XFree86 DEBUG: Found Dependency: path: /usr/X11R6/lib filename: libX11.6.dylib regex: ^libX11\.6\.dylib$ DEBUG: Found Dependency: path: /usr/X11R6/lib filename: libX11.6.dylib regex: ^libX11\.6\.dylib$ DEBUG: Found port in file:///usr/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/x11/render DEBUG: Changing to port directory: /usr/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/x11/render DEBUG: Searching for dependency: render DEBUG: Found Dependency: receipt exists for render DEBUG: Skipping com.apple.main (xrender) since this port is already installed DEBUG: Skipping com.apple.fetch (xrender) since this port is already installed DEBUG: Skipping com.apple.checksum (xrender) since this port is already installed DEBUG: setting option extract.cmd to /usr/bin/bzip2 DEBUG: Skipping com.apple.extract (xrender) since this port is already installed DEBUG: Skipping com.apple.patch (xrender) since this port is already installed DEBUG: Skipping com.apple.configure (xrender) since this port is already installed DEBUG: Skipping com.apple.build (xrender) since this port is already installed DEBUG: Skipping com.apple.destroot (xrender) since this port is already installed DEBUG: Executing com.apple.pkg (xrender) ---> Creating pkg for xrender-0.9.0 can't stat /usr/local/var/db/dports/build/_usr_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_x11_xrender/work/destroot (No such file or directory) can't make bom /usr/local/var/db/dports/build/_usr_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_x11_xrender/work/xrender-0.9.0.pkg/Contents/Archive.bom for dir /usr/local/var/db/dports/build/_usr_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_x11_xrender/work/destroot Error: Target com.apple.pkg returned: shell command "mkbom /usr/local/var/db/dports/build/_usr_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_x11_xrender/work/destroot /usr/local/var/db/dports/build/_usr_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_x11_xrender/work/xrender-0.9.0.pkg/Contents/Archive.bom" returned error 1 Command output: can't stat /usr/local/var/db/dports/build/_usr_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_x11_xrender/work/destroot (No such file or directory) can't make bom /usr/local/var/db/dports/build/_usr_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_x11_xrender/work/xrender-0.9.0.pkg/Contents/Archive.bom for dir /usr/local/var/db/dports/build/_usr_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_x11_xrender/work/destroot Warning: the following items did not execute (for xrender): com.apple.pkg Error: Status 1 encountered during processing.
Change History (25)
comment:1 Changed 18 years ago by dcurtis@…
comment:2 Changed 18 years ago by markd@…
Summary: | mpkg/pkg command builds with errors → BUG: mpkg/pkg command skips destroot |
---|
comment:3 Changed 18 years ago by jberry@…
Description: | modified (diff) |
---|
Please mark output as code so it's easier to read.
comment:4 Changed 18 years ago by dcurtis@…
temporary fix:
when doing mpkg use the -k flag and it will leave the destroot contents.
comment:5 Changed 18 years ago by pipping@…
Milestone: | → Port Bugs |
---|
comment:6 Changed 18 years ago by pipping@…
Milestone: | Port Bugs → MacPorts 1.4 |
---|
comment:7 Changed 18 years ago by jmpalacios (Juan Manuel Palacios)
Milestone: | MacPorts 1.4 → Needs developer review |
---|---|
Priority: | Blocker → Important |
Fixing this so that a meta package builds through regular port(1) operation would require forcing some things internally, which I'm figuring is not going to be that easy since some guessing as to what to force would have to take place. Therefore setting to "Needs developer review" so that discussion on the issue can set it to a version'd milestone.
-jmpp
comment:8 Changed 18 years ago by jmpalacios (Juan Manuel Palacios)
Owner: | changed from darwinports-bugs@… to macports-dev@… |
---|
comment:9 Changed 17 years ago by jmpalacios (Juan Manuel Palacios)
Milestone: | Needs developer review → MacPorts base bugs |
---|
Milestone Needs developer review deleted
comment:10 Changed 17 years ago by nox@…
Priority: | Important → High |
---|---|
Version: | 1.3.2 |
comment:11 Changed 17 years ago by afb@…
This bug also affects the rpm/dpkg targets (as they also need a destroot)
The workaround is to either use the force, or to uninstall everything...
(or disable the autoclean, as suggested above - same as the -k option)
comment:13 Changed 17 years ago by jmpalacios (Juan Manuel Palacios)
Priority: | High → Normal |
---|
comment:14 Changed 17 years ago by afb@…
Cc: | grahamperrin added |
---|
comment:15 Changed 17 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | liontooth@… rick.richardson@… added |
---|---|
Summary: | BUG: mpkg/pkg command skips destroot → BUG: pkg/mpkg/dmg/mdmg/rpm/dpkg commands skip destroot |
comment:16 Changed 17 years ago by rick.richardson@…
There are two workarounds in the ticket above:
- port -f destroot ghostscript, to make the root "valid"
- disable autoclean for future installs to be packageable
e.g.
$ sudo port -f destroot ghostscript
$ sudo port dmg ghostscript
comment:17 follow-up: 18 Changed 17 years ago by dbruce@…
I still can't make a dmg of my port (tuxmath) even with the above work-arounds. Is there currently a functioning way to do this?
Here's what I did:
sudo port mdmg tuxmath - ran into the problems above with the missing directories for tuxmath itself as well as for many of the dep libs. After creating all these dirs manually with mkdir, here's what I get:
janis-lehtinens-imac:~ dbruce$ sudo port clean tuxmath[[BR]] ---> Cleaning tuxmath[[BR]] janis-lehtinens-imac:~ dbruce$ sudo port -f destroot tuxmath[[BR]] ---> Fetching tuxmath[[BR]] ---> Verifying checksum(s) for tuxmath[[BR]] ---> Extracting tuxmath[[BR]] ---> Configuring tuxmath[[BR]] ---> Building tuxmath with target all[[BR]] ---> Staging tuxmath into destroot[[BR]] janis-lehtinens-imac:~ dbruce$ sudo port mdmg tuxmath[[BR]] ---> Creating pkg for tuxmath-1.6.1[[BR]] ---> Creating pkg for expat-2.0.1[[BR]] (... skipping lots of Creating pkg for *...)[[BR]] ---> Creating pkg for zlib-1.2.3[[BR]] ---> Creating disk image for tuxmath-1.6.1[[BR]] Error: Target org.macports.mdmg returned: shell command "ditto -rsrcFork /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_games_tuxmath/work/tuxmath-1.6.1.mpkg '/Volumes/tuxmath-1.6.1 3/tuxmath-1.6.1.mpkg'" returned error 1 Command output: ditto: /Volumes/tuxmath-1.6.1 3/tuxmath-1.6.1.mpkg/Contents/Packages/tuxmath-1.6.1.pkg/Contents/Archive.pax.gz: No space left on device
(the disk is definitely not full)
So -
- For the packages that fail to create the needed dir, what needs to be added to the Portfile?
- Is there something beyond "sudo port -f destroot tuxmath; sudo port dmg tuxmath" I need to do?
David Bruce - dbruce@…
comment:18 Changed 17 years ago by afb@…
Replying to dbruce@tampabay.rr.com:
I still can't make a dmg of my port (tuxmath) even with the above work-arounds. Is there currently a functioning way to do this?
That is a different issue (#13968), the size calculations for meta-packages/diskimages are off...
comment:20 Changed 16 years ago by probono@…
Given that this has been around for 2 years, is this considered a bug or a feature? (honest question)
comment:21 Changed 16 years ago by tobypeterson
Milestone: | MacPorts base bugs → MacPorts Future |
---|
Milestone MacPorts base bugs deleted
comment:22 Changed 16 years ago by nelek@…
How am I supposed to work around this if I'm trying to build a package with dependencies? Even if i do the workaround, i still get the error for each other dependency I'm trying to build. For large sets this is totally unworkable.
And how can a serious bug like this exist for 2 years without a fix??
[CODE] ERROR: The specified root is invalid: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_archivers_bzip2/work/destroot CODE
comment:25 Changed 16 years ago by jmroot (Joshua Root)
Cc: | jmr@… added |
---|---|
Milestone: | MacPorts Future → MacPorts 1.8.0 |
Resolution: | → fixed |
Status: | new → closed |
This appears to have been fixed by r50490.
For any port; if you clean, destroot, pkg then you will not recieve this error. It's something about required steps (bascially "skipping destroot because port installed").