Dear All, I got some troubles while I compile ALPS-1.3.5 library~ When I run "make" after "./configure",it gives following error
make[2]: 正在进入目录 `/home/cheng/SourceCode/alps-1.3.5/lib/alps' /bin/bash ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I../../src -I../../src -DNDEBUG -g -O2 -MT filelock.lo -MD -MP -MF .deps/filelock.Tpo -c -o filelock.lo `test -f '../../src/alps/parapack/filelock.C' || echo './'`../../src/alps/parapack/filelock.C libtool: compile: g++ -DHAVE_CONFIG_H -I../../src -I../../src -DNDEBUG -g -O2 -MT filelock.lo -MD -MP -MF .deps/filelock.Tpo -c ../../src/alps/parapack/filelock.C -fPIC -DPIC -o .libs/filelock.o ../../src/alps/parapack/filelock.C: In member function ‘void alps::filelock::lock(int)’: ../../src/alps/parapack/filelock.C:93: error: ‘S_IWRITE’ was not declared in this scope make[2]: *** [filelock.lo] error 1 make[2]:Leaving directory `/home/cheng/SourceCode/alps-1.3.5/lib/alps' make[1]: *** [all-recursive] error 1 `/home/cheng/SourceCode/alps-1.3.5/lib' make: *** [all-recursive] error 1
My OS is Ubuntu10.10 amd64,I find 'S_IWRITE' is defined in sys/stat.h But according to source file /src/alps/parapack/filelock.C,this head file won't be include because the following code
#if defined(ALPS_HAVE_WINDOWS_H) # include <sys/stat.h> # include <io.h> #endif
Is it a bug or just because i have not configured my OS properly?
Thank you!
Kun Chen
Hi,
2010/11/12 陈锟 chenkun@mail.ustc.edu.cn:
../../src/alps/parapack/filelock.C: In member function 'void alps::filelock::lock(int)': ../../src/alps/parapack/filelock.C:93: error: 'S_IWRITE' was not declared in this scope
...snip...
My OS is Ubuntu10.10 amd64,I find 'S_IWRITE' is defined in sys/stat.h
...snip...
Is it a bug or just because i have not configured my OS properly?
This is a known problem on Ubuntu 10.10. Just add: #include <sys/stat.h> on top of src/alps/parapack/filelock.C.
Best regards,
comp-phys-alps-users@lists.phys.ethz.ch