سؤال

ليس من الواضح لي ما هي خيارات الارتباط الموجودة لـ Boost.Thread 1.34.1 مكتبة. أنا في Ubuntu 8.04 ووجدت ذلك عند استخدام أي منهما boost_thread أو boost_thread-mt أثناء ربط كل من التجميع والتشغيل ، لكنني لا أرى أي وثائق حول هذه الخيارات أو أي خيارات ربط أخرى في الرابط أعلاه.

ما هي خيارات الارتباط Boost.Thread وماذا تعني؟

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

المحلول

نحن سوف...

أول شيء مسلية هو أن -mt المعدل في الاسم هو الإشارة إلى أن المكتبة على ما يرام بالنسبة إلى MultiThreading. مما يمكن أن يقودنا إلى تصديق ذلك boost_thread (بدون هذا المعدل) يمكن أن يكون متعددًا غير آمن ...

لكن الشيء الحقيقي هو ذلك (كما رأينا في مربع أوبونتو 10.04) ، boost_thread هو رابط ناعم ل boost_thread-mt, مما يعني أن الاثنين واحد ونفس الشيء.

إذا كنت ترغب في التحقق من ذلك ، فيمكنك فتح وحدة تحكم على Ubuntu (اجعل وحدة التحكم كاملة لأن الأسماء طويلة) ، ثم اكتب:

cd /usr/lib

للانتقال إلى الدليل حيث توجد مكتبات التعزيز. وثم:

ls -l ./libboost_thread*

التي ستقدم جميع الملفات التي تبدأ بـ libboost_thread, ، مع المعلومات الإضافية. ستكون النتيجة شيئًا مثل:

[...] ./libboost_thread.a
[...] ./libboost_thread-mt.a -> libboost_thread.a

كما ترى، libboost_thread.a هي مكتبة ثابتة ، و libboost_thread-mt.a هو رابط ناعم ل libboost_thread.a

نصائح أخرى

للحصول على مرجع مفصل لنظام تسمية المكتبة Boost ، راجع: http://www.boost.org/doc/libs/release/more/getting_started/unix-variants.html#library-naming

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