Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 317863 - net-misc/nx: nxagent undefined symbol XESetWireToEventCookie
Summary: net-misc/nx: nxagent undefined symbol XESetWireToEventCookie
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal with 1 vote (vote)
Assignee: Gentoo NX Server project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-04-30 06:24 UTC by OvsInc
Modified: 2011-09-14 12:43 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
patch nx-3.4.0.ebuild (x.patch,701 bytes, patch)
2010-05-06 11:08 UTC, Guenter Sandner
Details | Diff
patch against nx-3.5.0.ebuild in unstable tree (nx-3.5.0-r1.ebuild.patch,946 bytes, patch)
2011-08-10 17:21 UTC, Joel Berendzen
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description OvsInc 2010-04-30 06:24:54 UTC
Nxagent stopped working after updating LibXi to version 1.3

Log:
localhost lib # nxnode --agent
NX> 1000 NXNODE - Version 3.2.0-74-TEAMBZR104 OS (GPL, using backend: 3.4.0)
NX> 716 Starting NX Agent ...
/usr/lib/NX/bin/nxagent: symbol lookup error: /usr/lib/libXi.so.6: undefined symbol: XESetWireToEventCookie
NX> 716 NX Agent exited with status: 127
NX> 1001 Bye.
Comment 1 Panagiotis Christopoulos (RETIRED) gentoo-dev 2010-05-05 09:50:30 UTC
Please, reemerge the affected NX package and run revdep-rebuild(emerge gentoolkit). Reopen if the problem persists. I  resolve this bug as TEST-REQUEST.
Comment 2 OvsInc 2010-05-06 06:01:00 UTC
Did as you said. The problem remained.
Comment 3 Guenter Sandner 2010-05-06 06:19:05 UTC
same here
Comment 4 Guenter Sandner 2010-05-06 06:25:12 UTC
please reopen this bug

emerge --info:

Portage 2.1.8.3 (default/linux/amd64/10.0, gcc-4.3.4, glibc-2.10.1-r1, 2.6.33.2-gms x86_64)
=================================================================
System uname: Linux-2.6.33.2-gms-x86_64-Intel-R-_Pentium-R-_D_CPU_3.00GHz-with-gentoo-1.12.13
Timestamp of tree: Tue, 27 Apr 2010 17:00:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.0_p37
dev-java/java-config: 2.1.10
dev-lang/python:     2.6.4-r1
dev-util/ccache:     2.4-r7
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.8.5-r3, 1.9.6-r2, 1.10.3, 1.11.1
sys-devel/binutils:  2.18-r3
sys-devel/gcc:       3.4.6-r2, 4.1.2, 4.3.4
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   1.3.5, 2.2.6b
virtual/os-headers:  2.6.33
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA dlj-1.1 skype-eula"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=nocona"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/tomoyo/conf /usr/share/X11/xkb /usr/share/config /var/lib/nxserver/home/.ssh"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -march=nocona"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests buildpkg ccache collision-protect distlocks fixpackages multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unmerge-logs unmerge-orphans userfetch usersync"
GENTOO_MIRRORS="http://gentoo.inode.at/"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1"
LINGUAS="en de"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/local /root/admin/CONFIG/shared/gentoo-portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow X a52 aac acl acpi akonadi alsa amd64 audiofile berkdb blas bluetooth bogofilter bzip2 bzlib2 cairo caps cblas cdparanoia cdr cjk clamav cli consolekit cracklib crypt cups curl curlwrappers cxx dbus dell derby dga djvu dri dv dvb dvd dvdr dvdread emboss encode exif fam fbcon ffmpeg fftw firefox flac foomaticdb fortran fuse gdbm gif gnutls gpm gstreamer gtk hal iconv ieee1394 imagemagick imap jabber jack java jpeg jpeg2k kde kpathsea kqemu laptop lcms lensfun libnotify livecd mad mikmod mktemp mmap mmx mng modules mp3 mp4 mpeg mplayer msn mudflap multilib multimedia multitarget musicbrainz ncurses nls nptl nptlonly nsplugin nvtv ogg openexr opengl openmp oscar pam pcre pdf perl png policykit ppds pppd python q16 qt3 qt3support qt4 qt4support quicktime raw readline reflection samba sdl semantic-desktop session sift sndfile spell spl sql sqlite sse sse2 ssh ssl subversion svg sysfs tcpd theora threads tiff truetype unicode usb utempter v4l2 vorbis webkit x264 xattr xcb xcomposite xine xinerama xml xorg xosd xulrunner xv xvid zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en de" RUBY_TARGETS="ruby18" SANE_BACKENDS="plustek" USERLAND="GNU" VIDEO_CARDS="nvidia nv"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Comment 5 Guenter Sandner 2010-05-06 08:10:53 UTC
this symbol is referenced by libxi.so:

