[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Cluster-devel] [PATCH] Avoid link failure...



Hi Jim,

On Fri, 2009-06-19 at 19:19 +0200, Jim Meyering wrote:
> When building from sources (master.git), against just-installed-to-
> private hierarchy headers/libs from corosync and openais, I get this
> failure:
> 
> libtool: link: gcc -I/p/p/coro/include -g -O2 -O2 -ggdb3 -Wall -Wshadow -Wmissin
> g-prototypes -Wmissing-declarations -Wstrict-prototypes -Wdeclaration-after-stat
> ement -Wpointer-arith -Wwrite-strings -Wcast-align -Wbad-function-cast -Wmissing
> -format-attribute -Wformat=2 -Wformat-security -Wformat-nonliteral -Wno-long-lon
> g -Wno-strict-aliasing -o confdb2ldif confdb2ldif-confdb2ldif.o  -L/p/p/coro/lib
>  -lconfdb
> /usr/bin/ld: warning: libcoroipcc.so.4, needed by /p/p/coro/lib/libconfdb.so, no
> t found (try using -rpath or -rpath-link)
> /p/p/coro/lib/libconfdb.so: undefined reference to `coroipcc_fd_get COROSYNC_COR
> OIPCC_3.0'
> /p/p/coro/lib/libconfdb.so: undefined reference to `coroipcc_dispatch_get'
> /p/p/coro/lib/libconfdb.so: undefined reference to `coroipcc_dispatch_put'
> /p/p/coro/lib/libconfdb.so: undefined reference to `coroipcc_service_connect COR
> OSYNC_COROIPCC_3.0'
> /p/p/coro/lib/libconfdb.so: undefined reference to `coroipcc_msg_send_reply_rece
> ive COROSYNC_COROIPCC_3 0'
> /p/p/coro/lib/libconfdb.so: undefined reference to `coroipcc_service_disconnect@
> COROSYNC_COROIPCC_3.0'
> collect2: ld returned 1 exit status
> make[3]: *** [confdb2ldif] Error 1
> make[3]: Leaving directory `/h/meyering/w/co/cluster/config/tools/ldap'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/h/meyering/w/co/cluster/config/tools'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/h/meyering/w/co/cluster/config'
> make: *** [all-recursive] Error 1
> [Exit 2]

I am able to reproduce this error, but there is something that I don't
like about it.

When installing in different prefixes, isn't the user supposed to update
LD_LIBRARY_PATH accordingly?

Once I set LD_LIBRARY_PATH to include the new prefix, this error doesn't
show because the linker can find libcoroipcc.

ldap config doesn't use any symbol from coroipcc directly, but only via
libconfdb that is correctly linked.

I don't believe that linking ldap tools with coroipcc is the right
solution, but I am ready to be proven wrong tho.

In any case, if we really need to link manually with coroipcc, can we
use PKG_CONFIG rather than manual linking?

Thanks
Fabio


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]