[lustre-discuss] Unable to compile client in Debian

Andreas Dilger adilger at whamcloud.com
Mon Jun 10 23:39:47 PDT 2019

These problems may relate to using GCC8, which has a lot of new checks
that cause old code to break.  You could try installing an older GCC,
but that may not create modules compatible with your kernel.

The GCC8 issues are being fixed on master, so you might want to try this
again, but at the same time, master is still undergoing a lot of landings
for the 2.13 release and not what I'd recommend for using in production
until the final 2.13.0 release is finished.

If you are using Debian, I'd suggest to download the Ubuntu 18.04 LTS
kernel, which is 4.15 based.  This is built on a regular basis.

Cheers, Andreas

On May 28, 2019, at 14:38, Alejandro Sierra <algsierra at gmail.com> wrote:
> Hello:
> I want to be able to see my lustre 2.10.5 disk in my cluster, but
> every attemp to complile the client code failed.  If I try the same
> version as the server (a Centos7 server) it falis because of the
> -Werror flag with trivial code impossible to correct, like
> util/parser.c:198:13: error: comparison between pointer and zero
> character constant [-Werror=pointer-compare]
>   if (*next == '\0') {
>             ^~
> util/parser.c:198:7: note: did you mean to dereference the pointer?
>   if (*next == '\0') {
>       ^
> util/parser.c: In function ‘Parser_list_commands’:
> util/parser.c:575:25: error: ‘%2d’ directive output may be truncated
> writing between 2 and 10 bytes into a region of size 4
> [-Werror=format-truncation=]
>    snprintf(fmt, 6, "%%-%2ds", char_max - len);
>                         ^~~
> I even tried to erase all Werror flags from the configure and automake
> files but that only make it worse because of the incompatible automake
> versions.
> Then I tried the current release cloned with git and I get errors like these
> lustre-release/lnet/lnet/lib-socket.c:76:8: error: implicit
> declaration of function ‘kernel_sock_ioctl’; did you mean
> ‘lnet_sock_ioctl’? [-Werror=implicit-function-declaration]
>   rc = kernel_sock_ioctl(sock, cmd, arg);
> lustre-release/lustre/llite/namei.c:977:15: error: ‘FILE_CREATED’
> undeclared (first use in this function); did you mean ‘FLD_CREATE’?
>    *opened |= FILE_CREATED;
>               ^~~~~~~~~~~~
>               FLD_CREATE
> lustre-release/lustre/llite/namei.c:988:10: error: too many arguments
> to function ‘finish_open’
>     rc = finish_open(file, dentry, NULL, opened);
>          ^~~~~~~~~~~
> I can't use the available precompiled versions because I need modules
> for my kernel version 4.19.0.
> What can I do?  Any help will be highly appreciated.
> Alejandro A. Sierra
> National Earth Observation Laboratory, Mexico
> http://www.lanot.unam.mx/
> _______________________________________________
> lustre-discuss mailing list
> lustre-discuss at lists.lustre.org
> http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org

Cheers, Andreas
Andreas Dilger
Principal Lustre Architect

More information about the lustre-discuss mailing list