במסגרת בניית GNOME 3.8 (על ארץ') אני מקבל מספר שגיאות מוזרות.
למשל, לאחר עדכון gnome-contacts (תכנת אנשי קשר של GNOME) מה-git (כלומר - גרסה 3.7.92), הפעלת האחרון מציגה השגיאה הבאה:
קוד: |
gnome-contacts: error while loading shared libraries: libgnome-desktop-3.so.4: cannot open shared object file: No such file or directory |
בדיקה קצרה מראה שבחבילה gnome-desktop מהמאגרים הרשמיים הקובץ דווקא נמצא:
קוד: |
$ pkgfile -lq gnome-desktop | grep libgnome-desktop-3.so.4
/usr/lib/libgnome-desktop-3.so.4
/usr/lib/libgnome-desktop-3.so.4.0.0 |
אך בחבילה המקומית שלי (gnome-desktop-git, למעשה גרסה 3.7.92) הקובץ אינו נמצא:
קוד: |
$ pacman -Ql gnome-desktop-git | grep libgnome-desktop-3
gnome-desktop-git /usr/lib/libgnome-desktop-3.so
gnome-desktop-git /usr/lib/libgnome-desktop-3.so.7
gnome-desktop-git /usr/lib/libgnome-desktop-3.so.7.0.0
gnome-desktop-git /usr/share/libgnome-desktop-3.0/
gnome-desktop-git /usr/share/libgnome-desktop-3.0/pnp.ids |
כרגע, כפתרון זמני, אני מוסיף לפונקציית ההתקנה ב-PKGBUILD של gnome-desktop-git את השורה הבאה:
קוד: |
ln -s "$pkgdir/usr/lib/libgnome-desktop-3.so.7.0.0" "$pkgdir/usr/lib/libgnome-desktop-3.so.4" |
מה שמוזר בעניין הוא שבניתי את gnome-contacts אחרי שבניתי gnome-desktop מה-git.
הפתרון שמצאתי נראה לי לא טוב, ואפילו מאולץ.
גם העובדה שבעיה דומה יש לי עם cogl ועם ספרייות משותפות נוספות, לא מוסיפה לפתרון.
קיים פתרון אחר ?
או - איך אוכל לגרום, במקרה הזה, ל-gnome-contacts למצוא את השם הנכון של הספרייה המשותפת ?
שינוי קבצי הבנייה של gnome-contacts נראה לי סביר יותר מקישור לספרייה המשותפת של gnome-desktop.