การใช้งาน MinGW เบื้องต้น เขียนโดย อ.จักรกฤษณ์ แสงแก้ว สาขาสารสนเทศศาสตร์ คณะวิทยาการสารสนเทศ มหาวิทยาลัยมหาสารคาม หลายท่านไม่เคยทราบเลยว่าภาษาซีของค่าย GNU ซึ่งเป็นซีที่ใช้งานได้โดยไม่เสียค่าลิขสิทธิ์ สามารถนำมารันบนระบบปฏิบัติการวินโดวส์ได้ เพราะหลายท่านเข้าใจว่าส่วนใหญ่ ค่าย GNU มักจะพัฒนาซอฟต์แวร์ฝั่ง Unix ดังนั้น ในบทความนี้ท่านจะได้พบกับภาษาซีและ C++ ของ GNU ซึ่งมีชื่อเีรียกว่า MinGW ในขณะที่นักพัฒนาบางกลุ่มใช้ MinGW เขียน DLL (Dynamic Link Library) เพื่อใช้งานบนวินโดวส์ได้อีกด้วย เนื้อหาในตอนนี้เป็นการติดตั้ง MinGw สำหรับระบบปฏิบัติการวินโดวส์ ซึ่งประกอบด้วยรายละเอียดดังนี้ 1.1 ดาวน์โหลด MinGW เว็บไซด์ของ MinGW ตั้งอยู่ที่ http://www.mingw.org/ ท่านสามารถค้นหาเอกสารและดาวน์โหลดโปรแกรม MinGW เวอร์ชั่นต่าง ๆ ได้ นอกจากนั้นภายในเว็บไซด์ดังกล่าวยังประกอบด้วยข้อมูลต่าง ๆ ซึ่งเกี่ยวข้องกับการ MinGW รวมถึงข้อมูลเอกสารการใช้งานสำหรับผู้เริ่มต้น ตลอดจนข้อมูลเกี่ยวกับลิขสิทธิ์ผลิตภัณฑ์และข้อมูลทั้งหลายเกี่ยวกับ MinGw 1.2 การติดตั้ง MinGW ดับเบิ้ลคลิ๊กที่ไฟล์ MinGW-3.1.0-1.ExE ท่านจะพบกับข้อความการติดตั้ง Minimalist GNU สำหรับระบบปฏิบัติการวินโดวส์ 32 ให้คลิ๊กปุ่ม Yes เพื่อติดตั้ง หรือคลิ๊ก No เมื่อไม่ต้องการติดตั้ง ท่านจะพบกับการติดตั้ง Minimalist GNU for Win32 Setup Wizard ซึ่งแจ้งให้ผู้ใช้ทราบว่า ควรปิดแอพลคิเคชั่นทั้งหมดที่กำลังรันก่อนที่จะดำเนินการติดตั้ง ซึ่งเป็นการป้องกันข้อผิดพลาดที่อาจเกิดขึ้นในขบวนการติดตั้ง ถ้าพร้อมแล้วให้คลิ๊ก Next หรือหากต้องการยกเลิกให้เลือก Cancel ข้อตกลงและเงื่อนไขของผลิตภัณฑ์ ในขั้นตอนนี้เป็นการแจ้งให้ทราบเกี่ยวกับลิขสิทธิ์การใช้งาน ท่านสามารถอ่านรายละเอียดดังกล่าวจากนั้น คลิ๊ก Yes ถ้าท่านยอมรับเงื่อนไขเกี่ยวกับผลิตภัณฑ์หรือคลิ๊ก No หากท่านไม่ยอมรับ การแจ้งรายละเอียดของผลิตภัณฑ์ ซึ่งรายละเอียดส่วนนี้เก็บเอาไว้ในไฟล์ /mingw/doc/mingw/mingw_packages.rtf ภายหลังที่มีการติดตั้ง MinGw อย่างสมบูรณ์ เลือกไดเร็คทอรี่ ในขั้นตอนนี้เป็นการกำหนดตำแหน่งที่ท่านต้องการติดตั้ง ซึ่งค่าปกติถูกกำหนดเอาไว้ที่ไดเร็คทอรี่ c:\MinGw ท่านสามารถเปลี่ยนแปลงไดเร็คทอรี่ดังกล่าวตามความพึงพอใจของท่านได้ พร้อมที่จะติดตั้งหรือไม่ ? ในขั้นตอนนี้ระบบการติดตั้งทำการรายงานผลข้อมูลการติดตั้งได้แก่ ไดเร็คทอรี่ที่ใช้ในการติดตั้ง ถ้าไม่ต้องการแก้ไขให้คลิ๊ก Install หากต้องการยุติการติดตั้งให้คลิ๊กปุ่ม Cancel ขั้นการติดตั้ง ในขั้นตอนนี้เป็นการคัดลอกระบบไฟล์ทั้งหมดของ MinGw เพื่อเก็บไว้ในไดเร็คทอรี่ที่กำหนด ท่านต้องรอจนกว่าจะติดตั้งจนเสร็จเรียบร้อย ในระหว่างนี้หากท่านเกิดเปลี่ยนใจและต้องการยกเลิกการติดตั้ง สามารถคลิ๊กที่ปุ่ม cancel ได้ รูปที่ 1 แสดงสถานะการติดตั้ง ติดตั้งเสร็จสมบูรณ์ รูปที่ 2 แสดงสถานะติดตั้งอย่างสมบูรณ์ 1.3 การกำหนดพาร์ท การกำหนดพาร์ท เป็นภาระกิจที่เราต้องกระทำเอง เพราะ MinGw ไม่ได้กำหนดให้เรา การกำหนดพาร์ทสำหรับวินโดวส์ต่ำกว่า 98 ลงมา หากท่านใช้ระบบปฏิบัติการวินโดว์สที่ต่ำกว่า Windows 98 ท่านสามารถกำหนดพาร์ทโดยตรงที่ไฟล์ Autoexec.bat โดยเพิ่มรายละเอียดต่อไปนี้เข้าไปในไฟล์ดังกล่าว SET PATH=C:\MINGW\BIN;%PATH% กำหนดพาร์ทสำหรับวินโดวส์ 2000 และ XP ถ้าท่านใช้ระบบปฏิบัติการวินโดวส์ 2000 และวินโดวส์ XP ให้ท่านคลิ๊กขวาที่ MyComputer และเลือกเมนู Properties รูปที่ 3 แสดงเมนู Properties ขั้นตอนถัดไปคือเลือกแท็ป Advanced ให้ท่านคลิ๊กที่ปุ่ม Environment Variables... รูปที่ 4 แสดงแท็บ Advanced และปุ่ม Environment Variables... ให้ดับเบิ้ลคลิ๊กที่ตัวแปรชื่อ PATH และเขียนข้อมูลเพิ่มต่อเข้าไปที่ส่วนท้ายโดยขั้นด้วยเครื่องหมายเซมิโคลอน ดังนี้ รูปที่ 5 แสดงเมนูการกำหนดตัวแปร Path ภายในวินโดวส์ 2000 และ XP ให้ท่านเขียนต่อที่ส่วนท้ายของ Variable Value โดยคั่นด้วยเครื่องหมายเซมิโคลอน (;) และตามด้วยคำว่า C:\MINGW\BIN;%PATH% จากนั้นให้คลิ๊กที่ปุ่ม OK สองครั้งเพื่อปิดวินโดวส์ Edit User Variable และวินโดวส์ Environment Variables ตามลำดับ 1.4 เริ่มเขียนโปรแกรมแรก การเขียนและคอมไพล์โค๊ดภาษา C ขั้นตอนพอเป็นสังเขป คือ 1. สร้างซอร์สโค๊ดด้วยเท็กซ์อิดิเตอร์ทั่วไป เช่น Notepad หรือ Edit จากนั้นบันทึกไฟล์ด้วยนามสกุล .c 2. คอมไพล์ด้วยคำสั่ง gcc ในตัวอย่างนี้เป็นการสร้างโค๊ดภาษา C ขอให้ท่านพิจารณาขั้นตอนต่อไปนี้ ตัวอย่าง : การสร้างและคอมไพล์ซอร์สโค๊ด ( C ) C:\>md src C:\>cd src C:\src>copy con hello.c #include <stdio.h> int main() { printf("Hello World"); return 0; } ^Z 1 file(s) copied. C:\src>gcc hello.c -o hello.exe C:\src>hello.exe Hello World C:\src> จากตัวอย่างด้านบน คำสั่ง md src หมายถึงการสร้างไดเร็คทอรี่ชื่อ src ภายใต้ไดเร็คทอรี่รูท คำสั่ง cd src หมายถึงการย้ายไดเร็คทอรี่ปัจจุบันที่กำลังใช้งานไปเป็น c:\src คำสั่ง copy con hello.c เป็นการสร้างไฟล์ในดอส ซึ่งคล้ายคำสั่ง cat ในระบบยูนิกส์ จากนั้นให้ท่านพิมพ์โค๊ดภาษาซีได้ตามปกติ เมื่อต้องการบันทึกไฟล์ ให้กดแป้น Ctrl + Z (กดแป้น Ctrl ค้างไว้แล้วกดแป้น z ตามลงไปหนึ่งครั้ง) และตามด้วยการกดแป้น Enter อีกหนึ่งครั้ง ท่านอาจจะใช้ notepad หรือ editor อื่น ๆ เพื่อสร้างซอร์สโค๊ดภาษาซีได้เช่นเดียวกัน แต่อย่าลืมว่าส่วนขยายต้องกำหนดเป็น .c หลังจากสร้างไฟล์เสร็จเรียบร้อยแล้วให้ทำการคอมไพล์ด้วยคำสั่ง gcc hello.c -o hello.exe ถ้าคอมไพล์ปรากฎไฟล์ hello.exe ในไดเร็คทอรี่ปัจจุบัน และเราสามารถเรียกใช้งานด้วยการพิมพ์ hello.exe ผลลัพธ์ที่ได้จะแสดงคำว่า Hello World ให้ปรากฎบนจอภาพคอมพิวเตอร์ การเขียนและคอมไพล์โค๊ดภาษา C++ 1. สร้างซอร์สโค๊ดด้วยเท็กซ์อิดิเตอร์ทั่วไป เช่น Notepad หรือ Edit จากนั้นบันทึกไฟล์ด้วยนามสกุล .cpp 2. คอมไพล์ด้วยคำสั่ง g++ ในตัวอย่างนี้เป็นการสร้างโค๊ดภาษา C++ ขอให้ท่านพิจารณาขั้นตอนต่อไปนี้ ตัวอย่าง : การสร้างและคอมไพล์ซอร์สโค๊ด ( C++ ) C:\src>copy con hello.cpp #include <iostream> int main() { std::cout << "Hello C++ World" << std::endl; return 0; } ^Z 1 file(s) copied. C:\src>g++ hello.cpp -o hellocpp.exe C:\src>hellocpp.exe Hello C++ World C:\src> จากตัวอย่างนี้เป็นโค๊ดภาษา C++ ดังนั้นเราจะคอมไพล์ด้วยคำสั่ง g++ hello.cpp -o hellocpp.exe ถ้าคอมไพล์ผ่านจะปรากฎไฟล์ hellocpp.exe ในไดเร็คทอรี่เดียวกับซอร์สโค๊ด และสามารถสั่งให้ทำงานได้ด้วยการพิมพ์คำสั่ง hellocpp.exe ซึ่งผลลัพธ์จะแสดงคำว่า Hello C++ World ให้ปรากฎบนจอภาพคอมพิวเตอร์ 1.5 สรุป เนื้อหาที่ได้กล่าวไปทั้งหมดนั้นเป็นการแนะนำการใช้งานและติดตั้งโปรแกรม MinGW สำหรับระบบปฏิบัติการวินโดวส์ 32 ท่านจะพบว่าคอมไพล์เลอร์ตัวนี้มีขนาดเล็กและมีประสิทธิภาพสูง และที่สำคัญคือท่านสามารถใช้สร้างแอพลิเคชั่นโดยไม่ต้องเสียค่าลิขสิทธิ์อีกด้วย ถ้าศึกษาลงไปในรายละเอียดลึก ๆ จะพบว่าคอมไพล์เลอร์ MinGW มีความสามารถสูงมาก ท่านสามารถสร้างแอพลิเคชั่นวินโดวส์ และสามารถสร้าง Dynamic Link Library (DLL) ได้ด้วย สำหรับเนื้อหาในตอนนี้ของบรรยายเอาไว้เพียงแค่นี้ พบกันใหม่โอกาสหน้าครับ