Can't create Routino database - missing tagging xml profile

Issue #401 closed
Dieter Vanderfaeillie created an issue

I installed QMapShack 1.12.0 following the instructions in the wiki on my Linux laptop.

Schermafdruk van 2018-10-24 19.45.36.png

When starting QMapShack a warning appears: The XML profile does not exist. Then trying to create a Routino Database the following error appears:

Error: The '--tagging' option specifies a file '/usr/share/routino/tagging.xml' that does not exist.

And indeed, the file does not exist. Even more the folder routino in /usr/share/ does not exist. So I guess something is wrong with my routino installation?

When running make the following output is generated (see attachment). Some warning is generated. This implies that make did not produce the tagging xml profile? I have libexpat1 and libexpat1-dev installed.

xmlparse.c: In function ‘ParseXML’:
xmlparse.c:960:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
     if(tag_stack)
       ^
xmlparse.c:965:4: note: here
    case LEX_FUNC_TAG_BEGIN:
    ^~~~
xmlparse.c: In function ‘ParseXML_SetError’:
xmlparse.c:1241:32: warning: ‘Error on line ’ directive output truncated writing 14 bytes into a region of size 1 [-Wformat-truncation=]
  line_length=snprintf(temp,1,"Error on line %" PRIu64 ": ",lineno);
                               ~^~~~~~~~~~~~~
In file included from /usr/include/stdio.h:862:0,
                 from xmlparse.c:25:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:64:10: note: ‘__builtin___snprintf_chk’ output between 18 and 37 bytes into a destination of size 1
   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        __bos (__s), __fmt, __va_arg_pack ());
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I don't think it should matter, but to get the install of QMapShack working I had to run:

sudo ln -s /usr/local/lib//libroutino.so.0 /usr/lib/
sudo ln -s /usr/local/lib//libroutino.so /usr/lib/

Comments (5)

  1. kiozen

    This is not a bug in QMS at all ;).

    Some distributions split Routino in two parts. One for the library and the other one for the tools (including the xml files). You need both for QMS.

    If QMS gets compiled cmake will check for Routino. If it is found in /usr/ it expects all files below /usr/. If it is found in /usr/local/ everything is expected in below /usr/local. If you mix installation paths of Routino you run into trouble

  2. Dieter Vanderfaeillie reporter

    I haven't installed Routino through the distribution packages, but compiled it from scratch as written in the wiki..

    Installation on Ubuntu 14.04

    # install required dev-packages
    sudo apt-get install gcc make libc6-dev libz-dev libbz2-dev libgraphics-magick-perl
    
    # download, build and install routino
    svn co http://routino.org/svn/trunk routino
    cd routino
    make
    sudo make install
    

    I guess I should file an issue at the Routino devs? Any other ideas?

  3. kiozen

    And QMS is installed from distribution package? Anyway, when compiling QMS the Routino stuff was found under /usr. That's why it expects the files in /usr/lib etc.

    Routino installs it's stuff in /usr/local as a default. But you can change that in one of the files. I can't recall which one. Simply read the README etc stuff.

    So it's no error with Routino. You are just mixing up stuff.

  4. Dieter Vanderfaeillie reporter

    Thanks for the info kiozen, all the files needed were to be found in /usr/local/share/routino.

  5. Log in to comment