[lustre-discuss] (SOLVED) Unable to compile client in Debian

Alejandro Sierra algsierra at gmail.com
Tue Aug 27 13:18:51 PDT 2019


Hello:

In July I was able to solve this problem, following these steps:

1. Use the previous stable version, stretch, which has the kernel 4.9
and gcc  6.3.
2. Install the package development and module packages, including
debhelper, module-assistant and linux-headers-4.9.0-9-amd64
linux-source-4.9
3. Get the Lustre source code closer to the one the server is using
(on CentOS7), in my case lustre-2.10.8.
4. Compile the kernel
5. Compile lustre for client
    tar xf /usr/src/lustre.tar.bz2
   cd modules/lustre/
   fakeroot make debs
   fakeroot debian/rules binary-modules
6. Install the new created packages:
    sudo dpkg -i lustre-utils_2.10.8-1_amd64.deb
    sudo dpkg -i lustre-tests_2.10.8-1_amd64.deb
    sudo dpkg -i lustre-client-modules-4.9.168_2.10.8-1_amd64.deb
7. Upload the modules
    sudo modprobe lnet
    sudo modprobe lustre
    sudo modprobe ldiskfs
8. Update /etc/fstab and mount Lustre. In my case
    fstab:  172.16.1.200 at tcp0:/lustre /depot lustre  defaults,_netdev 0 0
   mount /depot

And that's it. In has been working without problems since July 16.

Thank you very much for the hints.

-- A.

On Tue, Jun 11, 2019 at 7:33 AM Peter Jones <pjones at whamcloud.com> wrote:
>
> To build on Andreas's comments - it is well understood that 2.10.x will not work with a 4.19 kernel. Newer kernel support was a primary driving factor into switching to 2.12.x for the LTS release branch. Once the work has completed on master we will backport it to b2_12.
>
> On 2019-06-10, 11:39 PM, "lustre-discuss on behalf of Andreas Dilger" <lustre-discuss-bounces at lists.lustre.org on behalf of adilger at whamcloud.com> wrote:
>
>     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
>     Whamcloud
>
>     _______________________________________________
>     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