|Summary:||openmotif can't be built when lesstif is installed|
|Product:||Gentoo Linux||Reporter:||Pierre-Henri Jondot <Pierre-Henri.Jondot>|
|Component:||Current packages||Assignee:||Heinrich Wendel (RETIRED) <lanius>|
|Package list:||Runtime testing required:||---|
Description Pierre-Henri Jondot 2003-09-13 23:48:06 UTC
I don't see why openmotif and lesstif might both be needed as they provide essentially the same thing but : lesstif was a dependancy to last version (~x86) of opera browser and lesstif-0. 93.40 got installed but then, emacs asked for openmotif instead and the emerging of openmotif-2.2. 2-r1 failed Reproducible: Always Steps to Reproduce: 1.emerge lesstif 2.emerge openmotif 3. Actual Results: In file included from /usr/X11R6/include/Xm/DragC.h:29, from /usr/X11R6/include/Xm/DragDrop.h:29, from /usr/X11R6/include/Xm/Transfer.h:29, from send.c:42: /usr/X11R6/include/Xm/Xm.h:1655: parse error before "XmConvertCallbackStruct" send.c: In function `WSMSendMessage': send.c:92: warning: implicit declaration of function `GetTimestamp' make: *** [send.o] Error 1 make: Leaving directory `/var/tmp/portage/openmotif-2.2. 2-r1/work/openMotif-2.2.2/clients/mwm/WmWsmLib' make: *** [all-recursive] Error 1 make: Leaving directory `/var/tmp/portage/openmotif-2.2. 2-r1/work/openMotif-2.2.2/clients/mwm' make: *** [all-recursive] Error 1 make: Leaving directory `/var/tmp/portage/openmotif-2.2. 2-r1/work/openMotif-2.2.2/clients' make: *** [all-recursive] Error 1 !!! ERROR: x11-libs/openmotif-2.2.2-r1 failed. !!! Function src_compile, Line 38, Exitcode 2 !!! make failed emerge info Portage 2.0.49-r3 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.22_pre2-gss) ================================================================= System uname: 2.4.22_pre2-gss i686 AMD Athlon(tm) XP 1800+ ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=athlon-xp -funroll-loops -fprefetch-loop-arrays -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O3 -march=athlon-xp -funroll-loops -fprefetch-loop-arrays -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://18.104.22.168/sites/www.ibiblio.org/gentoo/ http://212.219. 56.146/sites/www.ibiblio.org/gentoo/ http://22.214.171.124/sites/www.ibiblio. org/gentoo/ http://126.96.36.199/sites/www.ibiblio.org/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 oss apm avi crypt cups encode foomaticdb gif jpeg kde libg++ libwww mad mikmod mmx motif mpeg ncurses nls pdflib png quicktime slang spell truetype xml2 xmms xv zlib gdbm berkdb readline bonobo svga java sdl gpm tcpd pam ssl perl python esd imlib oggvorbis qt opengl mozilla X gtk gnome ffmpeg xvid dvd -alsa -arts mysql"
Comment 1 bartron 2003-09-14 07:31:39 UTC
openmotif-2.2.2-r2 fixes that, however... Since openmotif-2.2's shared libraries use a different major version number (libs end in `.so.3'), you will have to recompile all package that use Motif. Openmotif-2.1 and lesstif both install the same version of their libraries (`.so.2') and are supposed to be binary compatible, but I'd recommend recompiling all Motif programs as well when switching between them (or expect some random crashes).
Comment 2 Seemant Kulleen (RETIRED) 2003-09-15 08:58:55 UTC
closing this bug -- bartron hop onto irc and /msg me when you have a chance please
Comment 3 Seemant Kulleen (RETIRED) 2003-09-20 03:42:45 UTC
re-opening for further examination
Comment 4 Seemant Kulleen (RETIRED) 2003-09-20 03:44:05 UTC
p-h, a couple of things: I'm not able to reproduce this: I compiled openmotif with lesstif already installed, on a few occasions, and the latest today; also, it seemed as though Bartron reasoned something about it. have you been able to verify that openmotif compiles ok with no lesstif installed?
Comment 5 Pierre-Henri Jondot 2003-09-20 04:26:49 UTC
As concerns openmotif-2.2.2-r1, yes it does build fine on my system having previously unmerged lesstif. I have not checked yet if openmotif-2.2.2-r2 (~x86) builds fine against lesstif-0.93.40 as suggests bartron or not. The fact is I solved my problem by editing emacs ebuild by hand and getting rid of the openmotif dependancy, it then built fine and emacs just works fine too. The lesstif library did just suit emacs as well as the openmotif one I suppose. So, in my opinion, I suppose it would be a good thing to replace the lesstif or openmotif dependancy by a virtual/motif one whenever one can be used as well as the other, which it is, I guess, the most often if not always... Of course, that means testing... If some specific packages now specifying openmotif as a dependancy need to be tested, my cpu has some cycles left and can do some. Just tell me which ones.
Comment 6 bartron 2003-09-20 18:20:16 UTC
[Note to self: don't go online at this late hour... Comment #1 was written assuming that -r2 has been unmasked some time ago...my bad...] The problem here is that 2.2's original autoconf build makes gcc look for include files in the wrong order in two of its subdirectories, picking up headers in `/usr/X11R6/include' if they exist (causing trouble if they belong to a different Motif); this is what -r2 fixes.
Comment 7 Pierre-Henri Jondot 2003-09-21 02:32:01 UTC
The change from the openmotif-2.2.2-r1 ebuild to the -r2 one should indeed allow it to build. But then if the two libraries provided by lesstif and openmotif are binary incompatible, then we might have to reemerge every package depending on motif as suggests bartron. Then assuming (I have no idea if such packages exist and hope not) a package needs lesstif and won't build against openmotif, what will happen if, and I suppose it just does that, the emerging of openmotif replaced all the lesstif header's files with its own ? As for the lesstif dependancy for opera, this is not a problem of course as it is binary and as lesstif and openmotif libraries are not the same version In resume, but it has to be investigated, my guess is that : - lesstif or a previous version of openmotif is necessary to offer binary compatibility with opera (or I should say some plugins to opera) and perhaps others - and I would suppose openmotif-2.2.2 is preferable (?) for the building of source packages but if this is the case, we should prevent a later emerging of lesstif to replace openmotif headers, and in the case where openmotif-2.2.2 got emerged after lesstif, reeemerge all source packages depending on motif... - and if we are very lucky, lesstif and openmotif are never both needed at the same time...
Comment 8 Seemant Kulleen (RETIRED) 2003-09-21 19:40:42 UTC
emacs people, looks like emacs dep can be virtual/motif
Comment 9 bartron 2003-09-22 15:43:43 UTC
[moved the second issue, including some first ideas, to a new bug (bug #29388)]