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

Re: ITP: opencpn -- A concise ChartPlotter/Navigator



Hi,

some time has passed so I thought I'd take another stab at this one:
  http://svn.debian.org/viewsvn/pkg-grass/packages/opencpn/trunk/debian/

It's in pretty good shape now, one lintian error remains, and one
big todo.

The program has enjoyed phenomenal growth in popularity for a niche
product, ~400 downloads per day:
http://sourceforge.net/project/stats/detail.php?group_id=180842&ugn=opencpn&type=prdownload&mode=alltime&file_id=0

That success is well deserved! It's a fine program.

packaging efforts documented here:
  http://www.cruisersforum.com/forums/f134/opencpn-build-on-debian-35977-8.html#post667237




lintian
=======
 E: opencpn: embedded-library ./usr/share/opencpn/plugins/libgrib_pi.so: bzip2

I've prepared the following patch:
"""
+++ opencpn/plugins/grib_pi/CMakeLists.txt      2011-04-15 15:18:35.165862744 +1200
@@ -79,18 +79,18 @@
             src/GribRecord.cpp  
             src/zuFile.cpp 
             src/IsoLine.cpp 
-            src/bzip2/bzlib.c 
-            src/bzip2/blocksort.c 
-            src/bzip2/compress.c 
-            src/bzip2/crctable.c 
-            src/bzip2/decompress.c 
-            src/bzip2/huffman.c 
-            src/bzip2/randtable.c
+#            src/bzip2/bzlib.c 
+#            src/bzip2/blocksort.c 
+#            src/bzip2/compress.c 
+#            src/bzip2/crctable.c 
+#            src/bzip2/decompress.c 
+#            src/bzip2/huffman.c 
+#            src/bzip2/randtable.c
        )
 ADD_LIBRARY(${PACKAGE_NAME} SHARED ${SRC_GRIB})
 
-INCLUDE_DIRECTORIES(${PLUGIN_SOURCE_DIR}/src/zlib-1.2.3)
-INCLUDE_DIRECTORIES(${PLUGIN_SOURCE_DIR}/src/bzip2)
+#INCLUDE_DIRECTORIES(${PLUGIN_SOURCE_DIR}/src/zlib-1.2.3)
+#INCLUDE_DIRECTORIES(${PLUGIN_SOURCE_DIR}/src/bzip2)
 
 IF(WIN32)
   SET(OPENCPN_IMPORT_LIB "../../${CMAKE_CFG_INTDIR}/${PARENT}")
"""

and it builds, but at run-time the plugin fails with this error message in ~/opencpn.log:
"""
15:25:21: PlugInManager searching for PlugIns in location /usr/lib/opencpn-plugins
15:25:21: PlugInManager: Loading PlugIn: /usr/lib/opencpn-plugins/libgrib_pi.so
15:25:21: Error: /usr/lib/opencpn-plugins/libgrib_pi.so: undefined symbol: BZ2_bzReadClose
15:25:21:    PlugInManager: Cannot load library: /usr/lib/opencpn-plugins/libgrib_pi.so
"""

the Build-depends in debian/control does contain libbz2-dev (which supplies libbz2.a) but I'm missing how to link against that in the
above CMakeLists.txt file. (I'm no cmake expert)

any ideas?


todo
====
I think a necessary hurdle to overcome is to donate some code to allow OpenCPN to read from the GMT flavour of the GSHHS world coastline data, so that they (and ZyGrib, and other packages which use that coastline data) can all share the common data packages.

The .deb is 16mb right now, which I don't think is a blocker for upload.
It would be nice to get the half-dozen or so packages which are all
shipping the variants of the same world-coastline to use the same gmt-
coastline data packages though. (see earlier emails in this ML's archive
for details)


thanks,
Hamish


Reply to: