بروز بودن یه برنامه نویس اول از همه نیازمند تلاش خود اون شخصه و در وحلهی بعد نیازمند بروز بودن امکانات اونه. چه چیزی بهتر از کامپایلرهای متن باز و آزاد که هم به روز هستن و هم قوی و در نهایت رایگان.
کمتر کسی از جامعهی برنامه نویسی اسم gcc رو نشنیده. gcc کامپایلریه که نامش از سرکلمههای Gnu Compiler Collection گرفته شده و ریچارد استالمن در سال 1985 برای ترجمهی برنامههای نوشته شده به زبون c اون شروع به ساخت کرد. (منبع، اطلاعات بیشتر، وبسایت پروژه)
برای داشتن قدرت و امکانات gcc لزومی نداره که کاربر، سیستمعامل خاصی، به عنوان مثال gnu/linux یا gnu/hurd داشته باشه.
توی این پست نحوهی استفاده از GCC توی ویندوز رو توضیح میدم.
قبل از هرچیز به MinGW نیاز داریم. که میتونیم از این لینک نسخهی 5.1.4 اون رو دریافت کنید. حجم زیادی هم نداره و در حقیقت یه برنامه برای دانلود بستههای مورد نیاز هستش.
- اون رو اجرا کنید.
- پنجرهی خوشامد گویی رو با کلید Next جواب بدین.
- اگر روی سیستمی که برنامه رو اجرا کردین میخواین برنامه رو نصب کنید که Download and Install رو انتخاب کنید و اگر میخواین فقط بستهها رو دانلود کنید، Download only رو انتخاب کنید و کلید Next رو بزنید.
- با پروانهی استفاده و توزیع مجدد در صورتی که موافقت دارید، با زدن کلید I Agree موافقت کنید.
- بذارین بستههای نسخهی Current نصب شه. پس Next رو کلیک کنید.
- کامپایلرهایی که نیاز دارین رو علامت دار کنید و با Next به صفحهی بعد برین.
- مکان نصب رو انتخاب کنید و Next رو کلیلک کنید.
- در انتها هم با زدن کلید Install منتظر دانلود شدن (و احتمالا نصب) بستهها باشید.
خب تا اینجا که فقط نصب برنامه بود که خیلی آسون هم بود. اما یه کد نویس علاوه بر کامپایلر به محیط توسعه (IDE) هم نیاز داره. ما که همه چیز رو به صورت آزاد داشتیم، بد نیست از IDE های آزاد هم استفاده کنیم. برای کارهای کوچیک Notepad++ برنامهی خوبیه ولی من به Geany
عادت کردم و اون رو هم به شما پیشنهاد میکنم.
اما یه کار کوچولوی دیگه هم اگر انجام بدیم کارمون خیلی راحت تر میشه. من فرض رو بر این میذارم که شما این MinGW رو توی درایو C ویندوز نصب کردین. اگر اینطور نیست توی توضیحات به جای این آدرس، محل نصب نرمافزار تو سیستمتون رو بذارین. این توضیحات برای ویندوز XP هستش و برای نسخههای دیگهی ویندوز روال مشابهی طی میشه.
- به Control Panel برین.
- اگر گزینهی Performanceand Maintenance رو میبینید (کنترل پانل به صورت Category view هست) رو بزنید.
- System رو انتخاب کنید و اون رو باز کنید.
- سربرگ Advanced رو انتخاب کنید.
- از پایین پنجره کلید Environment Variables رو بزنید.
- از لیست System variables دنبال Path بگردین و از پایین لیست Edit رو کلیک کنید.
- متن زیر رو که آدرس پوشهی bin نرمافزار MinGW نصب شدست رو به همراه یک سیمیکالن به ابتداری متن کادر Variable value اضافه کنید:
C:\MinGW\bin; - تمام پنجرههای باز رو با زدن کلید Ok ببندین.
خب، از این به بعد میتونید بدون تایپ کردن آدرس از g++ و امکانات دیگه استفاده کنید.
اما اگر Geany رو نصب کردین، از همون تو میتونید برنامه رو کامپایل کنید (F8) یا فایل اجرایی رو تولید کنید (F9) و یا برنامه رو اجرا کنید (F5). پس کد زیر رو توی اون کپی کنید، با نام hello.cpp سیو کنید و بعد F9 رو از روی صفحهکلید بزنید و بعد برای اجرای اون کلید F5 رو بزنید. به همین راحتی!
#include<iostream>
using namespace std;
int main(int argc, char** argv){
cout << "Hello MinGW!\tHello Geany!\n";
return 0;
}
خب امیدوارم این پست براتون مفید باشه. بد نیست برنامهی
Cygwin رو هم تست کنید!
محیط توسعهی Netbeans هم خیلی آسون و سریع و قدرتمنه. بد نیست اون رو هم تست کنید.
پن: این پست هم تقدیم به ایشون که بسیار با اراده و مصمم دارن برنامه نویسی رو یاد میگیرن.
پن: یک نمونهی کار بسیار عالی رو هم میتونید اینجا ببینید
بروز رسانی
توی نظرات بحث گرمی در گرفت. خیلیها از جمله خود من با فایل w32api-3.13-mingw32-dev.tar.gz مشکل داشتن که ساسان عزیز یه راه حل خیلی خوب پیشنهاد داد. Mirror دانلود رو عوض کنید تا مشکل حل بشه!









