Dunst: Mise à jour du démon de notification Dunst de 0.2.0-1 à 1.2.0.

Créé le 18 août 2017  ·  4Commentaires  ·  Source: dunst-project/dunst

Mise à jour du démon de notification Dunst de 0.2.0-1 à 1.2.0.

Dans Ubuntu 12.10 Quantal, j'ai une ancienne version de Dunst - 0.2.0-1.
Téléchargez la nouvelle version 1.2.0 depuis https://github.com/dunst-project/dunst/archive/v1.2.0.tar.gz
Extraire vers ~/src/dunst-1.2.0
Tapez la marque
voir Package "dbus-1" introuvable dans le chemin de recherche pkg-config
tapez sudo apt-get install libdbus-1-dev

Bien, mais ensuite, le package glib-2.0 n'a pas été trouvé dans le chemin de recherche de pkg-config
glib de recherche sudo apt-cache
sudo apt-get install libglib2.0-0 libglib2.0-dev
'glib-2.0 >= 2.36' demandé mais la version de GLib est 2.34.1
sudo apt-get install libpango1.0-0 libpango1.0-dev
Bon.

sudo apt-get install gir1.2-gdkpixbuf-2.0 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libgdk-pixbuf2.0-dev libgdkcutter-pixbuf0
sudo apt-get install libgtk2.0-dev libglib2.0-dev - GOOOOOOOD !
/usr/lib/i386-linux-gnu/pkgconfig/gdk-2.0.pc

Fabriquer
'glib-2.0 >= 2.36' demandé mais la version de GLib est 2.34.1
config.mk:50 : * "pkg-config a échoué, voir les erreurs ci-dessus". Arrêter.

cat /usr/lib/i386-linux-gnu/pkgconfig/glib-2.0.pc
Nom : GLib
Description : Bibliothèque d'utilitaires C
Version : 2.34.1

J'ouvre config.mk et change glib-2.0 >= 2.36 à 2.34 dans pkg_config_packs
Tapez marque et
cc -o src/x11/screen.o -c src/x11/screen.c -g --std=gnu99 -pedantic -Wall -Wno-overlength-strings -Os -D_DEFAULT_SOURCE -DVERSION=\""1.2.0 ( 2017-07-12)"\" -pthread -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -I/usr/include/glib-2.0 - I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/ include/freetype2 -I/usr/include/libpng12 -I/usr/include/gtk-2.0 -I/usr/lib/i386-linux-gnu/gtk-2.0/include -I/usr/include/gio-unix- 2.0/ -I/usr/include/gdk-pixbuf-2.0 -I.
src/x11/screen.c : Dans la fonction 'randr_update' :
src/x11/screen.c:102:9 : erreur : nom de type inconnu 'XRRMonitorInfo'
src/x11/screen.c:102:9 : avertissement : déclaration implicite de la fonction 'XRRGetMonitors' [-Wimplicit-function-declaration]
src/x11/screen.c:102:29 : avertissement : l'initialisation crée un pointeur à partir d'un entier sans transtypage [activé par défaut]
src/x11/screen.c:113:40 : erreur : demande de membre 'x' dans quelque chose qui n'est pas une structure ou une union
src/x11/screen.c:114:40 : erreur : demande de membre 'y' dans quelque chose qui n'est pas une structure ou une union
src/x11/screen.c:115:40 : erreur : demande de « largeur » de membre dans quelque chose qui n'est pas une structure ou une union
src/x11/screen.c:116:40 : erreur : demande de membre 'hauteur' dans quelque chose qui n'est pas une structure ou un syndicat
src/x11/screen.c:117:42 : erreur : demande de membre 'mheight' dans quelque chose qui n'est pas une structure ou un syndicat
src/x11/screen.c:120:9 : avertissement : déclaration implicite de la fonction 'XRRFreeMonitors' [-Wimplicit-function-declaration]
make : * [src/x11/screen.o] Erreur 1

J'ai téléchargé https://ftp.gnome.org/pub/gnome/sources/glib/2.36/glib-2.36.4.tar.xz
déballer et
grep -Ril "XRRMonitorInfo" ./
grep -Ril "XRRGetMonitors" ./
Rien. Hmmm, ces fonctions ne sont pas en glib 2.36 !

Je trouve https://cgit.freedesktop.org/xorg/lib/libXrandr/tree/src/XrrMonitor.c - il y a le code XRRMonitorInfo, XRRGetMonitors et XRRFreeMonitors.
Je tape sudo find / -iname XrrMonitor.c et rien.

J'ai besoin de mettre à jour libxrandr !
Quelle version de libxrandr ai-je ?

