Bug report #20837

Qgis 3.4.2 install and crash on Ubuntu 18.04

Added by david kaplan over 5 years ago. Updated over 5 years ago.

Status:Closed
Priority:Normal
Assignee:-
Category:Build/Install
Affected QGIS version:3.4.2 Regression?:No
Operating System:Ubuntu Linux 18.04 Easy fix?:No
Pull Request or Patch supplied:No Resolution:invalid
Crashes QGIS or corrupts data:Yes Copied to github as #:28656

Description

I recently tried to install QGIS 3.4.2 with the ubuntugis-unstable bindings (from the apt repository) on Ubuntu 18.04 and had problems both with the install and finally running qgis. When installing, the install failed due to missing the dependency on gdal-abi-2-2-3 even though libgdal20, which provides gdal-abi-2-3-0, is installed. I "fixed" this problem following some suggestions online by using equivs-build to generate a package that provides gdal-abi-2-2-3 and depends on libgdal20, installing this package and then installing QGIS 3.4.2 from the apt repository.

However, after installing QGIS 3.4.2, it crashes every time I try to start it with the following message:

$ qgis
QGIS died on signal 11Could not attach to process. If your uid matches the uid of the target
process, check the setting of /proc/sys/kernel/yama/ptrace_scope, or try
again as the root user. For more details, see /etc/sysctl.d/10-ptrace.conf
ptrace: Operation not permitted.
No thread selected
No stack.
gdb returned 0
Aborted (core dumped)

I tried starting qgis as root and it dies with the same signal 11, but with a better backtrace:

$ sudo qgis
Warning: QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QGIS died on signal 11[New LWP 7101]
[New LWP 7102]
[New LWP 7103]
[New LWP 7109]
[New LWP 7110]
[New LWP 7112]
[New LWP 7125]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f4bfdff96c2 in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
[Current thread is 1 (Thread 0x7f4c01ee1980 (LWP 7098))]
#0 0x00007f4bfdff96c2 in waitpid () at /lib/x86_64-linux-gnu/libc.so.6
#1 0x000055ebf3b2f54e in ()
#2 0x00007f4bfdf53f20 in <signal handler called> () at /lib/x86_64-linux-gnu/libc.so.6
#3 0x00007f4bfe09a5ab in () at /lib/x86_64-linux-gnu/libc.so.6
#4 0x00007f4bf2200d77 in pj_param_exists () at /usr/lib/x86_64-linux-gnu/libproj.so.13
#5 0x00007f4bf22149b4 in proj_create () at /usr/lib/x86_64-linux-gnu/libproj.so.13
#6 0x00007f4bfcb18a67 in () at /usr/lib/libgdal.so.20
#7 0x00007f4bfcb08520 in OGRSpatialReference::importFromProj4(char const*) () at /usr/lib/libgdal.so.20
#8 0x00007f4c00695cb4 in QgsCoordinateReferenceSystem::setProj4String(QString const&) () at /usr/lib/libqgis_core.so.3.4.2
#9 0x00007f4c00698d55 in QgsCoordinateReferenceSystem::createFromProj4(QString const&) () at /usr/lib/libqgis_core.so.3.4.2
#10 0x00007f4c00699a8c in QgsCoordinateReferenceSystem::fromProj4(QString const&) () at /usr/lib/libqgis_core.so.3.4.2
#11 0x00007f4c006e69b0 in QgsEllipsoidUtils::ellipsoidParameters(QString const&) () at /usr/lib/libqgis_core.so.3.4.2
#12 0x00007f4c007ab7eb in QgsMapSettings::setEllipsoid(QString const&) () at /usr/lib/libqgis_core.so.3.4.2
#13 0x00007f4bfc1d183a in () at /usr/lib/libqgis_gui.so.3.4.2
#14 0x00007f4bfeb606cf in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007f4c00c7ffd5 in QgsProject::ellipsoidChanged(QString const&) () at /usr/lib/libqgis_core.so.3.4.2
#16 0x00007f4c008334ab in QgsProject::setEllipsoid(QString const&) () at /usr/lib/libqgis_core.so.3.4.2
#17 0x00007f4c0133aa42 in QgisApp::fileNew(bool, bool) () at /usr/lib/libqgis_app.so.3.4.2
#18 0x00007f4c0134f5e2 in QgisApp::QgisApp(QSplashScreen*, bool, bool, QString const&, QString const&, QWidget*, QFlags<Qt::WindowType>) () at /usr/lib/libqgis_app.so.3.4.2
#19 0x000055ebf3b2b3f5 in ()
#20 0x00007f4bfdf36b97 in __libc_start_main () at /lib/x86_64-linux-gnu/libc.so.6
#21 0x000055ebf3b2ef5a in _start ()
gdb returned 0
Aborted

