cluster-devel.redhat.com archive mirror
 help / color / mirror / Atom feed
From: Marc - A. Dahlhaus [ Administration | Westermann GmbH ] <mad@wol.de>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] LVM2 clvmd and STABLE3
Date: Thu, 30 Jul 2009 12:36:28 +0200	[thread overview]
Message-ID: <1248950188.25215.31.camel@marc> (raw)
In-Reply-To: <4A71617E.4010500@redhat.com>

Am Donnerstag, den 30.07.2009, 10:01 +0100 schrieb Christine Caulfield:
> On 30/07/09 08:45, Marc - A. Dahlhaus [ Administration | Westermann GmbH 
> ] wrote:
> > Am Dienstag, den 10.03.2009, 16:50 +0000 schrieb Chrissie Caulfield:
> >> Marc - A. Dahlhaus wrote:
> >>> Chrissie Caulfield schrieb:
> >>>> Marc - A. Dahlhaus [ Administration | Westermann GmbH ] wrote:
> >>>>
> >>>>> Hello,
> >>>>>
> >>>>>
> >>>>> what is the right approach to build LVM2 with STABLE3,
> >>>>> a build with --with-clvmd=corosync or --with-clvmd=cman ?
> >>>>>
> >>>>>
> >>>> I recommend you do both.
> >>>>
> >>>>    --with-clvmd=corosync=cman,corosync
> >>>>
> >>> sounds nice but it doesn't build.
> >>> I use the last released tarballs of STABLE3, corosync, openais and LVM2.
> >>> I tested the following:
> >>>
> >>> --with-clvmd=corosync=cman,corosync
> >>> --with-clvmd=cman,corosync
> >>> --with-clvmd=corosync,cman
> >>>
> >>> All end up with:
> >>>
> >>> gcc -m32 -o clvmd clvmd-command.o clvmd.o lvm-functions.o
> >>> refresh_clvmd.o clvmd-cman.o clvmd-corosync.o -march=i686 -mtune=generic
> >>> -O2 -pipe -march=i686 -mtune=generic -O2 -pipe -fPIC -Wall -Wundef
> >>> -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes
> >>> -Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn
> >>> -Wformat-security -O2 -march=i686 -mtune=generic -O2 -pipe -fPIC -Wall
> >>> -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes
> >>> -Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn
> >>> -Wformat-security -O2    -fno-strict-aliasing -march=i686 -mtune=generic
> >>> -O2 -pipe -fPIC -Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings
> >>> -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline
> >>> -Wmissing-noreturn -Wformat-security -O2 -Wl,--export-dynamic
> >>> -L../../libdm -L../../lib -L../../daemons/dmeventd \
> >>>                 -llvm -lpthread -ldevmapper-event -ldevmapper -ldlm
> >>> -lcman    -ldlm -lreadline -lrt -ldl -lncurses
> >>> clvmd-corosync.o: In function `_get_cluster_name':
> >>> clvmd-corosync.c:(.text+0x695): undefined reference to `confdb_initialize'
> >>> clvmd-corosync.c:(.text+0x6c6): undefined reference to
> >>> `confdb_object_find_start'
> >>> clvmd-corosync.c:(.text+0x6dd): undefined reference to `confdb_finalize'
> >>> clvmd-corosync.c:(.text+0x727): undefined reference to `confdb_object_find'
> >>> clvmd-corosync.c:(.text+0x769): undefined reference to `confdb_key_get'
> >>> clvmd-corosync.o: In function `_cluster_closedown':
> >>> clvmd-corosync.c:(.text+0x7e9): undefined reference to `cpg_finalize'
> >>> clvmd-corosync.c:(.text+0x801): undefined reference to `quorum_finalize'
> >>> clvmd-corosync.o: In function `_is_quorate':
> >>> clvmd-corosync.c:(.text+0x98d): undefined reference to `quorum_getquorate'
> >>> clvmd-corosync.o: In function `_get_main_cluster_fd':
> >>> clvmd-corosync.c:(.text+0xadd): undefined reference to `cpg_fd_get'
> >>> clvmd-corosync.o: In function `_cluster_fd_callback':
> >>> clvmd-corosync.c:(.text+0xb30): undefined reference to `cpg_dispatch'
> >>> clvmd-corosync.o: In function `_cluster_send_message':
> >>> clvmd-corosync.c:(.text+0xc12): undefined reference to `cpg_mcast_joined'
> >>> clvmd-corosync.o: In function `init_corosync_cluster':
> >>> clvmd-corosync.c:(.text+0xc80): undefined reference to `cpg_initialize'
> >>> clvmd-corosync.c:(.text+0xcec): undefined reference to `quorum_initialize'
> >>> clvmd-corosync.c:(.text+0xdb9): undefined reference to `cpg_join'
> >>> clvmd-corosync.c:(.text+0xddc): undefined reference to `cpg_finalize'
> >>> clvmd-corosync.c:(.text+0xdf4): undefined reference to `quorum_finalize'
> >>> clvmd-corosync.c:(.text+0xe66): undefined reference to `cpg_local_get'
> >>> clvmd-corosync.c:(.text+0xe89): undefined reference to `cpg_finalize'
> >>> clvmd-corosync.c:(.text+0xea1): undefined reference to `quorum_finalize'
> >>> clvmd-corosync.c:(.text+0xf1c): undefined reference to `quorum_finalize'
> >>>
> >>> The full configure line for reference:
> >>>
> >>> ./configure --enable-cmdlib --enable-dmeventd --enable-pkgconfig \
> >>>      --disable-selinux --with-clvmd=corosync,cman --with-lvm1=shared \
> >>>      --with-cluster=shared --with-pool=shared \
> >>>      --with-snapshots=shared --with-mirrors=internal
> >>>
> 
> 
> Hmmm.
> 
> I've just checked and the lvm2 configure code to do this was in the 
> 2.02.45 release.
> 
> I tried it with head of CVS and it works fine ;-)
> 
> Chrissie
> 
I use this commands:

CC="gcc -m32" CXX="g++ -m32" ./configure \
 --enable-cmdlib --enable-dmeventd --enable-pkgconfig \
 --disable-selinux --with-clvmd=corosync,cman --with-lvm1=shared \
 --with-cluster=shared --with-pool=shared \
 --with-snapshots=shared --with-mirrors=internal
make

and end up with:

gcc -m32 -o clvmd clvmd-command.o clvmd.o lvm-functions.o
refresh_clvmd.o clvmd-cman.o clvmd-corosync.o -march=i686 -mtune=generic
-O2 -pipe -march=i686 -mtune=generic -O2 -pipe -fPIC -Wall -Wundef
-Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes
-Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn
-Wformat-security -O2 -march=i686 -mtune=generic -O2 -pipe -fPIC -Wall
-Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes
-Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn
-Wformat-security -O2    -fno-strict-aliasing -march=i686 -mtune=generic
-O2 -pipe -fPIC -Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings
-Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline
-Wmissing-noreturn -Wformat-security -O2 -Wl,--export-dynamic
-L../../libdm -L../../lib -L../../daemons/dmeventd \
		-llvm-internal -lpthread -ldevmapper-event -ldevmapper -ldlm -lcman
-ldlm -lreadline -lrt -ldl -lncurses 
clvmd-corosync.o: In function `_get_cluster_name':
clvmd-corosync.c:(.text+0x6b5): undefined reference to
`confdb_initialize'
clvmd-corosync.c:(.text+0x6e6): undefined reference to
`confdb_object_find_start'
clvmd-corosync.c:(.text+0x6fd): undefined reference to `confdb_finalize'
clvmd-corosync.c:(.text+0x747): undefined reference to
`confdb_object_find'
clvmd-corosync.c:(.text+0x789): undefined reference to `confdb_key_get'
clvmd-corosync.o: In function `_cluster_closedown':
clvmd-corosync.c:(.text+0x809): undefined reference to `cpg_finalize'
clvmd-corosync.c:(.text+0x821): undefined reference to `quorum_finalize'
clvmd-corosync.o: In function `_is_quorate':
clvmd-corosync.c:(.text+0x9ad): undefined reference to
`quorum_getquorate'
clvmd-corosync.o: In function `_get_main_cluster_fd':
clvmd-corosync.c:(.text+0xafd): undefined reference to `cpg_fd_get'
clvmd-corosync.o: In function `_cluster_fd_callback':
clvmd-corosync.c:(.text+0xb50): undefined reference to `cpg_dispatch'
clvmd-corosync.o: In function `_cluster_send_message':
clvmd-corosync.c:(.text+0xc32): undefined reference to
`cpg_mcast_joined'
clvmd-corosync.o: In function `init_corosync_cluster':
clvmd-corosync.c:(.text+0xca0): undefined reference to `cpg_initialize'
clvmd-corosync.c:(.text+0xd0c): undefined reference to
`quorum_initialize'
clvmd-corosync.c:(.text+0xdd9): undefined reference to `cpg_join'
clvmd-corosync.c:(.text+0xdfc): undefined reference to `cpg_finalize'
clvmd-corosync.c:(.text+0xe14): undefined reference to `quorum_finalize'
clvmd-corosync.c:(.text+0xe86): undefined reference to `cpg_local_get'
clvmd-corosync.c:(.text+0xea9): undefined reference to `cpg_finalize'
clvmd-corosync.c:(.text+0xec1): undefined reference to `quorum_finalize'
clvmd-corosync.c:(.text+0xf3c): undefined reference to `quorum_finalize'
collect2: ld gab 1 als Ende-Status zur?ck
make[2]: *** [clvmd] Fehler 1
make[2]: Leaving directory
`/repo/kiss-linux/lvm2/src/LVM2.2.02.50/daemons/clvmd'
make[1]: *** [clvmd] Fehler 2
make[1]: Leaving directory
`/repo/kiss-linux/lvm2/src/LVM2.2.02.50/daemons'
make: *** [daemons] Fehler 2


