مشكلة مع الارتباط ضد Libexpat في Bost Build - لبناء Grapmml

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

  •  23-08-2019
  •  | 
  •  

سؤال

على نظامي، يقع Expat في

/usr/include/expat.h /usr/include/expat_external.h /usr/lib/libexpat.5.0.dylib /usr/lib/libexpat.1.dylib /usr/lib/libexpat.dylib / usr / lib /libexpat.la.

لذلك أقصد المتغيرات المطلوبة لتعزيز البناء graphml

Export EXPAT_INCLUDE = / USR / تشمل تصدير EXPAT_LIBPATH = / USR / LIB

ثم اركض (حيث تولد $ DIR و BUOST $ المسارات التي أريد أن تذهب إليها و Libs للذهاب)

./configure - inacludedir = $ dir / $ boost - libdir = $ dir / $ boost / lib  with-libraries = اختبار، الرسم البياني

أحصل على هذا الخطأ:

LD: لم يتم العثور على المكتبة ل Collect2PAT Collect2: LD عاد 1 حالة الخروج

التي تعزز هو سبب الناجمة عن الخط:

g ++dynamiclib-install_name "libboost_graph-mt-1_35.dylib" -l "/ USR / LIB" - -mt-1_35.dylib " /macosx-version-10.4/Threading-multi/graphml.o

لا أحصل على كيفية العثور على مكتبة المغتربين -L"/usr/lib" و -lexpat كما الحجج؟ فهمي هو أن /usr/lib/libexpat.dylib يشار بالضبط كما -L"/usr/lib" و -lexpat.

جيمفيل لبناء الرسومات هو هنا. وبعد إذا EXPAT_INCLUDE و EXPAT_LIBPATH لم يتم تعيين ثم يحذرك (خطوط 39-41 من Jamfile)

تحذير: لا تحتوي مكتبة الرسم البياني على قارئ الرسومات الاختياري.
ملاحظة: لتمكين دعم الرسومات، قم بتعيين Expat_include و
ملاحظة: الدلائل التي تحتوي على رؤوس المغتربين والمكتبات، على التوالي.

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

المحلول

تحديث آخر:لا أرى ملف .so أو a .a في قائمة ما لديك من حيث المغتربين ... لا يبدو ذلك غريبا بعض الشيء؟ عادة ما سيخلق اسم مستعار لاسم المكتبة

على سبيل المثال /usr/lib/libblah.so -> /usr/lib/libblaah.so.1.2

هو Dynalib بعض ماكنتشيز (لا أستخدم Macs كثيرا)

هو .LA ملحق الإصدار الثابت على هذه المنصة؟

تحديث:

يقتبس حول المسار يبدو مزعجا ... -L "/ USR / LIB"

حاول تغيير هذا إلى -l / USR / LIB ولف / USR / LIB

الأشياء القديمة:

التوجيه للربد لتشمل المسارات خلال خطوة الارتباط هو -l. تحتاج إلى البحث عن بعض إشارات الرابط لتحديثها لتضمين -L Path_to_Expat. لا أعتقد أن الرابط يدفع أي اهتمام ld_library_path. لست متأكدا من الوثائق التي قرأتها لتعيين expat_include أو expat_libpath.

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