یک راهنما برای کاربران ویندوزی !
اینجاش باحاله ;)
:::::::::: پنجرهی خوشامد گویی رو با کلید Next جواب بدین
گفتی MinGW. امروز میخواستم نصبش کنم فایل Win32 API مشکل داشت و Extract نمی شد. کلی اعصابم رو خورد کرد.
بله. من هم همین مشکل رو داشتم. ولی فکر کردم مشکل از دانلود منه. من اینطور این مشکل رو حل کردم. اومدم و فایل w32api-3.13-mingw32-dev.tar.gz رو دستی از این لینک یا این لینک دانلود کردم و گذاشتم کنار فایلهایی که برنامه خودش دانلود کرده و دوباره برنامهی نصب رو اجرا کردم و مشکل حل شد. شما هم این رو تست کنید شاید برای شما هم جواب داد.
خیلی ممنون که این مورد رو گوشزد کردین.
ممنون ولی این کار هم مشکل من رو حل نکرد. من چند ماه پیش این MinGW رو کامل نصب کرده بودم و از فولدر C:\MinGW بک آپ گرفتم. حالا میتونم همون رو کپی کنم و ازش استفاده کنم؟ مشکلی نداره؟
سلام من دانلود کردم و بدون install باید چگونه نصبش کنم البته تا یه جاهایی پیش رفتم ولی الان مثلا بسته tar رو نمیتونم نصب کنم منظورم نرم افزار tar
چون بسته ها با tar باز میشن!
اگه بخوایم یکم باز تر کنیم این فرایند رو، شما یه برنامه دارین که یک سری بسته رو در درجهی اول دانلود میکنه. و در درجهی دوم اونها رو نصب میکنه. شما به باز کردن فایل tar نیازی ندارین و این خود برنامست این کار رو برای شما انجام میده. در صورتی که توی سیستم عامل شما برنامهی tar وجود داشته باشه، که تمام گنو/لینوکسها این برنامه همراه خودشون هست، فقط کافیه دستور زیر رو برای extract کردن فایل tar بزنید:
tar vxf myfile.tarپس شما باید ابتدا با همین برنامه روی یه سیستم که دسترسی به اینترنت داره فایلها رو بذارین دانلود بشن که میرن توی یه پوشه که معمولن کنار فایل اجرایی برنامه هست. بعد اون فایلها رو جابجا کنید و به سیستمی که میخواین این رو داشته باشین بیارین. و توی سیستم مقصد همون بسته ها رو با همون برنامه نصب کنید. کار آسونیه.
سلام.
ممنون. کاربردی و کامل بود.
NetBeans هم حرف نداره! هم باهاش C++ نوشتم هم Python جدیدا هم زدم تو کار j2me. خیلی خوب با آدم راه میاد.
موفق باشید.
بله. من با نت بینز هم سی مینویسم و هم جاوا اونم همه رقم جاوا. فوق العادست.
سلام، من نسخه ای از mingw رو گرفتم که خودم باید کامپایل کنم (به دلیل اینترنت زغالی)
خودش اینکار رو نمیکنه طبق راهنمای سایتش که پیش رفتم : اول بسته های zlib, gzip رو برای ویندوز گرفتم و نصب شد. مشکل نصب نشدن و نشناختن tar هست با اینکه بسته رو نصب کردم! در کل نتونستم! اگه tar رو بشناسونم(منظورم در Environment Variable)
میتونم نصب کنم! راهنمایی از این سایت رو گرفتم:
http://www.mingw.org/wiki/HOWTO_Install_the_MinGW_GCC_Compiler_Suite
خب میخواین tar رو با برنامهی winrar که برای ویندوزه اکسترکت کنید و تمام پوشههای بسته رو با بستهی mingw مرج کنید. اینطور مشکل فکر میکنم حل شه.
آقا خیلی از دستت شاکیم . کلی وقت گذاشتم نرم افزار رو دانلود کردم و هر کاری کردم نصب نشد . برای وقت مردم ارزش قاعل باش .
آقا شرمنده، ببخشید ولی من این برنامه رو ننوشتم و برنامهی معروفی هم هست. حالا شما نتونستی نصب کنی، خب یکم تلاش کن، من و خیلیهای دیگه دقیقن به همین روش که نوشتم اون رو نصب کردن.
خیلی بی شخصیتید . وقتم را برای این نرم افزاری که ران نمی شه تلف کردم
کاش به جای فحش دادن به من یکم بیشتر تلاش میکردین.
درستش کردم
به جای w32api-3.13-mingw32
w32api-3.12-mingw32 را download کنید و بعد اسمش رو به w32api-3.13-mingw32
و دوباره نصب رو بزنید .
خب این نشون میده که فرایند دانلود بستهی w32api-3.13-mingw32 برای شما فرایندی همراه با خطا بوده. شاید با این پیشنهاد شما مشکل حل شده باشه ولی خیلی بهتره که سعی کنید اون فایل رو دوباره دانلود کنید و نصب کنید. بهتره که MD5 فایل دانلود شده رو چک کنید. این check-sum اون فایل هست.
w32api-3.13-mingw32-dev.tar.gz a50fff6bc1e1542451722e2650cb53b4خوب من این کار رو کردم ولی نشده! یعنی ادامه دستوراتش کار نمیکنه!
ببینم شما تاحالا به این صورت نصب کردید؟
اگه بله ،امکانش هست دستوراتی که زده اید رو من ببینم؟ در cmd
متشکر
راستش کامپایل کردن توی ویندوز فکر نمیکنم به این راحتیها عملی باشه چون به یه کامپایلر نیاز داریم که اون رو نداریم و قراره با این روش اون رو نصب کنیم.
اگر بستههای tar رو برای ویندوز گرفتین، اونها رو یک جا extract کنید، مثلا c:\mytar بعد خب توی این پوشه پوشهای خواهین داشت به نام bin که کافیه آدرس این پوشهی bin رو همون طور که توی پست توضیح دادم به عنوام ادامهی محتویات متغیر Path اضافه کنید. اینطور هر جا بنویسین tar (البته توی cmd) میتونید بستههای tar رو بسازین یا اکسترکت کنید.
توی قسمت Manual Installation اون لینک که به من دادین، دو تا برنامه هست برای فایلهای فشرده و بستههای TAR. اگر میخواین دستی برنامه رو نصب کنید، اون راهنما رو ببینید.
در کل چه از برنامهی نصب خود کار استفاده کنید و چه از نصب دستی، هر دو حالت یک کار رو انجام میدن.
من آدرس رو هم اضافه کردم به Path های سیستم ولی هیچ! اصلا کار نمیکنه و دستورات gcc و g++ رو اصلا نمیشناسه این ویندوز زبون نفهم. تو اوبونتو نصب راه اندازی این GGC فقط یه خط کار داره. من تو اوبونتو از Geany استفاده میکنم برم ببینم نسخه ویندوزش چه جوریه.
آره. اون path رو یک بار با دقت چک کن. من کلی برنامه، حتی فایر فاکس رو هم بهش اضافه کردم و مثل اوبونتو و کلن گنو/لینوکس تمام برنامه هام رو با تایپ اسمش اجرا میکنم.
راستی اگه اینترنت پر سرعت داری، حتمن Netbeansرو دانلود و نصب کن. برای c++عالیه. امکاناتش هم فوق العادست.
تمام مشکل از فایل w32api-3.13-mingw32-dev.tar.gz بود. Mirror سایت SF رو عوض کردم و درست دانلود شد. Installer هم درست کار کرد. الان هم با CMD درست کار میکنه و هم با Geany
Netbeans رو هم دارم ولی زیاد ازش سر در نمیارم. کلا با CMD و bash خیلی راحت ترم.
ممنون.
آقا ممنونم انتقاد سازنده شما باعث تحول در من و وبلاگم شد ( البته داره می شه ) دارم یه تغیراتی در وبلاگم ایجاد می کنم می شه بیاید و نظرتون رو در مورد این تغیرات بهم بگید
سلام
بحث های اینجاتون که خیلی تخصصیه من سعی می کنم در اینده ای نه چندان دور بفهممش
یه سوال آماتور و واقعا احمقانه داشتم
من چهار تا jdk مختلف برای لینوکس دانلود کردم همشون آخرشون پسوند bin. دارن ولی دوتاشون اخرش نوشته x64 و دوتای دیگش نوشته i586 و البته دوتاشون هم قبل اون پسوند بین یه rpm. هم دارند
سوال اینجاست : هیچکدوم نصب نمیشه(تو ubuntu 9.04 ) همش میگه نمی تونه این فایل رو بخونه….از توی ترمینال هم که دستور sudo……. و اینا رو نوشتم نشد
اصلا جالبه من eclipse رو که گذاشتم بدون احتیاج jdk داره کار می کنه و کامپایل می کنه ولی netbeans حتما یه مسیر jdk نصب شده می خواد تا اصلا نصب بشه
آقای — میشه مفصل راهنمایی کنید گیر این کاربر اماتور ubuntu کجاست؟
ممنون
خب بسته به معماری CPU آپشنهای مختلفی برای نرمافزار ها هست. چه لینوکس و چه غیر لینوکس. اگر CPU شما 64 بیتیه، خب از اون x64 استفاده کنید . اون i586 هم نشون دهندهی سازگار بودن با CPU های اینتل i586 و i686 هستش که تقریبن همهی CPU های جدید اینتل رو میتونیم توی این دسته جا بدیم.
خب اما rpm مخفف red-hat package manager هستش که برای توزیعهایی از گنو/لینوکس که red-hat Base هستن، مثل Suse یا Fedora کاربرد داره.
و اون bin که مخفف binary هستش. اون رو باید نصب کنید. ولی چون اون فایل اجرایی نیست، باید به اون اجازهی اجرا شدن داد. با دستور زیر:
chmod +x myfile.binو بعد با دستور زیر اون رو اجرا کرد:
./myfile.binاما خب بهترین راه اینه که JDK رو از مخازن نصب کرد. خیلی خیلی بهتره!
موفق باشید.
بله بله بله! من هم این بک آپ رو همیشه میگیرم و همیشه جواب میده. فقط دقت کنید که متغیرهای محلی رو در هر صورت باید تغییر بدین.