You should be able to work-around the problem by supplying additional arguments to
rpmbuild that will force a client build. For example:
rpmbuild -ba --define 'lustre_name lustre-client'
lustre-client-2.4.3-2.6.32_358.23.2.el6.x86_64.src.rpm
A more complete example, including 3rd party OFED:
rpmbuild --rebuild --define 'configure_args --with-o2ib=/usr/src/ofa_kernel' \
--define 'lustre_name lustre-client'
lustre-client-2.4.3-2.6.32_358.23.2.el6.x86_64.src.rpm
Another possible option is to manage the build through the configure arguments:
rpmbuild --rebuild --define 'configure_args --disable-server --enable-client
--with-o2ib=/usr/src/ofa_kernel' \
lustre-client-2.4.3-2.6.32_358.23.2.el6.x86_64.src.rpm
However, I think that the first option is more consistent, since the
"lustre-client" field is used to manipulate the package dependencies.
Malcolm.
From: HPDD-discuss [mailto:hpdd-discuss-bounces@lists.01.org] On Behalf Of Kumar, Amit
Sent: Saturday, July 19, 2014 8:51 AM
To: hpdd-discuss(a)lists.01.org
Subject: [HPDD-discuss] ReBuilding Lustre Client RPM v2.4.3 from source for RHEL6.5
Dear All,
I am rebuilding client RPMS(from lustre-client-2.4.3-2.6.32_358.23.2.el6.x86_64.src.rpm)
for RHEL 6.5 kernel v2.6.32
And ran into a BUG
https://jira.hpdd.intel.com/browse/LU-3954 that has been fixed in
Lustre 2.5 release. Is there a patch for me to get around this on Lustre 2.4.3
Any help is greatly appreciated. Here is the error snip>>
<snip>
Making all in utils
mount_lustre-mount_utils.o: In function `osd_is_lustre':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:473: undefined reference to
`ldiskfs_is_lustre'
mount_lustre-mount_utils.o: In function `osd_fini':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:662: undefined reference to
`ldiskfs_fini'
mount_lustre-mount_utils.o: In function `osd_init':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:644: undefined reference to
`ldiskfs_init'
mount_lustre-mount_utils.o: In function `osd_enable_quota':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:619: undefined reference to
`ldiskfs_enable_quota'
mount_lustre-mount_utils.o: In function `osd_label_lustre':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:589: undefined reference to
`ldiskfs_label_lustre'
mount_lustre-mount_utils.o: In function `osd_tune_lustre':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:561: undefined reference to
`ldiskfs_tune_lustre'
mount_lustre-mount_utils.o: In function `osd_prepare_lustre':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:529: undefined reference to
`ldiskfs_prepare_lustre'
mount_lustre-mount_utils.o: In function `osd_make_lustre':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:499: undefined reference to
`ldiskfs_make_lustre'
mount_lustre-mount_utils.o: In function `osd_read_ldd':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:448: undefined reference to
`ldiskfs_read_ldd'
mount_lustre-mount_utils.o: In function `osd_write_ldd':
/root/rpmbuild/BUILD/lustre-2.4.3/lustre/utils/mount_utils.c:420: undefined reference to
`ldiskfs_write_ldd'
collect2: ld returned 1 exit status
make[4]: *** [mount.lustre] Error 1
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [all-recursive] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.tMFtJs (%build)
</snip>
Thank you, Amit H. Kumar