Wireshark-users: Re: [Wireshark-users] Appimage build

From: Peter Wu <peter@xxxxxxxxxxxxx>
Date: Wed, 3 Jul 2019 23:52:46 +0200
Hi!

On Wed, Jul 03, 2019 at 02:01:07PM +0200, GDR! wrote:
> Hello,
> 
> I've been trying to build the AppImage version of Wireshark, this
> feature has been announced since 2.9.
> 
> Since it's not documented how to build AppImages of Wireshark, I
> thought I'd share my experience (hopefully, helping authors publish an
> official AppImage).

It might be worth posting the details here:
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=14464

> The sequence of commands is pasted below. Unfortunately, they don't
> result in a working AppImage:
> $ ./Wireshark-3.0.2-x86_64.AppImage 
> /tmp/.mount_Wiresh1q9wc6/usr/bin/wireshark: error while loading shared
> libraries: libQt5Multimedia.so.5: cannot open shared object file: No
> such file or directory
> 
> but it should be relatively easy to fix.

Maybe this could be solved with a relative RPATH at link time or an
LD_LIBRARY_PATH environment variable. Not sure what is common for
AppImage.

> sed -e 's/^# deb-src /deb-src /g' -i /etc/apt/sources.list
> apt update
> apt install git doxygen libappimage-dev fuse wget rsync cmake build-essential checkinstall libcurl4-openssl-dev file vim gnupg libsystemd-dev lemon
> apt build-dep wireshark
> wget https://1.na.dl.wireshark.org/src/wireshark-3.0.2.tar.xz
> tar axf wireshark-3.0.2.tar.xz 
> sed -e 's/APPIMAGETOOL_EXECUTALBE/APPIMAGETOOL_EXECUTABLE/g' -i wireshark-3.0.2/CMakeLists.txt

This typo has now been fixed in the current development version and will
also be part of the next 3.0.3 release.

In the future, feel free to submit patches to
https://code.wireshark.org/review/, see also
https://www.wireshark.org/docs/wsdg_html_chunked/ChSrcContribute.html

If you are interested in AppImage support, help is always appreciated :)

Kind regards,
Peter

> mkdir /build
> cd /build/
> 
> wget https://github.com/AppImage/AppImageKit/releases/download/12/appimagetool-x86_64.AppImage
> chmod +x appimagetool-x86_64.AppImage 
> cp appimagetool-x86_64.AppImage /usr/bin/appimagetool
> appimagetool
> wget https://github.com/probonopd/linuxdeployqt/releases/download/6/linuxdeployqt-6-x86_64.AppImage
> chmod +x linuxdeployqt-6-x86_64.AppImage 
> cp linuxdeployqt-6-x86_64.AppImage /usr/bin/linuxdeployqt
> cmake  -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib ../wireshark-3.0.2
> PATH=/build/run:$PATH 
> make appimage