The problem is in configure as configure doesn't look for individual
substrings in CLVMD but tests for the whole string...
                             
So i have to set it to cman OR corosync OR all but not to cman,corosync
or corosync,cman...

I can build just fine with "cman" and also with "corosync" but if i use
"all" i can't build because USE_GULM gets in my way:

gcc -m32 -c -I. -I../../include -DUSE_GULM -DUSE_CMAN -DUSE_OPENAIS
-DUSE_COROSYNC -D_REENTRANT -DHAVE_CONFIG_H -DDM_IOCTLS -march=i686
-mtune=generic -O2 -pipe -march=i686 -mtune=generic -O2 -pipe -fPIC
-Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes
-Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn
-Wformat-security -O2 -march=i686 -mtune=generic -O2 -pipe -fPIC -Wall
-Wundef -Wshadow -Wcast-align -Wwrite-strings -Wmissing-prototypes
-Wmissing-declarations -Wnested-externs -Winline -Wmissing-noreturn
-Wformat-security -O2    -fno-strict-aliasing -march=i686 -mtune=generic
-O2 -pipe -fPIC -Wall -Wundef -Wshadow -Wcast-align -Wwrite-strings
-Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline
-Wmissing-noreturn -Wformat-security -O2 clvmd-command.c -o
clvmd-command.o
In Datei, eingef?gt von clvmd-command.c:77:
clvmd-comms.h:80:35: Fehler: openais/totem/totem.h: Datei oder
Verzeichnis nicht gefunden
make[2]: *** [clvmd-command.o] Fehler 1
make[2]: Leaving directory
`/repo/kiss-linux/lvm2/src/LVM2.2.02.50/daemons/clvmd'
make[1]: *** [clvmd] Fehler 2
make[1]: Leaving directory
`/repo/kiss-linux/lvm2/src/LVM2.2.02.50/daemons'
make: *** [daemons] Fehler 2

How can we fix this?

Marc




  reply	other threads:[~2009-07-30 10:36 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-10 13:20 [Cluster-devel] LVM2 clvmd and STABLE3 Marc
2009-03-10 13:35 ` Chrissie Caulfield
2009-03-10 16:45   ` Marc - A. Dahlhaus
2009-03-10 16:50     ` Chrissie Caulfield
2009-07-30  7:45       ` Marc
2009-07-30  9:01         ` Christine Caulfield
2009-07-30 10:36           ` Marc [this message]
2009-07-30 10:42             ` Christine Caulfield
2009-07-30 10:52               ` Marc
2009-07-30 10:54                 ` Christine Caulfield
2009-07-30 12:32                   ` Marc
2009-07-30 12:39                     ` Christine Caulfield
2009-07-30 13:06                       ` Marc
2009-07-30 13:11                         ` Marc
2009-07-30 13:33                           ` Christine Caulfield

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1248950188.25215.31.camel@marc \
    --to=cluster-devel@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).