[lustre-discuss] Recompiling client from the source doesnot contain lnetctl

Alexander I Kulyavtsev aik at fnal.gov
Tue Jan 23 10:35:53 PST 2018


Andreas,
It will be extremely helpful to have "rpmbuild --rebuild" to build lustre [client] rpm with the same content and functionality as lustre[-client] rpm from distro.
The client rpm is rebuild most often for different kinds of worker nodes and I see several mails on this list reporting lnetctl is not there.

enable-dlc/disable-dlc flag is not described in manual or lustre wiki (http://wiki.lustre.org/Compiling_Lustre) .

Arman,
for the record:
To get lnetctl into the client rpm on slf6.8 I was need to use flags:
	rpmbuild  --rebuild --without servers --with lnet-dlc --with lustre-utils ./lustre-2.10.2-1.src.rpm

This adds files below to lustre-client-*.rpm wrt build without these flags:
> /etc/lnet.conf
> /usr/lib64/liblnetconfig.a
> /usr/lib64/liblnetconfig.so
> /usr/lib64/liblnetconfig.so.2
> /usr/lib64/liblnetconfig.so.2.0.0
> /usr/sbin/lnetctl

I did not try "--with lnet-dlc" alone but using only --with lustre-utils was not enough.
Probably --enable-utils and --enable-dlc configure arguments can be used for the same effect.
Using flags lnet-dlc and lustre-utils  is in addition to requirement to have libyaml-devel installed on build host.

Alex.

> On Nov 30, 2017, at 2:22 PM, Dilger, Andreas <andreas.dilger at intel.com> wrote:
> 
> You should also check the config.log to see if it properly detected libyaml being installed and enabled “USE_DLC” for the build:
> 
>     configure:35728: checking for yaml_parser_initialize in -lyaml
>     configure:35791: result: yes
>     configure:35801: checking whether to enable dlc
>     configure:35815: result: yes
> 
> Cheers, Andreas
> 
> On Nov 29, 2017, at 05:28, Arman Khalatyan <arm2arm at gmail.com> wrote:
> 
>> even in the extracted source code the lnetctl does not compile.
>> running make in the utils folder it is producing wirecheck,lst and
>> routerstat, but not lnetctl.
>> After running "make lnetctl" in the utils folder
>> /tmp/lustre-2.10.2_RC1/lnet/utils
>> 
>> it produces the executable.
>> 
>> 
>> On Wed, Nov 29, 2017 at 11:52 AM, Arman Khalatyan <arm2arm at gmail.com> wrote:
>>> Hi Andreas,
>>> I just checked the yaml-devel it is installed:
>>> yum list installed | grep yaml
>>> libyaml.x86_64                         0.1.4-11.el7_0                  @base
>>> libyaml-devel.x86_64                   0.1.4-11.el7_0                  @base
>>> 
>>> and still no success:
>>> rpm -qpl rpmbuild/RPMS/x86_64/*.rpm| grep lnetctl
>>> /usr/share/man/man8/lnetctl.8.gz
>>> /usr/src/debug/lustre-2.10.2_RC1/lnet/include/lnet/lnetctl.h
>>> 
>>> are there any other dependencies ?
>>> 
>>> Thanks,
>>> Arman.
>>> 
>>> On Wed, Nov 29, 2017 at 6:46 AM, Dilger, Andreas
>>> <andreas.dilger at intel.com> wrote:
>>>> On Nov 28, 2017, at 07:58, Arman Khalatyan <arm2arm at gmail.com> wrote:
>>>>> 
>>>>> Hello,
>>>>> I would like to recompile the client from the rpm-source but looks
>>>>> like the packaging on the jenkins is wrong:
>>>>> 
>>>>> 1) wget https://build.hpdd.intel.com/job/lustre-b2_10/arch=x86_64,build_type=client,distro=el7,ib_stack=inkernel/lastSuccessfulBuild/artifact/artifacts/SRPMS/lustre-2.10.2_RC1-1.src.rpm
>>>>> 2) rpmbuild --rebuild --without servers lustre-2.10.2_RC1-1.src.rpm
>>>>> after the successful build the rpms doesn't contain the lnetctl but
>>>>> the help only
>>>>> 3) cd /root/rpmbuild/RPMS/x86_64
>>>>> 4) rpm -qpl ./*.rpm| grep lnetctl
>>>>> /usr/share/man/man8/lnetctl.8.gz
>>>>> /usr/src/debug/lustre-2.10.2_RC1/lnet/include/lnet/lnetctl.h
>>>>> 
>>>>> The   lustre-client-2.10.2_RC1-1.el7.x86_64.rpm on the jenkins
>>>>> contains the lnetctl
>>>>> Maybe I should add more options to rebuild the client + lnetctl?
>>>> 
>>>> You need to have libyaml-devel installed on your build node.
>>>> 
>>>> Cheers, Andreas
>>>> --
>>>> Andreas Dilger
>>>> Lustre Principal Architect
>>>> Intel Corporation
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
> _______________________________________________
> 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