dpkg -L libxrandr-dev
Les sorties sont
/.
/usr
/usr/partager
/usr/share/doc
/usr/share/doc/libxrandr-dev
/usr/share/doc/libxrandr-dev/copyright
/usr/share/man
/usr/share/man/man3
/usr/share/man/man3/Xrandr.3.gz
/usr/lib
/usr/lib/i386-linux-gnu
/usr/lib/i386-linux-gnu/pkgconfig
/usr/lib/i386-linux-gnu/pkgconfig/xrandr.pc
/usr/lib/i386-linux-gnu/libXrandr.a
/usr/include
/usr/include/X11
/usr/include/X11/extensions
/usr/include/X11/extensions/Xrandr.h
/usr/share/doc/libxrandr-dev/changelog.Debian.gz
/usr/share/man/man3/XRRSelectInput.3.gz
/usr/share/man/man3/XRRGetScreenInfo.3.gz
/usr/share/man/man3/XRRRootToScreen.3.gz
/usr/share/man/man3/XRRFreeScreenConfigInfo.3.gz
/usr/share/man/man3/XRRConfigCurrentConfiguration.3.gz
/usr/share/man/man3/XRRQueryVersion.3.gz
/usr/share/man/man3/XRRConfigSizes.3.gz
/usr/share/man/man3/XRRConfigCurrentRate.3.gz
/usr/share/man/man3/XRRConfigTimes.3.gz
/usr/share/man/man3/XRRSetScreenConfigAndRate.3.gz
/usr/share/man/man3/XRRConfigRotations.3.gz
/usr/share/man/man3/XRRSetScreenConfig.3.gz
/usr/share/man/man3/XRRQueryExtension.3.gz
/usr/share/man/man3/XRRConfigRates.3.gz
/usr/lib/i386-linux-gnu/libXrandr.so

cat /usr/lib/i386-linux-gnu/pkgconfig/xrandr.pc
Nom : Xrandr
Description : Bibliothèque X RandR
Version : 1.4.0

https://launchpad.net/ubuntu/+source/libxrandr/+publishinghistory
La dernière mise à jour du package libxrandr pour Ubuntu 12.10 Quantal (version 2:1.4.0-1ubuntu0.1) est le 2015-04-24 11:19:49 UTC.

J'ai la version 1.4.0 de libxrandr.

J'ai téléchargé tous les fichiers *.c et *.h de https://cgit.freedesktop.org/xorg/lib/libXrandr/tree/src et les ai mis dans /home/vova/src/dunst-1.2.0/src
make - et erreur que "src/x11/XrrMonitor.c:157:5: erreur: nom de type inconnu 'xRRSetMonitorReq'"
Je fais quelque chose de mal, ce sera facilement un moyen de mettre à jour libxrandr.

Bien cordialement, Vladimir

Commentaire le plus utile

Votre système n'est tout simplement pas une plate-forme prise en charge. Il y a des exigences minimales pour dunst, et il ne fonctionnera pas sans eux.

Tous les 4 commentaires

Dans Ubuntu 12.10 Quantal, j'ai un ancien v....

Quantal est obsolète depuis mai 2014. Cela fait plus de 3 ans !

Question honnête : vous attendez-vous à ce qu'un mainteneur vous aide à rétroporter Dunst sur votre système, qui est obsolète ?


Edit : Désolé pour cette voix rauque. En tant qu'étranger à ce projet, je n'ai pas le droit de parler sur ce ton. Je ne veux pas non plus anticiper la réponse de Nikos. Mais dans votre cas, je préfère rechercher mes propres défauts que de demander à un responsable de prendre en charge mon système obsolète ou de m'aider à le rétroporter.

Je suis d'accord avec @bebehei, votre système est extrêmement obsolète, ce n'est même pas une version LTS pour l'utiliser aussi longtemps, je recommande fortement la mise à jour.

J'ai jeté un coup d'œil et il semble que XRRMonitorInfo été ajouté dans la version 1.5 de libxrandr.

Cela étant dit, il y a une raison pour ce bloc >= 2.36 dans glib et le supprimer aveuglément est une mauvaise idée. Je ne m'attendrais pas du tout à ce que Dunst fonctionne sur un système aussi ancien pour être honnête.

Ouais, les gars, mon système est EXTRÊMEMENT obsolète !!!
Mais, cette question sans Ubuntu, ne mettez à jour que Dunst.

Votre système n'est tout simplement pas une plate-forme prise en charge. Il y a des exigences minimales pour dunst, et il ne fonctionnera pas sans eux.

Cette page vous a été utile?
0 / 5 - 0 notes