[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