I'm working on a project where we have a couple of machines running some applications developed by our dev team. All the machines use the same Ubuntu version (12.04 x64). We want to use deb packages to install and upgrade the applications (we build the packages using checkinstall).

It is a good idea to include just the object files (.o) and link the files with the shared libraries when installing the deb? (Just to avoid problems with shared libraries) or it is not necessary (It doesn't prevent any problem) and we just put the single binary already linked on the deb package.

We want to distribute the binaries, not the source code. Compile on the target machine is not a option.



You want to just build the .deb packages as normal. There's no need to try and ship unlinked object files. Using the ${shlibs:Depends} and such variables appropriately in the control file will result in specification of the deps that the package was built against, in the resulting binary package.

If necessary, you can also specify the binary package containing the library you're depending on, and specify a minimum, maximum, or exact version which could be required. However, specifying maximum or exact versions could create problems if there are any updates to that library.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.