LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Creating a .deb package... how to get all dependencies? (https://www.linuxquestions.org/questions/linux-software-2/creating-a-deb-package-how-to-get-all-dependencies-928178/)

Geminias 02-07-2012 03:45 PM

Creating a .deb package... how to get all dependencies?
 
I downloaded gpac's MP4Box app which I need for a toolchain. I need to convert the source of MP4Box into a .deb

There is a debian/ dir in the MP4Box source code. I see that it has the control file and all that for me.

When I run
Code:

dpkg-buildpackage -rfakeroot
It gives me a list of dependencies it could not find (and therefore it didn't work.)

Code:

dpkg-checkbuilddeps: Unmet build dependencies: libc6-i686 (>= 2.7-10ubuntu3) libxvidcore4-dev (>= 2) libmozjs-dev (>= 1.8.1.16+nobinonly-0ubuntu1)
dpkg-buildpackage: warning: Build dependencies/conflicts unsatisfied; aborting.
dpkg-buildpackage: warning: (Use -d flag to override.)

My QUESTION is... What is the recommended way to obtain these dependencies so that the command passes? For example, I'm missing libc6-i686. I actually have libc6 installed to the latest version. I'm guessing, because my cpu is x64, that it won't install i686 since it is totally optional. Therefore, I cannot apt-get libc6-i686.

I'm a linux noob, so on a related note, does a .deb package all the dependencies into a standalone .deb? Or does it just ref the packages? If I go and dpkg -i the .deb on another system will it work out of the box? (I'm assuming it will, since that would be the point of me installing the dependencies on the host system.)

k3lt01 02-08-2012 12:17 PM

If your system is still Ubuntu 7.04 (thats what your signature says) you won't get the dependencies because the repositories are moved when the release reaches End Of Life.

When you install a deb the control file lists the dependencies so apt-get can locate them and install them for you. There is no need, all things being equal, for you to make your own debs. Isn't a deb available for the package you downloaded? Have you done any research on how to do this? Did you read the install file or readme files in the source that explains what to do?

Is your system a 64 bit system? I mean the OS not the CPU. If it is you can install ia32-libs and thos will help run 32 bit libraries in 64 bit systems.

knudfl 02-08-2012 01:38 PM

All Ubuntu versions, 8.04 Hardy or later :

sudo apt-get build-dep gpac
... will install the most of the dependencies.

Don't know how you can be asked for libc6-i686 : Shouldn't happen ?

'gpac' is available as an amd64 package in all supported Ubuntu's ..
http://packages.ubuntu.com/hardy/gpac : /usr/bin/MP4Box

.


All times are GMT -5. The time now is 05:05 PM.