Some more information on my system:

$ more etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.1 LTS"

$ uname -a
Linux piure 4.15.0-42-generic #45-Ubuntu SMP Thu Nov 15 19:32:57 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

$ apt show libgdal20
Package: libgdal20
Version: 2.3.2+dfsg-2~bionic0
Priority: optional
Section: libs
Source: gdal
Maintainer: Debian GIS Project <>
Installed-Size: 18.7 MB
Provides: gdal-abi-2-3-0

History

#1 Updated by Saber Razmjooei over 5 years ago

  • Status changed from Open to Feedback

Did you have it installed from qgis repo? I had issues in the past switching from one repo to another.
Another alternative is to use flatpak.

#2 Updated by Ben Hur Pintor over 5 years ago

Hi David,

I'm running QGIS 3.4.2 on Ubuntu 18.04. I use the repo for Ubuntu (https://qgis.org/ubuntu) and Debian (https://qgis.org/debian) instead of the ubuntugis-unstable one. I switched from using the ubuntugis-unstable repo since 3.0 because I encountered problems installing and updating QGIS using said repo.

Kindly try to install QGIS using the Ubuntu and/or Debian repos as shown here: https://qgis.org/en/site/forusers/alldownloads.html#debian-ubuntu and see if you still encounter problems. If you need to install QGIS with ubuntugis-unstable dependencies, you can try using the https://qgis.org/ubuntugis repo. You can also try flatpak as suggested by Saber.

Lastly, may I know if you have specific reasons for using the ubuntugis-unstable repo for installing QGIS (like using said repo for installing GRASS and other geospatial libraries)? I also used to utilize that repo for installing GRASS, etc.

Sincerely,
Ben Hur

#3 Updated by david kaplan over 5 years ago

Merde! I have figured out the problem that was causing QGIS to crash. I had both the normal qgis repository and the qgis repository with ubuntugis-unstable bindings in my repository list and somehow the normal qgis repository was activated, when I really wanted the ubuntugis-unstable bindings repository activated. Fixing this and updating fixed my problem with qgis crashing. It is strange (and perhaps a bug?) that apt allowed me to install the version of qgis from the normal repository even though I had incompatible packages installed from ubuntugis-unstable, but mixing the two is an error on my part.

However, AFAIK, installing qgis still requires making the fake package gdal-abi-2-2-3 that depends on libgdal20 because the current version of libgdal20 in ubuntugis-unstable provides gdal-abi-2-3-0 and not gdal-abi-2-2-3 as QGIS demands. This should probably be fixed.

Thanks for the help and sorry for the confusion!

#4 Updated by Saber Razmjooei over 5 years ago

  • Status changed from Feedback to Closed

#5 Updated by Jürgen Fischer over 5 years ago

david kaplan wrote:

However, AFAIK, installing qgis still requires making the fake package gdal-abi-2-2-3 that depends on libgdal20 because the current version of libgdal20 in ubuntugis-unstable provides gdal-abi-2-3-0 and not gdal-abi-2-2-3 as QGIS demands. This should probably be fixed.

