AppImage needs testing

@sguyader can you rule out swapping to disk being the cause? I suppose the AppImage will have a considerable RAM overhead…

@Morgan_Hardwood I think swapping can be ruled out. I have 8GB of RAM and at most when I ran this test, about 1/3 of the RAM was used. If you play the video, you can monitor the RAM usage at the right of the RT window on the conky graph.

The video wouldn’t play for me, “error with playback”. I’ll try downloading it after work.

I uploaded the video to my google drive, is there a better place for sharing videos on the forum?

I just tested it, I don’t have an execution:
jpg@jpg-HP-ProBook-4535s ~/Téléchargements $ ./RawTherapee-git-dev-20171121_2110-f8d414b23ba27b98ecd7a68989b1d0b292a2389b.glibc2.14.glibc2.14-x86_64.AppImage
bash: ./RawTherapee-git-dev-20171121_2110-f8d414b23ba27b98ecd7a68989b1d0b292a2389b.glibc2.14.glibc2.14-x86_64.AppImage: Permission non accordée

You fist need to set the executable flag for the .AppImage:

chmod u+x ./RawTherapee-git-dev-20171121_2110-f8d414b23ba27b98ecd7a68989b1d0b292a2389b.glibc2.14.glibc2.14-x86_64.AppImage

Yeah, of course, or was I thinking. MDR

I also have the same error as agriggio Alberto I still don’t understand how to put the result of the execution in a "code"window.

@jpg Jean-Paul, pour créer une zone de code, tu dois d’abord créer une ligne avec seulement 3 apostrophes inversées de la touche 7 du clavier (Alt-gr + 7), puis tu vas à la ligne suivante, tu colles le code, puis à nouveau sur une nouvelle ligne pour fermer la zone de code tu mets les 3 apostrophes inversées.
Ca doit ressembler à ça:

```
bla
bla
bla
```

