উত্তর:
আপনার যা প্রয়োজন তা হ'ল nmএটির -Dবিকল্প:
$ nm -D /usr/lib/libopenal.so.1
.
.
.
00012ea0 T alcSetThreadContext
000140f0 T alcSuspendContext
U atanf
U calloc
.
.
.
রফতানি স্যামবোলগুলি একটি দ্বারা নির্দেশিত হয় T। অন্যান্য ভাগ করা অবজেক্ট থেকে লোড হওয়া আবশ্যক প্রতীকগুলির একটি থাকতে হবে U। মনে রাখবেন যে প্রতীক টেবিলটি কেবল ফাংশনগুলি অন্তর্ভুক্ত করে না, তবে রফতানি ভেরিয়েবলগুলিও অন্তর্ভুক্ত করে।
দেখুন nm ম্যানুয়েল পৃষ্ঠা দেখুন।
nmছাড়াই ব্যবহার করুন -D।
objdump -T *.so কাজটিও করতে পারে
কোনও ম্যাক-তে আপনাকে ব্যবহার করা দরকার nm *.o | c++filt, কারণ এতে কোনও -Cবিকল্প নেই nm।
ইতিমধ্যে উল্লিখিত অন্যান্য সরঞ্জামগুলির মধ্যে আপনি readelf( ম্যানুয়াল )ও ব্যবহার করতে পারেন । এটি অনুরূপ objdumpতবে বিস্তারিতভাবে আরও যায়। দেখুন এই পার্থক্য ব্যাখ্যা জন্য।
$ readelf -sW /lib/liblzma.so.5 |head -n10
Symbol table '.dynsym' contains 128 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000 0 FUNC GLOBAL DEFAULT UND pthread_mutex_unlock@GLIBC_2.0 (4)
2: 00000000 0 FUNC GLOBAL DEFAULT UND pthread_mutex_destroy@GLIBC_2.0 (4)
3: 00000000 0 NOTYPE WEAK DEFAULT UND _ITM_deregisterTMCloneTable
4: 00000000 0 FUNC GLOBAL DEFAULT UND memmove@GLIBC_2.0 (5)
5: 00000000 0 FUNC GLOBAL DEFAULT UND free@GLIBC_2.0 (5)
6: 00000000 0 FUNC GLOBAL DEFAULT UND memcpy@GLIBC_2.0 (5)