سؤال

أنا أستخدم إصدار Linux من DBXTool لتصحيح برنامج 64 بت يسمى Frankie:

file ../support/frankie
../support/frankie: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.4, dynamically linked (uses shared libs), for GNU/Linux 2.6.4, not stripped

عندما أحاول تحميل الملف القابل للتنفيذ داخل DBXTool، أحصل على رسالة "بنية غير مدعومة"، والتي أفترض أنها تعني أن الإصدار 32 بت من DBX يتم تحميله:

(dbx) debug ~/support/frankie
dbx: ~/support/frankie has unsupported architecture or file format

ومع ذلك، إذا قمت بتشغيل DBX من CommandLine، فمن المفترض تحميل الملف، من المفترض عند تحميل إصدار 64 بت تلقائيا من المصحح.

(dbx) debug ../support/frankie
Reading frankie
Reading ld-linux-x86-64.so.2
Reading libm.so.6
Reading libncurses.so.5
Reading libc.so.6
Reading libdl.so.2

لا يمكنني العثور على أي خيار من شأنه أن أقوم بإجبار DBXTool على استخدام المصحح 64 ولكن، في الواقع هو الوحيد الذي يمكنني العثور عليه هو واحد لإجبار مصحح الأخطاء 32 بت في بيئة 64 بت!

أي اقتراحات؟

هل كانت مفيدة؟

المحلول

يعمل العمل المحيطي لإطلاق DBXTool مع تصحيح البرنامج في سطر الأوامر. على سبيل المثال

dbxtool buggyprogram buggyparameter

هناك أعمال أخرى حولها هي إنهاء جلسة DBX التي يتم تحميلها تلقائيا وفتحها واحدة جديدة.

إذا تلقيت خطأ في الهندسة المعمارية غير المدعومة المرفق بعملية، فقم بتصحيح ملف، ثم إرفاق العملية، وأعد إلغاء الجلسة الحالية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top