1

As many of you know by now, I'm building a package :)

I am so close to getting it finished so I can upload it to my PPA, but there is still one slight problem: the shared library (.so file) doesn't want to go into the package.

Okay, here is what I have in my control file:

Source: jsoncpp
Priority: extra
Maintainer: ****** 
Build-Depends: debhelper (>= 7)
Standards-Version: 3.8.3
Section: libs
Homepage: http://jsoncpp.sf.net

Package: jsoncpp-dev
Section: libdevel
Architecture: any
Depends: jsoncpp0 (= ${binary:Version})
Description: JSON parsing library for C++
 jsoncpp is a C++ library that makes it easy to
 read / write JSON data.
 .
 This package contains the development tools necessary
 to create applications that use jsoncpp.

Package: jsoncpp0
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: JSON parsing library for C++
 jsoncpp is a C++ library that makes it easy to
 read / write JSON data.

Now, jsoncpp-dev builds fine and the development files show up in the package but the shared library does not show up in its package.

Here is what jsoncpp0.dirs looks like:

usr/lib

...and jsoncpp-dev.dirs:

usr/lib
usr/include

My updated Makefile is here.

Please let me know if you need further information.

2 Answers 2

2

You really want to be using the build system (scons) that jsoncpp uses, since it's probably well-tailored for the package. Firstly, the package names that you are using should be prefixed with lib, such as libjsoncpp0 (assuming that the resulting file is /usr/lib/libjsoncpp.so.0) To install the files, you need to have these files listed in the .install files, eg debian/libjsoncpp0.install would have /usr/lib/lib*.so.* to install the right file. libjsoncpp-dev would have the files in /usr/include/* and /usr/lib/lib*.so

The library packaging guide at http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html can be complex, but it has some important information about the right way to package libraries so that they integrate well in Debian & Ubuntu.

Also, there are often people available on #ubuntu-motu or #ubuntu-packaging on irc.ubuntu.com to help with questions you may have.

3
  • Ah thank you for the IRC link and pointing me to the packaging guide for libraries. It's actually unfortunate, 'cuz I just uploaded it :( Anyway, I need to fix a few things anyway, so I'll work on that. Aug 4, 2010 at 6:12
  • Also, how would I go about getting the package to build with scons? I had a hard enough time building it myself - hence the conversion to a Makefile. Aug 4, 2010 at 6:16
  • Don't forget the #debian-mentors IRC channel. It's primarily for helping packaging beginners. Aug 4, 2010 at 14:19
0

This was the result of a rather bad mistake on my part. Somehow jsoncpp0.install got renamed to jsoncpp0install (without the period).

Anyway, it works now.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .