[Pvfs2-users] build issues during upgrade

Sam Lang slang at mcs.anl.gov
Tue Sep 26 15:40:47 EDT 2006


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
> Pvfs2-users at beowulf-underground.org
> http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users
>



More information about the Pvfs2-users mailing list