نصب آخرین ورژن gcc بر روی رزبیان

برای نصب یک کتابخانه پردازش متن و هوش مصنوعی احتیاج به کامپایلر gcc ورژن ۴.۹ (یعنی آخرین ورژن ریلیز شده در حال حاضر ) داشتم . ورژن کامپایلر gcc موجود بر روی برد رزبری‌پای ۴٫۶٫۳ بود که متاسفانه از C++11 پشتیبانی نمیکنه ! برنامه من هم به چیزی کمتر از C++11 رضایت نمیداد ، به همین دلیل با یک حقه کوچیک gcc-4.9 رو نصب کردم . احتمالا هر برنامه دیگه ای که احتیاج هست و توی مخازن نیست به این روش میشه نصب کرد :

ابتدا مثل همیشه مخازن و سیستم رو آپدیت میکنیم :

sudo apt-get update
sudo apt-get upgrade

فایل /etc/apt/sources.list/ رو توی ادیتور دلخواهمون باز میکنیم تا یک ویرایش کوچیک روش انجام بدیم :

sudo vim /etc/apt/sources.list

در انتهای لیست ، اسم wheezy رو با jessie عوض میکنیم ! و ادیتور رو میبندیم ( بعد از زدن کلید Esc روی کیبور تایپ میکنیم wq: تا بعد از ذخیره تغییرات از vim خارج بشیم)

deb http://mirrordirector.raspbian.org/raspbian/jessie  main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspbian.org/raspbian/ wheezy main contrib non-free rpi

حالا لیست پکیج ها رو آپدیت میکنیم

sudo apt-get update

برنامه ما به راحتی نصب میشه :

sudo apt-get install gcc-4.9 g++-4.9

و در نهایت لیست مخازن رو به حالت اول برمیگردونیم و دوباره لیست پکیج ها رو آپدیت میکنیم :

sudo vim /etc/apt/sources.list
deb http://mirrordirector.raspbian.org/raspbian/ wheezy  main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspbian.org/raspbian/ wheezy main contrib non-free rpi
sudo apt-get update

کامپایلر پیش فرض همچنان همون کامپایلر قدیمیه ، برای کامپایل کردن برنامه ها با کامپایلر جدید کافیه بعد از دستور gcc یا++g شماره ورژن اونها هم ذکر بشه مثلا:

g++-4.9 test.cpp -o exec

برای اینکه با زدن عبارت gcc کامپایلر جدید فراخوانی بشه میتونیم در انتهای فایل bashrc. کدزیر رو بزنیم ( برای g++-4.9 و gcc-4.9 یک alias تعریف کنیم ) :

g++-4.9 test.cpp -o exec
alias gcc='gcc-4.9'
alias cc='gcc-4.9'
alias g++='g++-4.9'
alias c++='c++-4.9'

Leave a Comment

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *