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

progress on building gpsdrive for Sid



[a slightly modified repost from a couple weeks ago on the
gpsdrive ML; I'm still stuck so casting the net wider]


Hi,

I have been recently working on getting GpsDrive svn working on
Debian/sid.

the three main issues were all support libraries who changed their 
APIs in non-backwards compatible ways recently. grumble.

* gpsd > 2.96   : hopefully ok now
* Mapnik 2.0    : hopefully ok now (still some work to do on auto osm.xml)
* Boost >= 1.46 : mostly done but I get a linking error for -lboost-system

so it compiles ok now, just fails on the final linking.

(using debuild to try and make a debian package on an Ubuntu
12.04 VM. Build log for sid is nearly identical, just boost
version number changes)

[...]
  Linking CXX executable gpsdrive
/usr/bin/ld: CMakeFiles/gpsdrive.dir/mapnik.o: undefined reference to
symbol 'boost::system::system_category()'
/usr/bin/ld: note: 'boost::system::system_category()' is defined in DSO
/usr/lib/libboost_system.so.1.46.1 so try adding it to the linker command
line
/usr/lib/libboost_system.so.1.46.1: could not read symbols: Invalid
operation
collect2: ld returned 1 exit status
make[3]: *** [src/gpsdrive] Error 1

In src/CMakeLists.txt I added "system" to req'd components,
if (WITH_MAPNIK)
  find_package(Boost COMPONENTS filesystem system REQUIRED)
  find_package(Mapnik REQUIRED)
  add_definitions(-DMAPNIK)
endif (WITH_MAPNIK)


and I replaced old cmake/Modules/FindBoost.cmake with a modern
copy from /usr/share/cmake-2.8/Modules/FindBoost.cmake
but still the same thing.


Any ideas? I'm not boost or C++ expert.


thanks,
Hamish


Reply to: