On Thu, Jan 12, 2017 at 09:49:18PM -0800, Dirk Hohndel wrote: > On Tue, Jan 10, 2017 at 07:17:06PM +0100, probono wrote: > > 2017-01-08 19:30 GMT+01:00 Dirk Hohndel <[email protected]>: > > >> On Jan 8, 2017, at 09:38, Anton Lundin <[email protected]> wrote: > > >> Hi. > > >> > > >> I was about to test some stuff with the appimage-build and noted: > > >> > > >> strace -e chdir,open ./Subsurface-4.6-Beta-2-x86_64.AppImage > > >> testdata/ostc4.xml |& grep -E 'ostc|chdir' > > >> chdir("/tmp/.mount_xyn3Tx") = 0 > > >> chdir("usr") = 0 > > >> open("testdata/ostc4.xml", O_RDONLY) = -1 ENOENT (No such file or > > >> directory) > > >> > > >> > > >> The chdir'ing might make sense in some case, but in this case it really > > >> doesn't. > > > > > > I think it needs to chdir in order to find its libraries, but I haven't > > > looked > > > at this in enough detail. > > > > The chdir is required only in cases in which binaries are not > > relocatable at runtime (i.e., "/usr" is hardcoded at compile time, for > > example for loading resources). If this is not the case (e.g., in the > > case of Subsurface), then we should get away without chdir'ing. > > I've played around with this for a bit and it's actually quite a bit more > complicated than that. All the paths in AppRun.c are currently relative > paths - so this needs a bit of work that goes beyond "just don't do that > chdir".
OK, that took a LOT longer than I expected, but over lunch I finally think I made it work... Anton, can you try the latest AppImage from downloads/daily? That should now avoid the chdir and work with relative paths as well. /D _______________________________________________ subsurface mailing list [email protected] http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
