کامپایل و نصب پکیج از سورس روی vps

وقتی که بر روی یک سیستم لینوکس یا VPS کار می کنید. برای نصب پکیج های مورد نیاز شما پکیج از طریق apt و یا پکیج منیجرهای دیگر قابل دسترس است. اما در بعضی موارد ممکن است پکیج مورد نیاز شما در یک مخزن در دسترس نباشد یا به یک نسخه جدیدتر نیاز داشته باشید.در این مقاله می خواهیم نحوه کامپایل و نصب curl از سورس را با هم ببینیم. اصول اولیه انجام اینکار در مورد اکثر پکیج ها یکسان است. و می شود در بسیاری از موارد از آن استفاده کرد.


کامپایل و نصب پکیج از سورس روی vps

پیش نیازها

برای کامپایل سورس ها در لینوکس، به پکیجی که در سیستم های مبتنی بر دبیان که ” build-essential” و در سیستم های Development Tools ” CentOS ” نامیده می شود. و شامل کامپایلرها و کتابخانه های gcc/g++ مورد نیاز برای کامپایل پکیج ها می باشد نیاز خواهید داشت .

برای نصب این پکیج روی دبیان و اوبونتو دستور زیر:

apt-get install build-essential

و روی لینوکس CentOS دستور زیر را اجرا کنید :

yum groupinstall "Development Tools"
بعضی از پکیج ها به منظور کامپایل و یا اجرای عملیات پس از آن، به وابسته های نصب پکیج نیاز دارند. هنگامی که از apt و یا پکیج منیجرهای دیگر استفاده می کنید، معمولا این موارد را برای شما انجام می دهند. هنگام کامپایل کردن پکیج های خود ، باید از نصب پکیج های مورد نیاز اطمینان حاصل کنید .

از آنجا که در این مثال نحوه کامپایل کردن curl آموزش داده میشود، باید همه پیش نیازها را از قبل فراهم کنید. با این حال برای نصب سورس کامپایل شده ، به دسترسی های روت یا sudo در VPS نیاز دارید .



دریافت و کامپایل کردن سورس روی VPS
دانلود تاربال ( Tarbal) :
اولین چیزی که نیاز دارید دانلود سورس کد curl است. در این مثال ما از Tarbal موجود در وب سایت curl استفاده می کنیم. در صورت تمایل میتوانید URL نسخه فعلی curl را در دستور زیر قرار دهید :


این دستور، سورس کد را با عنوان curl.tar.gz دانلود و در دایرکتوری فعلی ذخیره می کند.
سپس باید Tarbal را با استفاده از دستور زیر از حالت zip خارج کنید:

tar -xvzf curl.tar.gz

سورس در فولدری به نام ” curl- ” که در ادامه آن ، شماره نسخه نوشته شده ، ذخیره میشود. اگر دستور زیر را تایپ کنید :
ls
یک خروجی مشابه زیر مشاهده خواهید کرد:

user@droplet:~/curl ls
curl-7.32.0 curl.tar.gz


در این مثال نام فولدر، “curl-7.32.0” می باشد ، بنابراین برای ورود به فولدر دستور زیر را تایپ کنید:

cd curl-7.32.0
کانفیگ و کامپایل کردن سورس
در داخل پوشه، فایل های مختلفی مشاهده خواهید کرد. اما در حال حاضر، فقط باید بر روی فایل configure تمرکز کنید. “configure” یک اسکریپت طراحی شده برای کمک به اجرای یک برنامه در تعداد زیادی از کامپیوترها می باشد. دستور زیر را اجرا کنید :

./configure
با اجرای این دستور به طور خودکار از متغیرهای سیستم شما برای کانفیگ و آماده کردن سورس برای VPS استفاده خواهد شد. با انجام این کار، کامپایلر می داند که کتابخانه های مورد نیاز سورس یا در این مثال curl را کجا جستجو کند. علاوه بر این، محل نصب پکیج را نیز کشف خواهد کرد. پس از انجام این کار، فایلی با نام makefile شامل تمامی اطلاعات ایجاد میشود. برای کامپایل سورس دستور زیر را اجرا کنید:

make
کامپایل در مدت یک دقیقه یا بیشتر انجام خواهد شد. پس از پایان کامپایل ، برای نصب، دستور زیر را اجرا کنید:

make install

Make با توجه به این دستور در Makefile ، پکیج کامپایل شده را نصب خواهد کرد:
اگر curl به درستی نصب شده باشد ، با تایپ curl ، چیزی شبیه به متن زیر مشاهده خواهید کرد:

curl: try 'curl --help' or 'curl --manual' for more information
در صوت مشاهده ارور bash ، دستور زیر را اجرا کنید :
ln -s /usr/local/bin/curl /usr/bin/curl

با این کار در /usr/bin/curl لینکی ایجاد خواهد شد که آن را به /usr/local/bin/curl متصل می کند و شما میتوانید با تایپ curl به سادگی curl را در کنسول اجرا کنید . این کار معمولا به طور خودکار انجام می شود، اما در برخی موارد اسکریپت configure نمی تواند مکان دقیق نصب را پیدا کند. برای بدست آوردن نسخه فعلی curl دستور زیر را اجرا کنید :
curl -V
خروجی این دستور :
user@droplet:~/curl curl -V
curl 7.32.0 (x86_64-unknown-linux-gnu) libcurl/7.26.0 OpenSSL/1.0.1e zlib/1.2.7 libidn/1.25 libssh2/1.4.2 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtmp rtsp scp sftp smtp smtps telnet tftp
Features: Debug GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP

تمام شد! عملیات کامپایل و نصب curl از سورس با موفقیت انجام شد .

منبع: loadvps.com