ลีนุกซ์บนวินโดวส์ ด้วย CYGWIN

CYGWIN (Unix Simulator) #

คือ ชุดโปรแกรมจำลองสภาพแวดล้อมลินุกซ์ (Linux) บนวินโดวส์ (Windows) เพื่อจำลองสภาพแวดล้อม (Simulate) ให้เหมือนทำงานบนลีนุกซ์ และเตรียมเครื่องมือที่จำเป็นให้เหมือนกับบนลีนุกซ์ โปรแกรมนี้จำเป็นต่อการ Compile Source code มากมาย ที่ถูกพัฒนาให้ใช้ตัวแปลภาษาสำหรับ Linux อาทิ GCC หรือ XWin หรือ Xterm ซึ่งช่วยให้นักพัฒนาเขียน Source code แล้วนำไป Compile ได้ทั้งบน Linux และ Windows โดยไม่ต้องปรับแก้รหัสต้นฉบับ แต่การแปลบน CYGWIN เป็นการใช้งานบน Windows แฟ้มต่าง ๆ ที่ CYGWIN มักจะมีนามสกุลเป็น .exe แต่ขณะใช้งานจะจำลองหน้าต่าง Bash shell ผ่าน Cygwin64 Terminal (C:\cygwin64\bin\mintty.exe) ทำให้รู้สึกเหมือนใช้งานใน Linux เช่น คำสั่ง $ man ls หรือ คำสั่ง $ ls ก็ไม่ต้องพิมพ์ว่า man.exe หรือ ls.exe ที่อยู่ใน C:\cygwin64\bin เป็นต้น หากอยู่ใน Windows แล้วเข้า DOS ผ่าน cmd.exe ก็สามารถใช้ DOS> cd c:\cygwin64\bin แล้วพิมพ์คำสั่ง DOS> ls.exe ได้เช่นกัน


ได้แชร์ blog : ติดเกมมาริโอ้แมว ตอนที่ 2 มาดูกันทำให้แมวดิ้นบน Cygwin ว่าง่ายเพียงใด
ไปยังกลุ่ม C++ C# Java programmers Thailand
และ Programmer thai blood
และ สมาคมโปรแกรมเมอร์ไทย

CatMario = Windows(Cygwin(SourceCode && (G++ && SDL) && (XServer && Xterm)))
- Download : setup.exe (cygwin.com 297 KB)
- Download : setup.exe (mirror.in.th)
- Download : setup.exe (kmitl.ac.th)
- Download : setup.exe (opensce.org)
- Download : .iso (uwinnipeg.ca 702MB)
- Download : .iso (berkeley.edu 1355MB)
- Download : .iso (linuxcenter.ru 3000MB)
ขั้นตอนการติดตั้ง Cygwin64 เมื่อ 8 กันยายน 2560
1. เข้า http://www.cygwin.com 
เลือก download setup-x86_64.exe 
ได้มาเป็น version 2.881 (64 bit) เพราะผมใช้ Win10 64bit แบบ OEM

2. Next ไปตลอดจาก
- Download source = Install from Internet
- Root Directory = C:\cygwin64 เค้ากำหนดมาก็ไม่ได้แก้ไข
- Local Package Directory = D:\pub ไว้เก็บแฟ้มที่ Download มาก่อน install
- Connection = Direct Connection
- Download Site = http://mirrors.sonic.net
- Select Package = default
- Next

3. หลังติดตั้งเสร็จ ใช้เวลา Download ประมาณ 5 นาที
สำรวจดู พบว่า ในห้อง c:\cygwin64 มีแฟ้ม cygwin.bat
หรือ  C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -
ที่ Desktop ก็พบ $ เหมือนกับที่เรียกจาก batch file
หลังติดตั้งได้แฟ้มมา 4809 แฟ้ม ขนาดรวม 108 MB

4. ติดตั้ง Package เพิ่มเติม จะได้ทำ 3 อย่างได้
4.1 Compiler ของ g++
4.2 Library ของ SDL
4.3 X terminal สำหรับเล่นเกม
เริ่มจาก run setup-x86_64.exe  อีกรอบ 
แล้วเลือก Package จะ View แบบ Full แล้ว Search หาแฟ้มที่ต้องการ
หรือสำรวจผ่าน View แบบ Category ก็ได้
[devel]
6.3.0-2 gcc-g++ : GNU Compiler Collection (C++)
6.3.0-2 gcc-core: GNU Compiler Collection (C, OpenMP)
1.2.15-3 libSDL-devel: Simple DirecMedia Layer core library
1.2.12-6 libSDL_image-devel: SDL image loading library
2.0.24-1 libSDL_gfx-devel: SDL primitive graphics library
1.2.12-4 libSDL_mixer-devel: Multi-channel audio mixer for SDL
2.0.11-1 libSDL_ttf-devel: SDL text rendering library
[x11]
1.19.2-1 xorg-server-devel: X.Org SDK for developing drivers and extensions for the Xorg X server
330-1 xterm: X11 terminal emulator
หลังติดตั้งทั้ง 9 Package และผองเพื่อน
แฟ้มเพิ่มขึ้นมาเป็น 16056 แฟ้ม ขนาดรวม 624 MB

5. มีเกมอยู่ใน c:\catmario
$ cd /cygdrive/c/catmario/SyobonAction.exe
$ g++ -c main.cpp แล้วอย่าใช้ $ g++ main.cpp  เพราะจะพบ error เพียบเลย
$ g++ -c loadg.cpp 
$ g++ -c DxLib.cpp 
$ g++ main.o loadg.o DxLib.o -o SyobonAction `sdl-config --libs` -lSDL_gfx -lSDL_image -lSDL_mixer -lSDL_ttf

6. การสั่งให้เกมทำงาน
$ XWin :0 คือ X Server
$ DISPLAY=:0.0 xterm คือ X Terminal และ Display ต้องพิมพ์ใหญ่
$ /cygdrive/c/catmario/SyobonAction.exe
แฟ้ม SyobonAction.exe มีขนาด 294 KB
จะ Run ปกติใน CYGWIN64 Terminal ไม่ได้
พบ error message ที่โปรแกรมดักไว้
ว่า Unable to init SDL: No available video device
http://www.thaiall.com/blog/burin/8906/
Screen SampleDetails











http://goo.gl/72BPC