[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