This is sort of an odd case, but adding the -I $(srcdir)/include at the front of CFLAGS seems harmless. I'll commit the change.

-sam

On Sep 26, 2006, at 10:40 AM, Dries Kimpe wrote:


  Hi,

there is a small problem when:
* DB4 and PVFS2 are aready installed in the same (non-default) directory * trying to compile a newer PVFS2 version, using the already installed DB4 (e.g. CVS)

(I tested this with the CVS version as of 26/09/2006)

configure:

2 [lo-03-02]~/work/pvfs2/pvfs2-cvs/build/ib|> head config.log
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.59.  Invocation command line was

$ ../../configure --disable-karma --prefix=/data/home/dries/inst/ nompi --enable-shared --enable-static --enable-epoll --with-db=/data/home/dries/inst/ nompi LDFLAGS=-Wl,-rpath -Wl,/apps/prod/openib/x86_64/ibgd/driver/infinihost/lib -L/apps/ prod/gcc/3.4.4/lib64 -L/apps/prod/gcc/3.4.4/lib CXXFLAGS=-L/apps/prod/gcc/3.4.4/lib64 - L/apps/prod/gcc/3.4.4/lib
CFLAGS=-L/apps/prod/gcc/3.4.4/lib64  -L/apps/prod/gcc/3.4.4/lib
--with-kernel=/data/home/dries/work/kernel/login-tree/ --enable- mmap-racache --enable-epoll
--with-ib=/apps/prod/openib/x86_64/ibgd/driver/infinihost

The CFLAGS / CXXFLAGS -L stuff is needed because of a libtool bug on mixed AMD64/x86 platforms

Note the --with-db=/data/home/dries/inst/nompi, which is also the directory where an older version
of PVFS2 is already installed.

Trying to make gives this error:

2 [lo-03-02]~/work/pvfs2/pvfs2-cvs/build/ib|> make V=1
gcc -D__GEN_POSIX_LOCKING__ -D__PVFS2_JOB_THREADED__ - D__PVFS2_TROVE_THREADED__ -D__PVFS2_TROVE_AIO_THREADED__ -I/data/home/dries/inst/nompi/ include/ -D__PVFS2_TROVE_SUPPORT__ -D__PVFS2_SERVER__ -D__STATIC_FLOWPROTO_BMI_CACHE__ -L/apps/prod/ gcc/3.4.4/lib64 -L/apps/prod/gcc/3.4.4/lib -D__PVFS2_USE_EPOLL__ - DGOSSIP_ENABLE_BACKTRACE -D__STATIC_METHOD_BMI_TCP__ -D__STATIC_FLOWPROTO_MULTIQUEUE__ - D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I . -I ../../include -I include -I ../.. - I../../src/client/sysint -I../../src/common/misc -I../../src/common/quickhash -I../../src/ common/quicklist -I../../src/common/id-generator -I../../src/common/gossip -I../../ src/common/gen-locks -I../../src/io/trove -I../../src/io/bmi -I../../src/io/description - I../../src/io/buffer
-I../../src/io/job -I../../src/io/dev -I../../src/proto
-DPVFS2_VERSION="\"1.5.1pre1-2006-09-26-152419\"" - D__STATIC_METHOD_BMI_IB__ -DUSE_MMAP_RA_CACHE -pipe -Wall -Wstrict-prototypes -I../../../../src/server ../../ src/server/pvfs2-server.c -c -o
src/server/pvfs2-server-server.o
In file included from ../../src/proto/pvfs2-req-proto.h:15,
                 from ../../src/io/job/job.h:18,
                 from ../../src/server/pvfs2-server.c:28:
../../src/proto/pvfs2-attr.h:56: error: parse error before "PVFS_flags" ../../src/proto/pvfs2-attr.h:56: warning: no semicolon at end of struct or union ../../src/proto/pvfs2-attr.h:74: error: field `hint' has incomplete type
make: *** [src/server/pvfs2-server-server.o] Error 1


Note that the first include directory specified is: -I/data/home/ dries/inst/nompi/include/,
This gets there because of:

SERVERCFLAGS = -D__GEN_POSIX_LOCKING__ -D__PVFS2_JOB_THREADED__ \
-D__PVFS2_TROVE_THREADED__ @MISC_TROVE_FLAGS@ @DB_CFLAGS@ \
-D__PVFS2_TROVE_SUPPORT__ -D__PVFS2_SERVER__

(with @DB_CFLAGS@ getting replaced by -I/data/home/dries/inst/nompi/ include)

and the compile line for the objects is:

$(ADMINOBJS_SERVER): %.o: %.c
        $(Q) "  CC              $@"
$(E) $(CC) $(SERVERCFLAGS) $(CFLAGS) $(call modcflags,$<) $< -c -o $@


This makes the compiler use the OLD PVFS2 headers as opposed to the new, causing the
build to fail.

Solution: adding -I $(srcdir)/include to SERVERCFLAGS or causing this flag to be earlier on the
compiler command line by other means.


  Greetings,
  Dries




Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm

_______________________________________________
Pvfs2-users mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users


_______________________________________________
Pvfs2-users mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users

Reply via email to