: pkgadd: ERROR: no packages were found in <var/spool/pkg>
[ ... ]
Arthur,
After downloading the package, uncompress it if necessary, then do a
pkgadd -d filename
Regards,
James
To expand a bit on what's happening here, there are two formats in which
you will find packages. One is in the form of directory structure with a
top-level directory named after the package and containing the package
files. Usually there are distributed in a "tarball" - a gzip'ed (or
compressed) tar file (.tar.gz, .tgz or .tar.Z).
For example, I download a package RICHPse.tar.gz and put it in
/var/download. To add it, I do the following:
root# cd /var/download
root# ls -F RICHPse.*
RICHPse.tar.gz
root# gunzip RICHPse.tar.gz
root# ls -F RICHPse.*
RICHPse.tar
root# tar -xf RICHPse.tar
root# ls -F RICHPse.*
RICHPse/
root# pkgadd -d . RICHPse
and the package install begins. Note that the "-d ." specifies the
directory in which pkgadd will look for the package directory - in this
case the current directory. I could have used
root# pkgadd -d /var/download RICHPse
instead, or put the package directory in /var/spool/pkg and missed out the
"-d" altogether.
Solaris itself is made of packages - take a look in the "product"
directory of the Solaris software CD. The UNC Metalab package archive,
<http://metalab.unc.edu/pub/packages/solaris/sparc/>, distributes packages
like this.
The other form is a "package datastream", in which package data is encoded
in a single text file. Typically, these will be gzip'ed to save space and
bandwidth.
For example, I download a package lsof-4.45-sol7-sparc-32-local.gz and put
it in /var/download. To add it, I do the following:
root# cd /var/download
root# gunzip lsof-4.45-sol7-sparc-64-local.gz
root# head -6 lsof-4.45-sol7-sparc-64-local
# PaCkAgE DaTaStReAm
SMClsof 1 2154
# end of header
NAME=lsof
ARCH=sparc
VERSION=4.45
root# pkgadd -d lsof-4.45-sol7-sparc-64-local
and the package install begins. Note that the "-d" in this case specifies
the file in which pkgadd will look for the package data.
Both Sun Freeware <http://www.sunfreeware.com/> and the PatriotSoft FTP
site <ftp://ftp.patriots.net/pub/solaris_packages/> distributes packages
like this.
Depending on how you have it configured, sometimes you can download
"somepackage.gz" with a Netscape browser and it will save the file as
"somepackage", but when you try to to pkgadd it, you get
pkgadd: ERROR: attempt to process datastream failed
- bad format in datastream table-of-contents
pkgadd: ERROR: could not process datastream from </var/download/somepackage>
The problem is that "somepackage" is still gzip'ed. Rename it
"somepackage.gz" and gunzip it.
HTH someone..
--
_______________________________________________________________________
| -Andrew J. Caines- Unix Systems Engineer N.W.P...@nygnivfgn.arg |
pkgadd -d gcc-2_95_1-sol25-sparc-local
The following packages are available:
1 SMCgcc gcc
(sparc) 2.95.1
Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]:
Processing package instance <SMCgcc> from
</opt/gcc/gcc-2_95_1-sol25-sparc-local.gz>
gcc
(sparc) 2.95.1
cpio: Unexpected end-of-archive encountered.
1 errors
pkgadd: ERROR: attempt to process datastream failed
- process </usr/bin/cpio -icdumD -C 512> failed, exit code 1
pkgadd: ERROR: unable to unpack datastream
Installation of <SMCgcc> failed (internal error).
No changes were made to the system.
Anyone any ideas??
Thanks,
Frits.
Speaking only for myself,
Joe Durusau
arthur wouk wrote:
>
> thanks to all the guidance, i now have functioning gzip on my ss10
> with the fresh install of solaris 2.6.
>
> now i am trying to get gcc2.9.2 going. i have the installable package
> (gunzipped it runs to 68megs approximately) and during the attempt to
> run pkgadd it bombs out with errno 28.
>
> a samole line from the error message is
>
> cpio: Cannot write "reloc/lib/gcc-lib/sparc-sun/solaris2.6/2.95.2/cc1plus",
> errno 28, No space left on device
>
> there are a lot of these, this is a sample.
>
> now i have over 1.3 megs free on this disk. where is cpio trying to
> write this? is there any way to change the relocation site in the
> pkgadd command, to put this all where it should go? i am trying to
> install gcc-2.05.2-sol26-sparc-local. /usr has about 67megs free at
> the moment on my system.
>
> should i establish linked directory /usr/local with the actual
> location where i have lots of space (say /export/home/local)? are
> there any permissions needed in advance to make this link work for the
> installation of gcc?
A-HA! you need to gunzip this first!
--
-Andy M
http://synecdoche.net/~andy
Sent via Deja.com http://www.deja.com/
Before you buy.
/var/tmp
/var/adm/pkg
/var/spool/pkg
/usr/local ( or sometimes /opt or other directories )
during installation.
If you don't have much space in one or more of these, pkgadd -d
on the gunzipped package file may not work and give you "No space
left on device" messages. Often, the default install of Solaris does not
put much space in /var, /usr, or both. Therefore, you must
add more space either by repartioning (which is a pain usually),
or by creating symbolic links with ln -s to some directories with
more space.
Steve Christensen
sunfreeware.com
In article <96035722...@iris.nyx.net>,