Re: Corosync fails to compile as of 2.1.0

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

 



Hi Fabio,

I was just able to sort this out.

It appears as though the issue was a poorly configured ./configure to start with, which you hinted to in your email. The result was that my make invocation broke between 2.0.1 and 2.1.0.

The solution was to configure CFLAGS in ./configure and call make without any further parameters.

For anybody else with libraries in nonstandard locations, this may be of use:

/configure \
          --prefix=/opt/OSAGpcmk/corosync \
          LDFLAGS='-L/opt/OSAGpcmk/nss/lib -L/opt/OSAGpcmk/nspr/lib' \
          PKG_CONFIG_PATH=$(PKG_CONFIG_PATH):/opt/OSAGpcmk/qb/lib/pkgconfig \
          LIBS='-lnssutil3 -lnss3' \
          nss_CFLAGS='-I/opt/OSAGpcmk/nss/include/nss' \
          nss_LIBS='-L/opt/OSAGpcmk/nss/lib/libnss3.so' \
          CFLAGS='-I/opt/OSAGpcmk/qb/include -I/opt/OSAGpcmk/nss/include/nss -I/opt/OSAGpcmk/nspr/include/nspr -Wl,-rpath=/opt/OSAGpcmk/nss/lib,-rpath=/opt/OSAGpcmk/nspr/lib,-rpath=/opt/OSAGpcmk/corosync/lib,-rpath=/opt/OSAGpcmk/qb/lib'

Regards,
James


On Dec 4, 2012, at 10:02 AM, "Fabio M. Di Nitto" <fdinitto@xxxxxxxxxx> wrote:

> On 12/4/2012 9:52 AM, James Guthrie wrote:
>> Hi Fabio,
>> 
>> I was wondering if you've had the chance to try compiling corosync 2.1.0 on LFS 6.8?
> 
> No, not yet, sorry. Did you investigate your build environment? can you
> please show me your corosync ./configure invocation and output from it
> (specially the final part with the results).
> 
> Thanks
> Fabio
> 
>> 
>> Regards,
>> James
>> 
>> On Nov 27, 2012, at 4:46 PM, Fabio M. Di Nitto <fdinitto@xxxxxxxxxx> wrote:
>> 
>>> On 11/26/2012 2:50 PM, James Guthrie wrote:
>>>> Hi All,
>>>> 
>>>> I tried to upgrade to corosync 2.1.0 today. I have been using corosync
>>>> 2.0.1 which I compiled from source. I tried to download and compile
>>>> 2.1.0 with the same arguments as used for 2.0.1.
>>>> The error I get is the following (when trying to link corosync-cfgtool):
>>>> ../lib/.libs/libcfg.so: undefined reference to `hdb_error_to_cs'
>>>> ../lib/.libs/libcfg.so: undefined reference to `qb_to_cs_error'
>>>> 
>>>> The gcc command being run is: gcc -I/opt/OSAGpace/qb/include
>>>> -I/opt/OSAGpace/nss/include/nss -I/opt/OSAGpace/nspr/include/nspr
>>>> -Wl,-rpath=/opt/OSAGpace/nss/lib -Wl,-rpath=/opt/OSAGpace/nspr/lib
>>>> -Wl,-rpath=/opt/OSAGpace/corosync/lib -Wl,-rpath=/opt/OSAGpace/qb/lib -o
>>>> .libs/corosync-cfgtool corosync-cfgtool.o  -L/opt/OSAGpace/nss/lib
>>>> -L/opt/OSAGpace/nspr/lib -L/opt/OSAGpace/qb/lib
>>>> /opt/OSAGpace/qb/lib/libqb.so -ldl -lrt -lpthread ../lib/.libs/libcfg.so
>>>> -lnssutil3 -lnss3 -Wl,-rpath -Wl,/opt/OSAGpace/qb/lib -Wl,-rpath
>>>> -Wl,/opt/OSAGpace/corosync/lib
>>>> 
>>> 
>>> I tested with LFS 7.2 and I can´t reproduce the problem with corosync
>>> from git master branch.
>>> 
>>> But now that I look at your gcc invocation, I noticed that there are
>>> several missing pieces from standard corosync configure environment.
>>> 
>>> Are you sure your build environment is clean?
>>> 
>>> A successful call would look like:
>>> 
>>> root:~/corosync-2.1.0.26-92e0/tools# make V=1
>>> gcc -DHAVE_CONFIG_H -I. -I../include/corosync   -I../include
>>> -I../include -I../include/corosync -I../include/corosync  -g -O2  -fPIC
>>> -DPIC  -fPIE -O3 -ggdb3         -Wall -Wshadow -Wmissing-prototypes
>>> -Wmissing-declarations -Wstrict-prototypes -Wdeclaration-after-statement
>>> -Wpointer-arith -Wwrite-strings -Wcast-align -Wbad-function-cast
>>> -Wmissing-format-attribute -Wformat=2 -Wformat-security
>>> -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing
>>> -MT corosync-cfgtool.o -MD -MP -MF .deps/corosync-cfgtool.Tpo -c -o
>>> corosync-cfgtool.o corosync-cfgtool.c
>>> mv -f .deps/corosync-cfgtool.Tpo .deps/corosync-cfgtool.Po
>>> /bin/sh ../libtool  --tag=CC   --mode=link gcc  -g -O2  -fPIC -DPIC
>>> -fPIE -O3 -ggdb3     -Wall -Wshadow -Wmissing-prototypes
>>> -Wmissing-declarations -Wstrict-prototypes -Wdeclaration-after-statement
>>> -Wpointer-arith -Wwrite-strings -Wcast-align -Wbad-function-cast
>>> -Wmissing-format-attribute -Wformat=2 -Wformat-security
>>> -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing
>>> -fPIC -DPIC  -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed  -o
>>> corosync-cfgtool corosync-cfgtool.o -L/usr/lib64 -lqb -ldl -lrt
>>> -lpthread   ../lib/libcfg.la -lrt -lpthread
>>> libtool: link: gcc -g -O2 -fPIC -DPIC -fPIE -O3 -ggdb3 -Wall -Wshadow
>>> -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes
>>> -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings
>>> -Wcast-align -Wbad-function-cast -Wmissing-format-attribute -Wformat=2
>>> -Wformat-security -Wformat-nonliteral -Wno-long-long
>>> -Wno-strict-aliasing -fPIC -DPIC -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now
>>> -Wl,--as-needed -o .libs/corosync-cfgtool corosync-cfgtool.o
>>> -L/usr/lib64 ../lib/.libs/libcfg.so
>>> /root/corosync-2.1.0.26-92e0/common_lib/.libs/libcorosync_common.so
>>> /usr/lib64/libqb.so -ldl -lrt -lpthread -Wl,-rpath -Wl,/opt/foobar/lib
>>> -Wl,-rpath -Wl,/usr/lib64
>>> 
>>> It is also possible that there is a bug in autotools used in LFS 6.8
>>> that has been fixed upstream (there are some newer versions in 7.2) and
>>> backported into distribution packages.
>>> 
>>> I´ll try and build with 6.8 one of the next days, but i strongly
>>> recommend you start considering updating your environment.
>>> 
>>> Fabio
>> 
> 


_______________________________________________
discuss mailing list
discuss@xxxxxxxxxxxx
http://lists.corosync.org/mailman/listinfo/discuss



[Index of Archives]     [Linux Clusters]     [Corosync Project]     [Linux USB Devel]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Linux Kernel]     [Linux SCSI]     [X.Org]

  Powered by Linux