The recent "libdir fix" to the jpilot ebuilds is causing the following problem: jpilot looks for it's plugins in /usr/lib/jpilot/plugins, and obviously isn't finding them (since they're in /usr/lib). I can't seem to find a way of specifying a plugin dir other than the default. To sum it up, jpilot works fine, except that the plugins are unavailable. This affects all jpilot ebuild currently in portage. Portage 2.0.54 (default-linux/x86/2005.1, gcc-3.4.5, glibc-2.3.5-r3, 2.6.15.4-suspend2-2.2 i686) ================================================================= System uname: 2.6.15.4-suspend2-2.2 i686 Pentium III (Coppermine) Gentoo Base System version 1.6.14 ccache version 2.3 [enabled] dev-lang/python: 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium3 -O3 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium3 -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks sandbox sfperms strict" GENTOO_MIRRORS="ftp://gentoo.mirrors.tds.net/gentoo ftp://mirror.isp.net.au/pub/gentoo/ http://mirror.isp.net.au/ftp/pub/gentoo/ ftp://fido.online.kz/gentoo/pub" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="x86 X alsa apm audiofile avi bash-completion berkdb bitmap-fonts bzip2 cdr crypt cscope cups curl dri eds emboss encode exif expat foomaticdb fortran gdbm gif glut gmp gpm gstreamer gtk gtk2 imagemagick imlib jpeg lcms libg++ libwww mad mikmod mmx mng motif mp3 mpeg ncurses ogg oggvorbis opengl pam pcre pdflib perl png python quicktime readline recode sdl slang spell sse ssl svg tcltk tcpd tiff truetype truetype-fonts type1-fonts udev usb vorbis xml2 xmms xv zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
No such version as 0.99 in portage.
Uh, I must be apparently blind.
Same thing here, with 0.99.8. It seemed to work fine in 0.99.7 before I upgraded. A temporary fix is to (as root) cd to /usr/lib/jpilot/plugins and ln -s /usr/lib/libkeyring.* ./ (for the keyring plugin, as an example - others are libsynctime and libepxense). Jpilot finds the plugins this way, but it'd obviously be better if the ebuild installed them in the correct place, but I currently have no idea of how to even start trying to patch it to do that, unfortunately.
OK, I can do the legwork. The following refers to app-pda/jpilot-0.99.8 In plugins.c this is the line that determines where the plugins are: 154 g_snprintf(path, sizeof(path), "%s/%s/%s/%s/", BASE_DIR, ABILIB, EPN, "plugins"); BASE_DIR is $prefix from configure. Usually /usr. ABILIB is determined in configure as well. Unless ABILIB is set in the build environment it is "lib". From plugins.c 153 /* ABILIB is for Irix, should normally be "lib" */ (Yay Irix.) From configure: 25154 abilib=$ABILIB 25155 if test "x$abilib" = "x"; then 25156 25157 cat >>confdefs.h <<_ACEOF 25158 #define ABILIB "lib" 25159 _ACEOF 25160 25161 else 25162 25163 cat >>confdefs.h <<_ACEOF 25164 #define ABILIB "$abilib" 25165 _ACEOF EPN is defined in utils.h. It is usually "jpilot". 50 #ifdef ENABLE_PROMETHEON 51 #define EPN "copilot" 52 #else 53 #define EPN "jpilot" 54 #endif Thus jpilot usually uses "/usr/lib/jpilot/plugins" for plugins. Now, on to the fix: set ABILIB and fix libdir. The simplest patch is attached. For the correct patch we must also examine INSTALL: 66 === Irix ==================================================================== 67 Irix uses different lib directories for shared libraries. 68 Plugins have to be installed in different directories for this reason. 69 Before compiling you can use: 70 for ELF 64-bit: "export ABILIB=lib64" 71 for ELF N32: "export ABILIB=lib32" 72 for ELF 32-bit: "export ABILIB=lib" 73 ============================================================================= A correct patch would change this section and line 153 of plugins.c to join Gentoo Linux with the ranks of Irix. (Nevermind that the RPM spec file distributed with jpilot has the same bug. Nobody running an RPM system cares about multilib, apparently.) Also, the Changelog would credit me with the fix. :)
Created attachment 84682 [details, diff] ABILIB and libdir fix
(In reply to comment #4) The patch you've got works for me. :) Many thanks.
jpilot also looks in ~/.jpilot/plugins for plugins, so if you need a quick workaround and do not want to modify your /usr filesystem by hand you can also symlink the plugins from that directory (possibly creating it first).
This might be too late to make any difference, but, why not fix the install to create the missing sym links? Or is this change required because of the "libdir fix"? (whatever that might be). Thanks, Judd
The built-in plugin, libsynctime does not work (I assume that this is the same problem) on 0.99.8. It was suggested that I symlink /usr/lib/libsynctime.so.0.0.0 to /usr/lib/jpilot/plugins. I did this and also symlinked into /usr/share/jpilot/plugins and also ~/.jpilot/plugins. The expected behaviour of 'setting time on the pilot' at the end of a Hotsync still does not occur.
(reply to comment 4) Patch works for me for 0.99.9 (see bug 148440 for an ebuild) Thanks!
*** Bug 159713 has been marked as a duplicate of this bug. ***
Reposting here from bug #159713. ========== Libdir for plugins is broken and I don't like the way it is fixed in 0.99.9 - all dirs should be set during econf, not install. Also ebuild during install creates 2 dirs in /usr/share/doc. ========== I don't use multilib, so, someone, pls, test it as-is and if not works with ABILIB prepended to econf.
Created attachment 105163 [details] jpilot-0.99.8-r2.ebuild Cleaned out all directory setting during make install and doc path epatch line added.
Created attachment 105164 [details, diff] files/jpilot-0.99.8-instpath.patch Patch for docs/Makefile.am and icons/Makefile.am
Created attachment 105170 [details, diff] files/jpilot-0.99.8-instpath.patch Sorry all for not correct patch - was my own previous version :( iconsdir now fixed.
Stasyuk's ebuild and patch WFM.
Thanks, guys! Fixed in CVS in 0.99.9.