1 Like
jpg@jpg-HP-ProBook-4535s ~/Téléchargements $ ./RawTherapee-git-dev-20171121_2110-f8d414b23ba27b98ecd7a68989b1d0b292a2389b.glibc2.14.glibc2.14-x86_64.AppImage
zenity, kdialog, Xdialog missing. Skipping /tmp/.mount_69lFyt/usr/bin//rawtherapee.wrapper.
System stdc++ library: "/usr/lib/x86_64-linux-gnu/libstdc++.so.6"
System stdc++ library version: "3.4.21"
Bundled stdc++ library version: "3.4.24"
Newest stdc++ library version: "3.4.24"
Using bundled stdc++ library
	linux-vdso.so.1 =>  (0x00007ffc3aff6000)
	libcanberra-gtk3.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/libcanberra-gtk3.so.0 (0x00007f8d17145000)
	libcanberra.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/libcanberra.so.0 (0x00007f8d16f35000)
	libgtk-3.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/libgtk-3.so.0 (0x00007f8d1662a000)
	libgdk-3.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/libgdk-3.so.0 (0x00007f8d16368000)
	libgobject-2.0.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/libgobject-2.0.so.0 (0x00007f8d16114000)
	libglib-2.0.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/libglib-2.0.so.0 (0x00007f8d15e00000)
	libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f8d15baa000)
	libfftw3f.so.3 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libfftw3f.so.3 (0x00007f8d157a5000)
	libgiomm-2.4.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/libgiomm-2.4.so.1 (0x00007f8d153f8000)
	libglibmm-2.4.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/libglibmm-2.4.so.1 (0x00007f8d1517b000)
	libsigc-2.0.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/libsigc-2.0.so.0 (0x00007f8d14f75000)
	libgtkmm-3.0.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/libgtkmm-3.0.so.1 (0x00007f8d14803000)
	libatkmm-1.6.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/libatkmm-1.6.so.1 (0x00007f8d145b5000)
	libgdkmm-3.0.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/libgdkmm-3.0.so.1 (0x00007f8d14363000)
	libpangomm-1.4.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/libpangomm-1.4.so.1 (0x00007f8d14136000)
	libcairomm-1.0.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/libcairomm-1.0.so.1 (0x00007f8d13f0e000)
	libiptcdata.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/libiptcdata.so.0 (0x00007f8d13d02000)
	libjpeg.so.9 => /tmp/.mount_69lFyt/usr/bin/../lib/libjpeg.so.9 (0x00007f8d13ac8000)
	liblcms2.so.2 => /tmp/.mount_69lFyt/usr/bin/../lib/liblcms2.so.2 (0x00007f8d1386e000)
	libpng12.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libpng12.so.0 (0x00007f8d13648000)
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f8d1342e000)
	libtiff.so.5 => /tmp/.mount_69lFyt/usr/bin/../lib/libtiff.so.5 (0x00007f8d131c5000)
	liblensfun.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/liblensfun.so.1 (0x00007f8d12fa6000)
	libstdc++.so.6 => /tmp/.mount_69lFyt/usr/bin/../optional/libstdc++/libstdc++.so.6 (0x00007f8d12c93000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f8d12989000)
	libgomp.so.1 => /tmp/.mount_69lFyt/usr/bin/../optional/libstdc++/libgomp.so.1 (0x00007f8d1275a000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f8d12544000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f8d12326000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f8d11f5c000)
	libatk-1.0.so.0 => ././/lib/libatk-1.0.so.0 (0x00007f8d11d36000)
	libgio-2.0.so.0 => ././/lib/libgio-2.0.so.0 (0x00007f8d1198e000)
	libgthread-2.0.so.0 => ././/lib/libgthread-2.0.so.0 (0x00007f8d1178d000)
	libpangocairo-1.0.so.0 => ././/lib/libpangocairo-1.0.so.0 (0x00007f8d1157f000)
	libgdk_pixbuf-2.0.so.0 => ././/lib/libgdk_pixbuf-2.0.so.0 (0x00007f8d1135c000)
	libcairo-gobject.so.2 => ././/lib/libcairo-gobject.so.2 (0x00007f8d11154000)
	libpango-1.0.so.0 => ././/lib/libpango-1.0.so.0 (0x00007f8d10f06000)
	libcairo.so.2 => ././/lib/libcairo.so.2 (0x00007f8d10bd7000)
	libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f8d1089d000)
	libvorbisfile.so.3 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libvorbisfile.so.3 (0x00007f8d10694000)
	libvorbis.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libvorbis.so.0 (0x00007f8d10467000)
	libogg.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libogg.so.0 (0x00007f8d1025e000)
	libltdl.so.7 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libltdl.so.7 (0x00007f8d10053000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f8d0fe4f000)
	libgmodule-2.0.so.0 => ././/lib/libgmodule-2.0.so.0 (0x00007f8d0fc4b000)
	libXi.so.6 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXi.so.6 (0x00007f8d0fa3b000)
	libXdamage.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f8d0f838000)
	libXfixes.so.3 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f8d0f631000)
	libatk-bridge-2.0.so.0 => ././/lib/libatk-bridge-2.0.so.0 (0x00007f8d0f403000)
	libepoxy.so.0 => ././/lib/libepoxy.so.0 (0x00007f8d0f10e000)
	libpangoft2-1.0.so.0 => ././/lib/libpangoft2-1.0.so.0 (0x00007f8d0eef8000)
	libfontconfig.so.1 => ././/lib/libfontconfig.so.1 (0x00007f8d0ecb5000)
	libfreetype.so.6 => ././/lib/libfreetype.so.6 (0x00007f8d0ea13000)
	libXext.so.6 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXext.so.6 (0x00007f8d0e801000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f8d0e5f9000)
	libffi.so.6 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libffi.so.6 (0x00007f8d0e3f0000)
	libpcre.so.3 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f8d0e1b2000)
	libXrender.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f8d0dfa7000)
	liblzma.so.5 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f8d0dd85000)
	libjbig.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libjbig.so.0 (0x00007f8d0db76000)
	/lib64/ld-linux-x86-64.so.2 (0x000055c57098f000)
	libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f8d0d95b000)
	libpixman-1.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007f8d0d6b2000)
	libEGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so.1 (0x00007f8d0d479000)
	libxcb-shm.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007f8d0d276000)
	libxcb-render.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007f8d0d06c000)
	libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f8d0ce4a000)
	libGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 (0x00007f8d0cbd8000)
	libatspi.so.0 => ././/lib/libatspi.so.0 (0x00007f8d0c9a7000)
	libdbus-1.so.3 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f8d0c761000)
	libharfbuzz.so.0 => ././/lib/libharfbuzz.so.0 (0x00007f8d0c4c7000)
	libX11-xcb.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f8d0c2c5000)
	libxcb-dri2.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007f8d0c0bf000)
	libxcb-dri3.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007f8d0bebc000)
	libxcb-present.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007f8d0bcb9000)
	libxcb-xfixes.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxcb-xfixes.so.0 (0x00007f8d0bab1000)
	libxcb-sync.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007f8d0b8ab000)
	libxshmfence.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007f8d0b6a9000)
	libwayland-client.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007f8d0b49b000)
	libwayland-server.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libwayland-server.so.0 (0x00007f8d0b28a000)
	libgbm.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libgbm.so.1 (0x00007f8d0b082000)
	libmirclient.so.9 => /usr/lib/x86_64-linux-gnu/libmirclient.so.9 (0x00007f8d0adda000)
	libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007f8d0abc9000)
	libXau.so.6 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXau.so.6 (0x00007f8d0a9c4000)
	libXdmcp.so.6 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f8d0a7be000)
	libglapi.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libglapi.so.0 (0x00007f8d0a597000)
	libxcb-glx.so.0 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007f8d0a37f000)
	libXxf86vm.so.1 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007f8d0a179000)
	libXtst.so.6 => /tmp/.mount_69lFyt/usr/bin/../lib/x86_64-linux-gnu/libXtst.so.6 (0x00007f8d09f72000)
	libxkbcommon.so.0 => /usr/lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007f8d09d33000)
	libmircommon.so.7 => /usr/lib/x86_64-linux-gnu/libmircommon.so.7 (0x00007f8d09aeb000)
	libmirprotobuf.so.3 => /usr/lib/x86_64-linux-gnu/libmirprotobuf.so.3 (0x00007f8d09879000)
	libcapnp-0.5.3.so => /usr/lib/x86_64-linux-gnu/libcapnp-0.5.3.so (0x00007f8d095f1000)
	libmircore.so.1 => /usr/lib/x86_64-linux-gnu/libmircore.so.1 (0x00007f8d093e7000)
	libboost_system.so.1.58.0 => /usr/lib/x86_64-linux-gnu/libboost_system.so.1.58.0 (0x00007f8d091e3000)
	libprotobuf-lite.so.9 => /usr/lib/x86_64-linux-gnu/libprotobuf-lite.so.9 (0x00007f8d08fb2000)
	libboost_filesystem.so.1.58.0 => /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.58.0 (0x00007f8d08d99000)
	libkj-0.5.3.so => /usr/lib/x86_64-linux-gnu/libkj-0.5.3.so (0x00007f8d08b70000)