Either use the qgis.org/debian (or ubuntu - which is a link) and nothing from ubuntugis OR the qgis.org/ubuntugis repository and ubuntugis-unstable OR nothing from qgis.org and ubuntugis only. Each configuration should work without any fake packages - if you need this you're probably trying to use qgis.org/debian with GDAL from ubuntugis, which is wrong.

#6 Updated by Giovanni Manghi over 5 years ago

  • Resolution set to invalid

#7 Updated by david kaplan over 5 years ago

Now I am using the combination qgis.org/ubuntugis repository and ubuntugis-unstable and I still see qgis demanding gdal-abi-2-2-3 and libgdal20 providing gdal-abi-2-3-0. As far as I can tell, these two are not compatible. Am I missing something?

#8 Updated by Jürgen Fischer over 5 years ago

david kaplan wrote:

Now I am using the combination qgis.org/ubuntugis repository and ubuntugis-unstable and I still see qgis demanding gdal-abi-2-2-3 and libgdal20 providing gdal-abi-2-3-0. As far as I can tell, these two are not compatible. Am I missing something?

No, I was. Ubuntu meanwhile updated ffmpeg, which makes ubuntugis' openscenegraph (for osgearth used for the globeplugin) and saga (used for processing) uninstallable. This is automatically resolved by using the ubuntu versions - which in turn introduce dependencies to ubuntu's GDAL 2.2. So QGIS is indeed currently built with GDAL 2.2 for bionic.

#9 Updated by david kaplan over 5 years ago

OK, thanks for clarifying. Given the trick I used to force qgis to install, is my installation healthy or will I have problems? I have verified that qgis starts and opens a couple of layers, but perhaps I never used functionality that relies on gdal or saga, etc.

#10 Updated by Jürgen Fischer over 5 years ago

david kaplan wrote:

OK, thanks for clarifying. Given the trick I used to force qgis to install, is my installation healthy or will I have problems? I have verified that qgis starts and opens a couple of layers, but perhaps I never used functionality that relies on gdal or saga, etc.

Depends on the layers - GDAL is used for all raster and most file based vector files - so you probably already did use GDAL. saga is only used if you trigger SAGA algorithms in processing.

#11 Updated by Andre Joost over 5 years ago

Jürgen Fischer wrote:

david kaplan wrote:

Now I am using the combination qgis.org/ubuntugis repository and ubuntugis-unstable and I still see qgis demanding gdal-abi-2-2-3 and libgdal20 providing gdal-abi-2-3-0. As far as I can tell, these two are not compatible. Am I missing something?

No, I was. Ubuntu meanwhile updated ffmpeg, which makes ubuntugis' openscenegraph (for osgearth used for the globeplugin) and saga (used for processing) uninstallable. This is automatically resolved by using the ubuntu versions - which in turn introduce dependencies to ubuntu's GDAL 2.2. So QGIS is indeed currently built with GDAL 2.2 for bionic.

But QGIS ubuntugis is currently broken.
The QGIS ubuntugis packages were published on Dec 7th, and later that day the ubuntugis ppa updated from GDAL 2.2.3 to GDAL 2.3.0. So the QGIS ubuntugis packages for bionic will not work until the next point release.

Strangely the ubuntugis people did not upgrade xenial and trusty, so those packages still work.

#12 Updated by david kaplan over 5 years ago

To be clear, I have installed the Qgis version (3.4.2) of the qgis package, not the ubuntugis-unstable version, which is still in the 2.x series. It is curious that ubuntugis-unstable has not built a more recent version of qgis.

#13 Updated by Jürgen Fischer over 5 years ago

david kaplan wrote:

To be clear, I have installed the Qgis version (3.4.2) of the qgis package, not the ubuntugis-unstable version, which is still in the 2.x series. It is curious that ubuntugis-unstable has not built a more recent version of qgis.

Not really. Our package used to be in ubuntugis - but we stopped putting them there when we started two lines of releases (latest & ltr), because ubuntugis (like debian and ubuntu) can only have one version of QGIS. The qgis build in ubuntugis with only ltr was restarted later by others.

Also available in: Atom PDF