gms2 ~ # readelf -s /usr/lib/libXi.so.6 | grep XESetWireToEventCookie
     8: 0000000000000000   135 FUNC    GLOBAL DEFAULT  UND XESetWireToEventCookie

and provided by libX11.so:


gms2 ~ # ldd -r /usr/lib/libXi.so.6
        linux-vdso.so.1 =>  (0x00007ffff87ff000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0x00007f003bd4a000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f003ba05000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f003b7e2000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f003b5de000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f003b3d8000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007f003b1d3000)
        libc.so.6 => /lib/libc.so.6 (0x00007f003ae7a000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f003c1a8000)
gms2 ~ #
gms2 ~ # readelf -s /usr/lib/libX11.so.6 | grep XESetWireToEventCookie
   912: 00000000000313e9   135 FUNC    GLOBAL DEFAULT   11 XESetWireToEventCookie


but the nx version of libX11.so does not provide this function:

gms@gms2 ~ $ readelf -s /usr/lib64/NX/lib64/libX11.so | grep XESetWireToEventCookie
gms@gms2 ~ $ 
gms@gms2 ~ $ export LD_LIBRARY_PATH=/usr/lib64/NX/lib64
gms@gms2 ~ $ ldd -r /usr/lib/libXi.so.6
undefined symbol: XESetWireToEventCookie        (/usr/lib/libXi.so.6)
undefined symbol: XESetCopyEventCookie  (/usr/lib/libXi.so.6)
        linux-vdso.so.1 =>  (0x00007fff9b1ff000)
        libXext.so.6 => /usr/lib64/NX/lib64/libXext.so.6 (0x00007fa1d8e31000)
        libX11.so.6 => /usr/lib64/NX/lib64/libX11.so.6 (0x00007fa1d8b3e000)
Comment 6 Panagiotis Christopoulos (RETIRED) gentoo-dev 2010-05-06 08:34:10 UTC
Reopen.
Comment 7 OvsInc 2010-05-06 08:49:02 UTC
Workaround.
Make libXi-1.2.1 and install libs in /usr/lib/NX/lib
Comment 8 Guenter Sandner 2010-05-06 11:08:25 UTC
Created attachment 230575 [details, diff]
patch nx-3.4.0.ebuild

seems to work, but further testing is required
Comment 9 OvsInc 2010-05-07 08:28:18 UTC
Do not confirm.
In the nx-X11-3.4.0-3(net-misc/nx-3.4.0-r1) does not compile lib/Xi/libXi.so*

