Details
-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
None
-
3
-
9223372036854775807
Description
This is an environment of kernel and Lustre which is built by clang instead of gcc on ubuntu24.04.
[ 0.000000] Linux version 6.8.0-49-generic-clang-2 (ubuntu@u2404-srv1) (Ubuntu clang version 18.1.3 (1ubuntu1), Ubuntu LLD 18.1.3) #4 SMP PREEMPT_DYNAMIC Thu Dec 5 14:18:20 UTC 2024 (Ubuntu 6.8.0-49.49-generic 6.8.12)
In addition to LU-18517 and LU-18518, there were other fixes needed on make
clang -rdynamic -shared -export-dynamic \
-o mount_osd_ldiskfs.so \
`llvm-ar -t libmount_utils_ldiskfs.a` \
-ldl -lext2fs
libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -o ll_decode_filter_fid ll_decode_filter_fid.o -lkeyutils
libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -o check_iam check_iam.o -lkeyutils
libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -rdynamic -o l_tunedisk l_tunedisk-l_tunedisk.o l_tunedisk-mount_utils.o -lselinux -lmount ../../libcfs/libcfs/.libs/libcfs.a -ldl -lkeyutils
clang: error: unknown argument: '-export-dynamic'
Attachments
Activity
Link | New: This issue is related to EX-11257 [ EX-11257 ] |
Assignee | Original: WC Triage [ wc-triage ] | New: Sohei Koyama [ skoyama ] |
Fix Version/s | New: Lustre 2.17.0 [ 16192 ] | |
Resolution | New: Fixed [ 1 ] | |
Status | Original: Open [ 1 ] | New: Resolved [ 5 ] |
Description |
Original:
This is an environment of kernel and Lustre which is built by clang instead of gcc on ubuntu24.04.
{code:java} [ 0.000000] Linux version 6.8.0-49-generic-clang-2 (ubuntu@u2404-srv1) (Ubuntu clang version 18.1.3 (1ubuntu1), Ubuntu LLD 18.1.3) #4 SMP PREEMPT_DYNAMIC Thu Dec 5 14:18:20 UTC 2024 (Ubuntu 6.8.0-49.49-generic 6.8.12) {code} In addition to {code:java} clang -rdynamic -shared -export-dynamic \ -o mount_osd_ldiskfs.so \ `llvm-ar -t libmount_utils_ldiskfs.a` \ -ldl -lext2fs libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -o ll_decode_filter_fid ll_decode_filter_fid.o -lkeyutils libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -o check_iam check_iam.o -lkeyutils libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -rdynamic -o l_tunedisk l_tunedisk-l_tunedisk.o l_tunedisk-mount_utils.o -lselinux -lmount ../../libcfs/libcfs/.libs/libcfs.a -ldl -lkeyutils clang: error: unknown argument: '-export-dynamic' {code} |
New:
This is an environment of kernel and Lustre which is built by clang instead of gcc on ubuntu24.04.
{code:java} [ 0.000000] Linux version 6.8.0-49-generic-clang-2 (ubuntu@u2404-srv1) (Ubuntu clang version 18.1.3 (1ubuntu1), Ubuntu LLD 18.1.3) #4 SMP PREEMPT_DYNAMIC Thu Dec 5 14:18:20 UTC 2024 (Ubuntu 6.8.0-49.49-generic 6.8.12) {code} In addition to {code:java} clang -rdynamic -shared -export-dynamic \ -o mount_osd_ldiskfs.so \ `llvm-ar -t libmount_utils_ldiskfs.a` \ -ldl -lext2fs libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -o ll_decode_filter_fid ll_decode_filter_fid.o -lkeyutils libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -o check_iam check_iam.o -lkeyutils libtool: link: clang -fPIC -D_GNU_SOURCE -D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1 -Wno-frame-address -rdynamic -o l_tunedisk l_tunedisk-l_tunedisk.o l_tunedisk-mount_utils.o -lselinux -lmount ../../libcfs/libcfs/.libs/libcfs.a -ldl -lkeyutils clang: error: unknown argument: '-export-dynamic' {code} |
Merged for 2.17