كيف يمكنني تلبية-3rd الطرف تمت مشاركته إشارة إلى مكتبة القانون الأساسي عندما أنا خلق الرقائق مكتبة مشتركة بدلا من تنفيذ؟

StackOverflow https://stackoverflow.com/questions/1072068

  •  21-08-2019
  •  | 
  •  

سؤال

وأنا معيل جديد لنظام بايثون في المنزل يستخدم مجموعة من 3 حزبا يشارك مكتبات C عن طريق الرقائق مكتبة المشتركة التي تم إنشاؤها باستخدام مزيج من جرعة كبيرة والنصي setup.py. تم عرض هذه تعمل بشكل جيد حتى وقت قريب.

وتقاسم-3rd الطرف تم تحديث مكتبات C حصول على وظائف جديدة، والآن يمكنني الحصول على خطأ وقت التشغيل التالي، بعد إنشاء نظيف، عندما أحاول تشغيل برنامجنا بيثون الرئيسي (التي تستورد ولدت الرقائق مكتبة المشتركة):

و-sh-3.00 $ الثعبان ams.py

ImportError: /usr/lib/libz4lnx.so: undefined symbol: stat

ولقد وجدت موضوع مناقشة من عام 1999 أن يوضح أن المشكلة هي أن القانون الأساسي هو غير موجودة في libc.so.6، وإنما في libc_nonshared.a، ويوفر حلا: ربط ضد مكتبة ج، وذلك بإضافة -Lc إلى سطر الأوامر الإنشاء.

http://www.redhat.com/archives/pam-list/1999-February/msg00082.html

ولقد أضاف 'ج' إلى قائمة المكتبات في البرنامج النصي setup.py، ولكن هذا لا يغير نتائجي. وأظن أن هذا هو لأنني خلق الرقائق مكتبة مشتركة بدلا من قابل للتنفيذ.

وكيف يمكنني يثبت لل3rd الطرف مشتركة مرجع مكتبة لإحصائيات، نظرا بلدي بناء بيئة؟

وبناء نظام بلدي:

و-sh-3.00 $ lsb_release -a

LSB Version:    :core-3.0-ia32:core-3.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch
Distributor ID: CentOS
Description:    CentOS release 4.6 (Final)
Release:        4.6
Codename:       Final

ونسختي دول مجلس التعاون الخليجي هو:

و-sh-3.00 $ دول مجلس التعاون الخليجي --version

gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-10)

ونسختي بيثون هو:

و-sh-3.00 $ الثعبان -V

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

المحلول 2

وكما اتضح، في الوقت الذي يتجه إلى سينت أو إس 5.3 ربما كان شيء جيد على المدى الطويل، فإن المشكلة الفعلية تبين أنها كانت الطريقة التي libz4lnx بنيت على DVD ان كنت تستخدم أصلا. في عملية الانتقال إلى سينت أو إس 5.3، كما أنني انتقلت إلى بناء أحدث من مكتبة libz4lnx. اليوم، أثناء اختبار شيء آخر، واستخدمت مكتبة من DVD الأصلي وحصلت بالضبط نفس الخطأ رمز غير معروف عند تشغيل برنامج بيثون. التبديل إلى أحدث DVD (نحو شهرين أحدث) حل المشكلة مرة أخرى.

نصائح أخرى

وكان لإيجاد حل لجديد سينت أو إس 5.3 VM وإعادة بناء و / أو إعادة تثبيت المكونات حسب الحاجة.

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