Checking nx-X11-3.4.0-1 (net-misc/nx-3.4.0)
Comment 10 OvsInc 2010-05-07 08:53:33 UTC
(In reply to comment #9)
> Do not confirm.
> In the nx-X11-3.4.0-3(net-misc/nx-3.4.0-r1) does not compile lib/Xi/libXi.so*
> 
> Checking nx-X11-3.4.0-1 (net-misc/nx-3.4.0)
> 
In the nx-X11-3.4.0-1(net-misc/nx-3.4.0) also does not compile lib/Xi/libXi.so*
Comment 11 OvsInc 2010-05-26 11:00:22 UTC
Does anyone still interested in this topic?
Comment 12 Guenter Sandner 2010-05-28 22:00:28 UTC
sorry, but I have no idea why this patch does not work for you:

gms2 ~ # equery files net-misc/nx-3.4.0  | grep Xi
/usr/lib/debug/usr/lib64/NX/lib64/libXi.so.6.0.debug
/usr/lib64/NX/lib64/libXi.so
/usr/lib64/NX/lib64/libXi.so.6
/usr/lib64/NX/lib64/libXi.so.6.0
gms2 ~ #

this works fine in my environment
Comment 13 Bernard Cafarelli gentoo-dev 2010-06-02 13:04:29 UTC
Sorry for the delay, so far I did not get this behaviour (on ~amd64), /usr/lib64/NX/bin/nxagent (nor libs/bins in net-misc/nx) does not link to libXi here

Is your nxagent linking on libXi? This is not a NX depend, and is not in nx-X11 code either
Comment 14 Guenter Sandner 2010-06-03 19:19:29 UTC
yes, you're right, no nx-binary has been linked against libXi:

gms2 ~ # for bin in /usr/lib64/NX/lib64/* /usr/lib64/NX/bin/*; do readelf -d $bin | grep libXi && echo $bin; done
 0x000000000000000e (SONAME)             Library soname: [libXi.so.6]
/usr/lib64/NX/lib64/libXi.so
 0x000000000000000e (SONAME)             Library soname: [libXi.so.6]
/usr/lib64/NX/lib64/libXi.so.6
 0x000000000000000e (SONAME)             Library soname: [libXi.so.6]
/usr/lib64/NX/lib64/libXi.so.6.0
gms2 ~ #


but libXi will be loaded as a dependency of libXcompshad:

gms2 lib64 # pwd
/usr/lib64/NX/lib64
gms2 lib64 # export LD_LIBRARY_PATH=$(pwd)
gms2 lib64 # for bin in *; do ldd $bin | grep libXi && echo $bin; done
        libXi.so.6 => /usr/lib64/NX/lib64/libXi.so.6 (0x00007fcb8439c000)
libXcompshad.so
        libXi.so.6 => /usr/lib64/NX/lib64/libXi.so.6 (0x00007f5e70a69000)
libXcompshad.so.3
        libXi.so.6 => /usr/lib64/NX/lib64/libXi.so.6 (0x00007f043cd3e000)
libXcompshad.so.3.4.0
gms2 lib64 #

libXcompshad.so has been linked against libXtst.so

gms2 lib64 # readelf -d libXcompshad.so | grep lib
 0x0000000000000001 (NEEDED)             Shared library: [libX11.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXtst.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libXrandr.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libXdamage.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x000000000000000e (SONAME)             Library soname: [libXcompshad.so.3]


and libXtst.so has been linked against libXi.so:

gms2 lib64 # readelf -d /usr/lib64/libXtst.so.6 | grep libXi
 0x0000000000000001 (NEEDED)             Shared library: [libXi.so.6]
gms2 lib64 # eix -s libXtst
[I] x11-libs/libXtst
     Available versions:  1.0.3{tbz2} 1.1.0{tbz2} {debug}
     Installed versions:  1.1.0{tbz2}(09:49:48 AM 05/06/2010)(-debug)
     Homepage:            http://xorg.freedesktop.org/
     Description:         X.Org Xtst library
Comment 15 OvsInc 2010-06-04 08:45:34 UTC
(In reply to comment #12)
> sorry, but I have no idea why this patch does not work for you:
> 
> gms2 ~ # equery files net-misc/nx-3.4.0  | grep Xi
> /usr/lib/debug/usr/lib64/NX/lib64/libXi.so.6.0.debug
> /usr/lib64/NX/lib64/libXi.so
> /usr/lib64/NX/lib64/libXi.so.6
> /usr/lib64/NX/lib64/libXi.so.6.0
> gms2 ~ #
> 
> this works fine in my environment

I am sorry, I was not attentive. I have not used your patch and make adjustments in the ebuild by hand and made a typo.

Used your patch. Confirm performance on the x86 platform for package nx-3.4.0 
and nx-3.4.0-r1.

Comment 16 Paul Berg 2010-06-16 19:15:10 UTC
Verified that same change in attached patch works for net-misc/nx-3.4.0-r2
Solved problem completely and no other issues encountered.
Comment 17 OvsInc 2010-06-22 07:23:32 UTC
Sorry, that have delayed answering.
Put a patch proposed by Guenter Sandner, at net-misk/nx-3.0.4-r2.
I confirm that the problem with the library libXi solved.
Comment 18 Bernard Cafarelli gentoo-dev 2010-07-15 12:39:36 UTC
OK, I did not see it as I use --as-needed... When built with it, libXtst does not link to libXi

After some digging, libXtst itself requires libXi package installed for some headers, but does not need libXi library anymore (from the changelog): dropping xi from PKG_CHECK_MODULES in configure.ac works fine

Now to check if it's better to patch libXtst or embed a copy (not linking to libXi) in nx... CC'ing x11 for opinion
Comment 19 Joel Berendzen 2011-08-10 17:21:15 UTC
Created attachment 282841 [details, diff]
patch against nx-3.5.0.ebuild in unstable tree
Comment 20 Bernard Cafarelli gentoo-dev 2011-08-18 20:21:51 UTC
I am working on nx-3.5.0-r1 which will include some other fixes (glibc, libpng, ...), I will add libXi compilation to nx X11 libs at the same time. Hopefully finally fixing this dormant bug!
Comment 21 Bernard Cafarelli gentoo-dev 2011-09-14 12:43:20 UTC
nx-3.5.0-r1 is in tree (without glibc-2.14 support though), sorry for the delay