<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - 1.9.3: Compiling with 1.9 installed fails, old libraries linked, xcb_send_fd undefined"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=72057">72057</a>
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>xcb@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>1.9.3: Compiling with 1.9 installed fails, old libraries linked, xcb_send_fd undefined
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>xcb@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Solaris
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>mark@ibiblio.org
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>1.9.3
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Library
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>XCB
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Solaris 11 SPARC 64, Sun Studio 12.3 compiler

Have libxcb 1.9 previously installed in /usr/local.
Compiling up 1.9.3:

CC=cc -xtarget=ultra -m64 -xcode=pic32
CXX=CC -xtarget=ultra -m64 -xcode=pic32
F77=f77 -xtarget=ultra -m64 -xcode=pic32
LDFLAGS=-L/usr/local/lib -R/usr/local/lib
GNUMAKE=/usr/local/bin/gmake
EGREP=/usr/xpg4/bin/egrep
AUTOCONF=/usr/local/bin/autoconf
AUTOMAKE=/usr/local/bin/automake
ACLOCAL=/usr/local/bin/aclocal
AUTOHEADER=/usr/local/bin/autoheader
LIBTOOL=/usr/local/bin/libtool
LIBTHREAD=-lthread
LTLIBTHREAD=-lthread
LIBMULTITHREAD=-lthread
LTLIBMULTITHREAD=-lthread
CLASSPATH=/usr/local/java
XML_CATALOG_FILES=/usr/local/share/xml/catalog.xml
XML_CATALOG_FILE=/usr/local/share/xml/catalog.xml
XMLCATALOG=/usr/local/bin/xmlcatalog
ITSTOOL=/usr/local/bin/itstool
MAKE=/usr/local/bin/gmake
GETOPT=/usr/local/bin/getopt
XMLLINT=/usr/local/bin/xmllint
XSLTPROC=/usr/local/bin/xsltproc
M4=/usr/local/bin/m4
BISON=/usr/local/bin/bison
FLEX=/usr/local/bin/flex
CPPFLAGS=-I/usr/local/include
LINT=lint -m64 -xcode=pic32 -err=warn -h -errchk -v -errfmt=macro
BUILD_DOCS=yes
PLUGINDIR=/usr/local/lib/sasl2
DB_LIB=-L/usr/local/lib -R/usr/local/lib -ldb-4
DB_HEADER=db_185.h
LDLAGS=-L/usr/local/include -R/usr/local/lib
PERL=/usr/local/bin/perl
INSTALL=/usr/local/bin/ginstall
LD_RUN_PATH=/usr/local/lib:/lib/64:/usr/lib/64:/lib:/usr/lib
XMLTO=/usr/local/bin/xmlto
LIBS=-lintl -liconv
CAIRO_LIBS=-L/usr/local/lib -lcairo
CFLAGS=-I/usr/local/include
PERLCC=cc -xtarget=ultra -m64 -xcode=pic32 -xc99
PERLLD=cc -xtarget=ultra -m64 -xcode=pic32 -xc99
PYTHON=/usr/local/bin/python

    cd /var/tmp
    rm -rf /xcb libxcb-1.9.3
    untgz /usr/local/src/x11/libxcb-1.9.3.tar.gz
    cd libxcb-1.9.3
    mkdir /xcb
    ./autogen.sh
    ./configure --prefix=/xcb \
        --disable-silent-rules \
        --with-doxygen=/usr/local/bin/doxygen
    gmake
    gmake install


libtool: install: warning: relinking `libxcb-dri3.la'
libtool: install: (cd /var/tmp/libxcb-1.9.3/src; /bin/sh
/var/tmp/libxcb-1.9.3/libtool  --tag CC --mode=relink cc -xtarget=ultra -m64
-xcode=pic32 -v -I/usr/local/include -I/usr/local/include -I/usr/local/include
-version-info 0:0:0 -no-undefined -L/usr/local/lib -R/usr/local/lib -o
libxcb-dri3.la -rpath /xcb/lib dri3.lo libxcb.la -lsocket -lintl -liconv )
libtool: relink: cc -xtarget=ultra -m64 -xcode=pic32 -G -z defs -h
libxcb-dri3.so.0 -o .libs/libxcb-dri3.so.0.0.0  .libs/dri3.o   -R/xcb/lib
-R/usr/local/lib -L/usr/local/lib -L/xcb/lib -lxcb -lXau -lXdmcp -lsocket
-lintl -lc -liconv -lc  -xtarget=ultra -m64  
Undefined                       first referenced
 symbol                             in file
xcb_send_fd                         .libs/dri3.o
xcb_get_reply_fds                   .libs/dri3.o
ld: fatal: symbol referencing errors. No output written to
.libs/libxcb-dri3.so.0.0.0
libtool: install: error: relink `libxcb-dri3.la' with the above command before
installing it
gmake[3]: *** [install-libLTLIBRARIES] Error 1
gmake[3]: Leaving directory `/var/tmp/libxcb-1.9.3/src'

It's not until I delete all of the libxcb 1.9 files in the /usr/local tree that
libxcb 1.9.3 will link and install cleanly.

If 1.9.3 needs to link with its new libraries to install properly, the
-L/xcb/lib needs to come first, before the customer supplied LDFLAGS are used.
The 1.9 libraries in /usr/local mess it up.

host:/xcb/lib root# nm libxcb.so | grep fd
[76]    |               62568|                 176|FUNC |LOCL |0    |11    
|read_fds
[42]    |               53088|                 144|FUNC |LOCL |0    |11    
|set_fd_flags
[476]   |               55536|                 296|FUNC |GLOB |0    |11    
|xcb_connect_to_fd
[555]   |               66800|                  56|FUNC |GLOB |0    |11    
|xcb_get_reply_fds
[874]   |               60312|                 232|FUNC |GLOB |0    |11    
|xcb_send_fd</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>