[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[MoM] Packaging OpenSurgSim



Ok, so I have created the git repository for packaging OpenSurgSim:

  git://anonscm.debian.org/debian-med/opensurgsim.git

And put up an initial commit that includes some of the basic files in
the debian directory. Please let me know how this looks so far. I did
get pbuilder setup for sid, and got it to build and run the unit tests
successfully, but I get an error:

  dpkg-shlibdeps: error: couldn't find library libyaml-cpp.so.0.5 needed
  by debian/libopensurgsim/usr/lib/libMultiAxisDev
ice.so (ELF format: 'elf64-x86-64'; RPATH: '')

and some warnings:

  dpkg-shlibdeps: warning: can't extract name and version from library
  name 'libSurgSimDataStructures.so'
  dpkg-shlibdeps: warning: can't extract name and version from library
  name 'libSurgSimFramework.so'
  dpkg-shlibdeps: warning: can't extract name and version from library
  name 'libSurgSimInput.so'
  dpkg-shlibdeps: warning: can't extract name and version from library
  name 'libSurgSimDeviceFilters.so'

The error, I am pretty sure is a bug upstream, where the libyaml-cpp
isn't being "installed" by cmake, I will look into this. But the
warnings, I have some questions about. I see that libraries are usually
appended with the version number, is this something I need to do
upstream or in the packaging? Also, it says it can't extract the name of
the library, is this because OpenSurgSim is not in the name?

Some of the libraries being built do not include "SurgSim", ie
libMultiAxisDevice.so. Is it a good idea to have all the libraries
prepended with the same thing, ie libSurgSim?

On an unrelated note, OpenSurgSim is dependent on yaml-cpp,
unfortunately we have patched yaml-cpp, so we can't use the version in
Debian (I have been trying to get our changes upstream, but have been
unsuccessful so far). To handle this, we use CMake's ExternalProject_Add
to download our patched source and build it during the OpenSurgSim
build. This brings up a couple issues, I recall that the debian builds
should not assume there is a network connection, if this is the case,
any ideas how to handle this? Also, I assume this library should be
renamed to something that doesn't clash with yaml-cpp in the debian
repositories. How about libSurgSimyaml-cpp?

-Paul


Reply to: