On 11 July 2015 at 16:44, Rick Walsh <rickmwa...@gmail.com> wrote: > Hi Dirk, > > On 11 July 2015 at 15:05, Dirk Hohndel <d...@hohndel.org> wrote: > >> On Sat, Jul 11, 2015 at 02:59:17PM +1000, Rick Walsh wrote: >> > On 11 July 2015 at 12:48, Dirk Hohndel <d...@hohndel.org> wrote: >> > >> > > >> > > >> > > Nope. MarbleDirs.cpp >> > > >> > > And actually why don't you use this patch... >> > > >> > > diff --git a/src/lib/marble/MarbleDirs.cpp >> b/src/lib/marble/MarbleDirs.cpp >> > > index 014ab0582d0b..734107f6536e 100644 >> > > --- a/src/lib/marble/MarbleDirs.cpp >> > > +++ b/src/lib/marble/MarbleDirs.cpp >> > > @@ -68,6 +68,7 @@ QString MarbleDirs::path( const QString& >> relativePath ) >> > > } >> > > QString result = QDir( fullpath ).canonicalPath(); >> > > if (result.isEmpty()) { >> > > + qDebug() << fullpath << "result" << result; >> > > if (relativePath.contains("bitmaps") && relativePath != >> > > "bitmaps/empty.png") >> > > return path("bitmaps/empty.png"); >> > > #if defined(DEBUG) >> > > >> > >> > I've just tried that but I'm not sure it's doing much. >> > >> > (gdb) run >> > Starting program: /home/rick/build/subsurface/build/subsurface >> > [Thread debugging using libthread_db enabled] >> > Using host libthread_db library "/lib64/libthread_db.so.1". >> > Map theme file does not exist: "" >> > QInotifyFileSystemWatcherEngine::addPaths: inotify_add_watch failed: No >> > such file or directory >> > [New Thread 0x7fff81bf9700 (LWP 20213)] >> > [Thread 0x7fff81bf9700 (LWP 20213) exited] >> > >> >> Umm. Err. What? If the startup used to get you into the infinite recursion >> (that's what happens in the "return path("bimaps/empty.png");"...) >> >> Oh, never mind. I bet your libssrfmarble isn't compiled with debugging >> enabled, so the qDebug never gets printed for you. >> >> Can you replace the qDebug with >> >> fprintf(stderr, "fullpath %s results in %s\n", qPrintable(fullpath), >> qPrintable(result)); >> >> (completely untested, typos and thinkos included free of charge... but >> something along those lines should work...) >> > > Now I need a beer and/or coffee. > > So after I actually built Subsurface against the Marble libs modified with > the fprintf(stderr... line., this does do something. > > (gdb) run > Starting program: /home/rick/build/subsurface/build/subsurface > [Thread debugging using libthread_db enabled] > Using host libthread_db library "/lib64/libthread_db.so.1". > fullpath /bitmaps/empty.png results in > tried to open nonexistent file bitmaps/empty.png > fullpath /maps/earth/srtm2/srtm2.dgml results in > tried to open nonexistent file maps/earth/srtm2/srtm2.dgml > Map theme file does not exist: "" > fullpath > /home/rick/build/subsurface/build/marbledata/placemarks/cityplacemarks.kml > results in > tried to open nonexistent file placemarks/cityplacemarks.kml > fullpath > /home/rick/build/subsurface/build/marbledata/placemarks/cityplacemarks.cache > results in > tried to open nonexistent file placemarks/cityplacemarks.cache > > etc. > > It is looking for the files in the wrong place. marbledata is a symbolic > link to: > /home/rick/build/subsurface/marbledata, when it needs to point to > /home/rick/build/marble-source/data. > > I recreated the link to point where it should, and the error messages go > away. > > I think line 157 of CMakeLists.txt is guilty: if(NOT (insource OR insourcedir)) if(NOT NO_MARBLE) add_custom_target(link_marble_data ALL COMMAND rm -f marbledata && ln -s ${${PROJECT_NAME}_SOURCE_DIR}/marbledata ${${PROJECT_NAME}_BINARY_DIR}/marbledata) endif() endif()
I'm not sure how to fix this Rick
_______________________________________________ subsurface mailing list subsurface@subsurface-divelog.org http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface