انجمن کاربران لینوکس ایران - تکنوتاکس سابق

نسخه ي کامل: یه دستور کاملتر از ldd
شما در حال مشاهده نسخه ي متني اين صفحه هستيد. مشاهده نسخه کامل تر با قالب بندي صحيح
سلام
یه دستور کاملتر از ldd میخام که باهاش بشه API های موجود در فایل های shared library رو که نرم افزارها ازش استفاده میکنن رو هم بهم بگه
تشکر
نمی‌دونم همون چیزی که می‌خواید باشه یا نه، ولی دستور nm رو نگاه کنید.
کد :
man nm
nm - list symbols from object files

مثلاً:
کد :
nm -D /lib/libacl.so

اینجا آموزش خوبی گذاشته:
<!-- m --><a class="postlink" href="http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.html">http://www.yolinux.com/TUTORIALS/Librar ... namic.html</a><!-- m -->
سلام متشکر
اما یک دستوری رو میخام که بگه فلان نرم افزار از فلان لایبری با استفاده از این ای پی آی ها استفاده میکنه

مهمان

دستور ldd در cygwin کار نمی کند من چه فایلی باید دانلود کنم که این کا رممکن شود ؟؟؟؟فوری است!!! :roll:

مهمان

من که متوجه منظورت نشدم
اگه از همین ldd استفاده کنی کلی اطلاعات در باره کتابخانه های مورد استفاده بت میده
مثلا ldd /usr/bin/ssh
با سلام.
برای shared library هایی که با تابع dlopen استفاده شده باشند شما نمی‌توانید از ldd استفاده نمایید.
شما باید اینگونه رفتار نمایید :
l
کد :
ldd /usr/bin/ssh
strace /usr/bin/ssh >myoutput.txt
grep -i dlopen myoutput.txt
در واقع شما باید از starce در کنار ldd بصورت مکمل استفاده نمایید.
در مورد nm باید بگویم که این دستور هدرهای فایل اجرایی را نمایش می‌دهد و اگر فایل اجرایی strip شده باشد قادر به دیدن آنها نیستید.