Re: Help using 'dpkg' command to install debian packages
On Fri, 2007-07-13 at 08:23 +1000, Hamish Moffatt wrote: On Thu, Jul 12, 2007 at 08:49:26AM -0500, Dallas Clement wrote: Here is my scenario: I built a binary libc6-i386.deb package on my Debian host and installed it on another host which has nothing but a bare Linux 2.6.21.1 kernel and a static busybox 1.6.0 installed. I used the busybox 'dpkg' command to install the package. Everything went fine and the output of the 'dpkg -l' command is: [...] When I try to install this package, it fails during the installation. This is the error I get: dpkg: package busybox depends on libc6-i386, which is not installed or flagged to be installed I cannot understand why I am getting this error, when clearly the libc6-i386 package is installed as you can see from the previous 'dpkg -l' output. [...] Clearly, the libc6-i386 package is installed. Is there anything else that 'dpkg' checks other than this 'status' file to do the dependency check? Is it just a simple package name check, or is there more involved? Any insight you could provide will be greatly appreciated! I'm at my wit's end trying to get this to work. It looks like you are doing the right thing to me, ie if you were using the real dpkg I believe it would work. Perhaps busybox's emulation is buggy. Hamish I have confirmed that the busybox 'dpkg' command is indeed buggy. It is not checking dependencies correctly. I wasn't able to pinpoint the exact location in the source code for the problem I reported earlier. The code is not exactly easy reading. I download the real dpkg source, built it and am using it instead. It works perfectly. ___ busybox mailing list busybox@busybox.net http://busybox.net/cgi-bin/mailman/listinfo/busybox
Help using 'dpkg' command to install debian packages
Hello All, I need some help understanding how the busybox 'dpkg -i' command works. Specifically, I would like to know how the mechanism for checking debian package dependencies works. I'd like to know what essential files are needed to do the checking. I've built a few packages and tried to install them. Those with dependencies are failing to install for some reason. Here is my scenario: I built a binary libc6-i386.deb package on my Debian host and installed it on another host which has nothing but a bare Linux 2.6.21.1 kernel and a static busybox 1.6.0 installed. I used the busybox 'dpkg' command to install the package. Everything went fine and the output of the 'dpkg -l' command is: Name Version +++-=-== ii libc6-i386 2.3.6 After this, I built a busybox package to re-install the full busybox implementation on to my target host. This package is dependent on libc6-i386 as can be seen from the 'dpkg --info' command: [EMAIL PROTECTED]:~/packages$ dpkg --info busybox_1.6.0-1_i386.deb new debian package, version 2.0. size 233752 bytes: control archive= 619 bytes. 444 bytes, 12 lines control 258 bytes, 4 lines md5sums Package: busybox Version: 1.6.0-1 Section: unknown Priority: extra Architecture: i386 Depends: libc6-i386 (= 2.3.5-1) Installed-Size: 436 Maintainer: Dallas Clement [EMAIL PROTECTED] Description: Busybox UNIX command utilities. BusyBox combines tiny versions of many common UNIX utilities into \ a single small executable. It provides replacements for most of the \ utilities you usually find in GNU fileutils, shellutils, etc. When I try to install this package, it fails during the installation. This is the error I get: dpkg: package busybox depends on libc6-i386, which is not installed or flagged to be installed I cannot understand why I am getting this error, when clearly the libc6-i386 package is installed as you can see from the previous 'dpkg -l' output. In fact, the contents of the /var/lib/dpkg/status file are as follows: cat /var/lib/dpkg/status Package: libc6-i386 Version: 2.3.6 Section: libs Priority: required Architecture: i386 Maintainer: Dallas Clement [EMAIL PROTECTED] Description: The GNU C library The GNU C library is the standard C/C++ library \ needed to support most Linux applications. Status: install ok installed Clearly, the libc6-i386 package is installed. Is there anything else that 'dpkg' checks other than this 'status' file to do the dependency check? Is it just a simple package name check, or is there more involved? Any insight you could provide will be greatly appreciated! I'm at my wit's end trying to get this to work. ___ busybox mailing list busybox@busybox.net http://busybox.net/cgi-bin/mailman/listinfo/busybox
Re: Help using 'dpkg' command to install debian packages
On Thu, Jul 12, 2007 at 08:49:26AM -0500, Dallas Clement wrote: Here is my scenario: I built a binary libc6-i386.deb package on my Debian host and installed it on another host which has nothing but a bare Linux 2.6.21.1 kernel and a static busybox 1.6.0 installed. I used the busybox 'dpkg' command to install the package. Everything went fine and the output of the 'dpkg -l' command is: [...] When I try to install this package, it fails during the installation. This is the error I get: dpkg: package busybox depends on libc6-i386, which is not installed or flagged to be installed I cannot understand why I am getting this error, when clearly the libc6-i386 package is installed as you can see from the previous 'dpkg -l' output. [...] Clearly, the libc6-i386 package is installed. Is there anything else that 'dpkg' checks other than this 'status' file to do the dependency check? Is it just a simple package name check, or is there more involved? Any insight you could provide will be greatly appreciated! I'm at my wit's end trying to get this to work. It looks like you are doing the right thing to me, ie if you were using the real dpkg I believe it would work. Perhaps busybox's emulation is buggy. Hamish -- Hamish Moffatt VK3SB [EMAIL PROTECTED] [EMAIL PROTECTED] ___ busybox mailing list busybox@busybox.net http://busybox.net/cgi-bin/mailman/listinfo/busybox
Re: Help using 'dpkg' command to install debian packages
On Fri, 2007-07-13 at 08:23 +1000, Hamish Moffatt wrote: On Thu, Jul 12, 2007 at 08:49:26AM -0500, Dallas Clement wrote: Here is my scenario: I built a binary libc6-i386.deb package on my Debian host and installed it on another host which has nothing but a bare Linux 2.6.21.1 kernel and a static busybox 1.6.0 installed. I used the busybox 'dpkg' command to install the package. Everything went fine and the output of the 'dpkg -l' command is: [...] When I try to install this package, it fails during the installation. This is the error I get: dpkg: package busybox depends on libc6-i386, which is not installed or flagged to be installed I cannot understand why I am getting this error, when clearly the libc6-i386 package is installed as you can see from the previous 'dpkg -l' output. [...] Clearly, the libc6-i386 package is installed. Is there anything else that 'dpkg' checks other than this 'status' file to do the dependency check? Is it just a simple package name check, or is there more involved? Any insight you could provide will be greatly appreciated! I'm at my wit's end trying to get this to work. It looks like you are doing the right thing to me, ie if you were using the real dpkg I believe it would work. Perhaps busybox's emulation is buggy. Hamish I think you're right - must be buggy. Though, what I am doing seems so simple!! I'm looking at the file dpkg.c now and putting in some debug messages to see why it is behaving this way. Cheers, Dallas ___ busybox mailing list busybox@busybox.net http://busybox.net/cgi-bin/mailman/listinfo/busybox