Hi,
I was trying to compile GRASS with libLAS but ./configure says no.
I used:
–with-liblas-config=/usr/bin/liblas-config
and I have all liblas packages from standard Ubuntu 14.04 repository (libLAS version is 1.7.0 which is the current stable release).
Since configure went OK but the result for libLAS was “no”, I tried to compile and run the ./configure’s testing code myself.
Code:
#include <liblas/capi/liblas.h>
int main() {
LASReader_Create(“foo”);
; return 0; }
Compilation:
gcc liblastest.c -o liblastest -ggdb -L/usr/lib -llas -llas_c -L/usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.54.0 /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.54.0 /usr/lib/libgdal.so /usr/lib/libgeotiff.so /usr/lib/x86_64-linux-gnu/libtiff.so $(liblas-config --includes)
Debugging test:
gdb liblastest
Starting program: /home/vasek/dev/grass/test/liblastest
[Thread debugging using libthread_db enabled]
Using host libthread_db library “/lib/x86_64-linux-gnu/libthread_db.so.1”.
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7285471 in std::istream::seekg(std::fpos<__mbstate_t>) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
(gdb) bt
#0 0x00007ffff7285471 in std::istream::seekg(std::fpos<__mbstate_t>) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#1 0x00007ffff759597b in liblas::detail::reader::Header::ReadHeader() () from /usr/lib/liblas.so.2
#2 0x00007ffff754713b in liblas::ReaderFactory::CreateWithStream(std::istream&) () from /usr/lib/liblas.so.2
#3 0x00007ffff7bb1a80 in LASReader_Create () from /usr/lib/liblas_c.so.2
#4 0x00000000004006ab in main () at liblastest.c:4
So the test failed with segmentation fault but it would actually fail during compilation if I would use liblas-config --libs
because the boost libraries are libboost_program_options.so.1.54.0
on my computer while liblas-config --libs
says just libboost_program_options.so
(same for thread library).
It seems that the thing with boost libraries is a packaging issue but I’m not sure about the other ones. I can repeat it outside GRASS I don’t know if this is actually what GRASS is doing and if it makes sense.
Was somebody successful with libLAS on Ubuntu 14.04 and what is the general procedure for Linux anyway?
Thanks,
Vaclav