./bin/rawtherapee.real: relocation error: /usr/lib/x86_64-linux-gnu/libboost_system.so.1.58.0: symbol _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED1Ev, version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference
jpg@jpg-HP-ProBook-4535s ~/Téléchargements $ 

Okay, yet it was simple, thank you.

Merci pour ton aide en français Sebastien. Je passe par un traducteur pour poster ici.

1 Like

While looking for the undefined symbol error message, I came across a post which suggests to add -D_GLIBCXX_USE_CXX11_ABI=0 flag in the cmake command. Maybe worth trying?

Edit: add this flag for compiling with a recent GCC (>=5.1)?

I have configured the custom GCC using --with-default-libstdcxx-abi=gcc4-compatible so that by default _GLIBCXX_USE_CXX11_ABI is set to “0” unless specifically modified. Moreover, now RT is configured with -DUSE_OLD_CXX_ABI="ON" (it was set to “OFF” by mistake in my previous attempts).

I have produced yet another version of the AppImage, with an improved detection of the libstdc++ version available on the system, and with -DUSE_OLD_CXX_ABI="ON" passed to the RT configure step. The latest package is here. I tested it under Ubuntu 14.04, 16.04 and 17.04 and I do not observe anymore the relocation errors… hopefully it will work for you as well!

@agriggio @jpg could you please check once more?

Thanks!!!

1 Like

Yes, it’s working :

Hi @Carmelo_DrRaw, I have both good news and not-so-good ones…
The good: it works! :fireworks::sparkler:
The not-so-good: the GUI is significantly slower than my self-compiled version. I don’t know if this is a GTK+ thing (I’m still using 3.18 here) or it depends on the compilation flags you used, but the difference is visible. It was very noticeable the first time I launched the appimage, at that point I thought this was completely unusable. However, from the 2nd start, it became much less apparent fortunately (though still not as fast as my “native” builds).

BTW, thanks again for all your efforts! :+1:

I wonder if this is a question of GTK using or not using Direct Rendering… does anyone have an idea of how to check this?

@jpg thanks for checking! Is the RT appimage slow in your case as well?

Yes, very slow also and much slower than version 5.3 installed on Linux Mint 18.2.

First thing to clarify: is just the UI which is slower, or the processing as well? Could you try saving the same processing with the two versions? That’s also something’s ng that @agriggio could test…

I didn’t measure exactly, but it seems to be only a GUI problem. Processing times seemed the same as usual…