[lustre-discuss] Lustre Client on Fedora 23
Michael Watters
wattersm at watters.ws
Fri Sep 30 12:03:17 PDT 2016
Looks like I may be stuck. I went to the build directory and ran
./configure manually which seemed to work but make fails to build.
> 1081 ./configure --program-prefix= --disable-dependency-tracking
--prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin
--sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include
--libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var
--sharedstatedir=/var/lib --mandir=/usr/share/man
--infodir=/usr/share/info --enable-tests --enable-utils --enable-modules
--without-zfs --disable-dlc --with-release=4.7.3_100.fc23.x86_64
--with-linux=/lib/modules/4.7.3-100.fc23.x86_64/source
--with-linux-obj=/lib/modules/4.7.3-100.fc23.x86_64/build
--with-kmp-moddir=extra --disable-server
Here is the make output which appears to be an issue with the
libcfs_string.h file.
> make[3]: Entering directory '/usr/src/kernels/4.7.3-100.fc23.x86_64'
CC [M]
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/libcfs/linux/linux-tracefile.o
In file included from
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/include/libcfs/libcfs.h:125:0,
from
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/libcfs/linux/linux-tracefile.c:40:
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/include/libcfs/bitmap.h: In
function ‘CFS_ALLOCATE_BITMAP’:
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/include/libcfs/bitmap.h:52:247:
error: ‘PAGE_CACHE_SHIFT’ undeclared (first use in this function)
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/include/libcfs/bitmap.h:52:247:
note: each undeclared identifier is reported only once for each function
it appears in
In file included from
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/include/libcfs/libcfs.h:132:0,
from
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/libcfs/linux/linux-tracefile.c:40:
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/include/libcfs/libcfs_string.h:
In function ‘cfs_expr_list_values_free’:
/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/include/libcfs/libcfs_string.h:95:1364:
error: ‘PAGE_CACHE_SHIFT’ undeclared (first use in this function)
scripts/Makefile.build:289: recipe for target
'/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/libcfs/linux/linux-tracefile.o'
failed
make[6]: ***
[/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/libcfs/linux/linux-tracefile.o]
Error 1
scripts/Makefile.build:440: recipe for target
'/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/libcfs' failed
make[5]: *** [/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/libcfs] Error 2
scripts/Makefile.build:440: recipe for target
'/root/rpmbuild/BUILD/lustre-2.8.0/libcfs' failed
make[4]: *** [/root/rpmbuild/BUILD/lustre-2.8.0/libcfs] Error 2
Makefile:1461: recipe for target
'_module_/root/rpmbuild/BUILD/lustre-2.8.0' failed
make[3]: *** [_module_/root/rpmbuild/BUILD/lustre-2.8.0] Error 2
make[3]: Leaving directory '/usr/src/kernels/4.7.3-100.fc23.x86_64'
autoMakefile:1031: recipe for target 'modules' failed
make[2]: *** [modules] Error 2
make[2]: Leaving directory '/root/rpmbuild/BUILD/lustre-2.8.0'
autoMakefile:578: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/root/rpmbuild/BUILD/lustre-2.8.0'
autoMakefile:473: recipe for target 'all' failed
make: *** [all] Error 2
On 09/28/2016 02:13 PM, Patrick Farrell wrote:
> Michael,
>
> I suspect a change in GCC/ld behavior as the cause for your original
> error. I don't think setting PIC mode is the answer, since that
> doesn't work for kernel mode code. I think you're probably compiling
> Lustre with an extremely new GCC/ld version, and some behavior change
> there is causing a failure.
>
> Since it's just in the configure check to see if we're doing cross
> compiling, perhaps you can short-circuit that check? Find it and
> replace it with false (assuming you are not cross compiling...).
>
> Anyway, I think that error is where you should focus. You could try
> rebuilding Lustre directly from source, but I bet you'll hit the same
> error in configure.
>
> - Patrick
> On 09/28/2016 11:20 AM, Michael Watters wrote:
>> Has anybody been able to build the lustre client on Fedora 23 or 24?
>> I'm getting a compile error when I attempt to build the SRPM for
>> 2.8.0 which is shown here.
>>
>> http://paste.fedoraproject.org/437345/77178147/
>>
>> Adding "-fPIC" to the optflags in the spec file also did not help,
>> the build then fails with a different error as follows.
>>
>> EXTRA_KCFLAGS: -include /root/rpmbuild/BUILD/lustre-2.8.0/undef.h
>> -include /root/rpmbuild/BUILD/lustre-2.8.0/config.h -g
>> -I/root/rpmbuild/BUILD/lustre-2.8.0/libcfs/include
>> -I/root/rpmbuild/BUILD/lustre-2.8.0/lnet/include
>> -I/root/rpmbuild/BUILD/lustre-2.8.0/lustre/include
>>
>> Type 'make' to build Lustre.
>>
>> + make -j12 -s
>>
>> Making all in .
>>
>> /root/rpmbuild/BUILD/lustre-2.8.0/lnet/lnet/api-ni.c:1:0: error: code
>> model kernel does not support PIC mode
>>
>> /*
>>
>> ^
>>
>> /root/rpmbuild/BUILD/lustre-2.8.0/lustre/fid/fid_request.c:1:0:
>> error: code model kernel does not support PIC mode
>>
>> /*
>>
>> ^
>>
>> /root/rpmbuild/BUILD/lustre-2.8.0/lustre/fld/fld_request.c:1:0:
>> error: code model kernel does not support PIC mode
>>
>> /*
>>
>> ^
>>
>> scripts/Makefile.build:289: recipe for target
>> '/root/rpmbuild/BUILD/lustre-2.8.0/lnet/lnet/api-ni.o' failed
>>
>> make[6]: *** [/root/rpmbuild/BUILD/lustre-2.8.0/lnet/lnet/api-ni.o]
>> Error 1
>>
>> /root/rpmbuild/BUILD/lustre-2.8.0/lustre/llite/dcache.c:1:0: error:
>> code model kernel does not support PIC mode
>>
>> /*
>>
>>
>> Do I need to build the client from source or use a different lustre
>> version? My servers are all running 2.8.0 on CentOS 7 however we run
>> Fedora on our workstations which doesn't have a native client package.
>>
>> _______________________________________________
>> lustre-discuss mailing list
>> lustre-discuss at lists.lustre.org
>> http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org
>
> _______________________________________________
> lustre-discuss mailing list
> lustre-discuss at lists.lustre.org
> http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org
More information about the lustre-discuss
mailing list