رفع مشکل Curl هنگام کامپایل (2)
در قسمت اول درباره خطایی که در زمان کامپایل Curl ممکن است رخ دهد و نحوه برطرف کردن آن صحبت کردیم. که توصیه می شود ابتدا مطلب قسمت اول را مطالعه کنید. ما در این قسمت قصد داریم به ادامه آموزش رفع مشکل Curl هنگام کامپایل (2) بپردازیم. تا انتها همراه ما باشید.
دقت داشته باشید که خطای زیر را هنگام کامپایل در سیستم های 64 بیتی شاید مشاهده کنید :
Curl Compile Error: relocation R_X86_64_32 against `a local symbol’ can not be used when making a shared object; recompile with -fPIC
که به صورت زیر خطا نشان داده می شود :
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libssl.a(s2_clnt.o): relocation R_X86_64_32 against `a local symbol’ can not be used when making a shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-linux-gnu/4.3.2/../../../../lib/libssl.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
این به این معنی می باشد که تنظیمات نیازمند تغییر است. گاهی برای خطاهای -fPIC مثل خطای بالا بهترین راه دوباره کامپایل کردن سورس کتابخانه منبع می باشد. سپس دوباره کامپایل کردن curl به همان شکل ممکن است. با این حال در این مورد علت libssl.a می باشد که بخشی از توزیع سیستم عامل است. پس بنابراین بهتر است از انجام آن اجتناب کرد.
به هر حال راه حل این مشکل به این شکل است که باید اسکریپت bulid را تغییر داد. در بخش مربوط به Curl خط زیر را پیدا کرده :
./configure --disable-file
و آن را به شکل زیر تغییر دهید:
./configure --disable-file --without-pic --disable-shared
توجه داشته باشید که فایل را ذخیره کنید و دوباره دستور زیر را تایپ کنید :
./build curl
و این بار حتما باید برای شما کامپایل شود و مشکل Curl هنگام کامپایل رفع شده باشد. در صورت بروز هر گونه سوال و مشکل در این خصوص می توانید با تیم پشتیبانی مبین هاست تماس حاصل فرمایید. یا با ارسال تیکت با ما در ارتباط باشید.