ย้ายบล็อกไปที่ bact.cc แล้วนะครับ

พ.ร.บ.คอมพิวเตอร์
หยุด ร่างพ.ร.บ.คอมพิวเตอร์
พื้นที่เก็บข้อมูลออนไลน์ ฟรี 2GB จาก Dropbox (sync กับ Windows, Linux, Mac, iPhone, Android ฯลฯ ได้)
Showing posts with label Mac OS X. Show all posts
Showing posts with label Mac OS X. Show all posts

2009-05-14

change JRE/JDK default version in Mac OS X to Java SE 6 (1.6)

(Update 2009.05.16: add JAVA_JVM_VERSION setting)

To build Nutch 1.0, you need JDK 1.6. Unless you'll got [javac] class file has wrong version 50.0, should be 49.0 error message.

For a system that has more than one version of JDK installed. It is possible to change to a desired version only at the time you need it (look for j16 script in this thread). I found myself more convenient with just changed the default version.

เปลี่ยนรุ่นปริยายของ Java Runtime และ JDK ใน Mac OS X ให้เป็น Java SE 6 (1.6)

  1. Install Java SE 6 first. ก่อนอื่น ถ้ายังไม่มี Java SE 6 ในเครื่อง ก็ให้ติดตั้งก่อน. โดย Java SE 6 จะอยู่ใน Java for Mac OS X 10.5 Update 2, ดาวน์โหลดได้ที่เว็บไซต์ developer.apple.com/java. หรือจะปรับรุ่นผ่าน Software Update ก็ได้.
  2. Run Java Preferences app to set the default version. หลังจากติดตั้งเรียบร้อยแล้ว ก็เรียกโปรแกรม Java Preferences ขึ้นมา (อยู่ใน /Applications/Utilities/Java/ หรือพิมพ์ชื่อลง spotlight เลยก็ได้) เพื่อเลือกว่าจะใช้รุ่นไหนก่อนหลัง. ใช้วิธี ลาก วาง. เสร็จแล้วก็ออกจากโปรแกรม.
  3. Point CurrentJDK dynamic link to 1.6. ไปตั้ง dynamic link ของไดเรกทอรี CurrentJDK ให้ชี้ไปหารุ่นที่ต้องการด้วย. เช่น ถ้าอยากให้ 1.6 เป็นรุ่นปริยาย ก็ทำแบบนี้ :
    cd /System/Library/Frameworks/JavaVM.framework/Versions
    sudo rm CurrentJDK
    sudo ln -s 1.6 CurrentJDK
    
  4. Set JAVA_JVM_VERSION environment variable. ใน ~/.profile ตั้งค่าตัวแปรสภาพแวดล้อม JAVA_JVM_VERSION เป็นรุ่นที่ต้องการ โดยเพิ่มบรรทัดนี้เข้าไป :
    export JAVA_JVM_VERSION=1.6
    
  5. [optional ไม่ทำก็ได้] Set JAVA_HOME environment variable. ใน ~/.profile อาจจะตั้งค่าตัวแปรสภาพแวดล้อม JAVA_HOME ไว้ด้วย เพิ่มบรรทัดนี้เข้าไป :
    export JAVA_HOME=/Library/Java/Home
    
  6. [optional แล้วแต่] Set Applet Preferences. ถ้าอยากแก้อะไรกุ๊ก ๆ กิ๊ก ๆ เกี่ยวกับการรันแอปเพล็ต ก็เข้าไปแก้ได้ที่แฟ้ม ~/Library/Caches/Java/deployment.properties. ดูวิธีที่ Java for Mac OS X 10.5 Update 2: Setting Java Applet preferences. เช่น อาจแก้ให้ใช้ font-smoothing/anti-alias กับทุกแอปเพล็ตเลย ก็เพิ่มบรรทัดนี้เข้าไป :
    javaplugin.smoothText=true
    

เสร็จแว้ว

แถม : สำหรับคนที่ใช้ MacPorts, Porticus เป็น GUI ที่สะดวกดี. (ประมาณ apt กับ Synaptic Package Manager, แต่ Porticus โง่กว่านิดนึง)

technorati tags: , ,

2009-04-20

modifying setup.py for libthai Python binding in MacPorts environment

(ปรับปรุง 2009.04.21 พบท่าง่ายกว่าเดิม ดูด้านล่าง)

เอา libthai Python binding ที่วีร์ทำเอาไว้มาใช้บน Mac OS X + MacPorts ต้องดัดแปลง setup script นิดนึง

เนื่องจากผมติดตั้ง libthai ผ่านทาง MacPorts (ด้วยคำสั่ง sudo port install libthai) ดังนั้นแฟ้มไลบรารี (libthai.a) กับแฟ้ม include (*.h) ทั้งหลาย จึงไม่ได้อยู่ในตำแหน่งปกติที่ apple-gcc จะวิ่งไปหา (ผมใช้ i686-apple-darwin9-gcc-4.0.1 ลองใช้ gcc-4.2, gcc-mp-4.4 ที่อยู่ในเครื่องแล้ว มันบอกไม่รู้จัก flag โน้น flag นี้ ผมก็เซ็ตไม่เป็นด้วย เลยใช้ gcc ตัวที่เขาให้มาแต่เดิมนี่แหละ) จึงจำเป็นต้องแก้ไข setup.py นิดหน่อย เพื่อบอกตำแหน่งของ include_dirs และ library_dirs ใหม่ ตามนี้ :


from distutils.core import setup, Extension

setup(name="libthai", version="0.0.1",
      ext_modules=[ 
        Extension('libthai', 
                  include_dirs = ['/opt/local/include'],
                  libraries = ['thai'],
                  library_dirs = ['/opt/local/lib'],
                  sources = ['libthai.c']
)])

ก็จะสามารถ build และ install ได้ครับ - ของใครอยู่ที่อื่น ก็แก้ไปตามนั้นครับ - ผมดูตัวอย่างจากเอกสารหน้านี้ : 3. Building C and C++ Extensions with distutils

หมายเหตุ: libthai ที่ใช้นี้ยังเป็นรุ่น 0.1.9 อยู่ ตอนนี้รุ่นล่าสุดคือ 0.1.11 ออกมาไล่ ๆ กับ libdatrie และ swath ตัวใหม่ ติดตามข่าวได้ที่ linux.thai.net / ขอบคุณคุณวีร์ พี่เทพ และทุกท่าน


อัปเดต 2009.04.21: เพิ่งเจอท่าที่ง่ายกว่า ไม่ต้องแก้ setup.py คือเรากำหนดไดเรกทอรีได้ที่บรรทัดคำสั่งเลย ตอน build จากนั้นค่อยสั่ง install อีกที เช่น :


$ sudo python setup.py build_ext --include-dirs=/opt/local/include --library-dirs=/opt/local/lib
$ sudo python setup.py install

หรือจะกำหนดไว้ในแฟ้ม setup.cfg ก็ได้ เผื่อใช้หลายรอบ :


[build_ext]
include-dirs=/opt/local/include
library-dirs=/opt/local/lib

ทั้งหมดนี้ ดูตามเอกสาร 3. Writing the Setup Configuration File

ก่อน build อย่าลืมเปลี่ยน gcc ให้เป็นรุ่นที่เหมาะสม=ใช้แล้วคอมไพล์ผ่าน เช่นกรณีนี้ ผมต้องใช้ gcc 4.0 ก็ให้เลือกด้วย gcc_select (หรือ ln symbolic link เอาเองก็ได้)

$ sudo gcc_select gcc40

ถ้าอยากรู้ว่ามีอะไรให้เลือกบ้าง สั่ง gcc_select -l (ไม่ต้องตกใจ ถ้ามันแสดงน้อยกว่าที่เรามี gcc_select มันแสดงเฉพาะตัวที่มันหาเจอเท่านั้น ก็คือที่มี symbolic link อยู่ในไดเรกทอรีเดียวกับตัว gcc_select มันเอง ... กรณีนั้น ก็ แหะ ๆ ใช้ ln ไปตามเดิมครับ - -")

เช่นเดียวกัน ก่อน install ก็อย่าลืมเปลี่ยน Python ให้เป็นรุ่นที่เหมาะสม=รุ่นที่เราอยากจะติดตั้งตัว extension นี้เข้าไป กรณีผม ผมอยากติดตั้งลงไปใช้กับ Python 2.5 ก็คล้าย ๆ เดิม เลือกด้วย python_select (หรือ ln symbolic link เอาเองก็ได้ เช่นกัน)

$ sudo python_select python25-apple

ป.ล. อะไรคือ mp-gcc ?

technorati tags: , ,

2007-11-28

Open source Java port for Mac OS X

Open Source Java 6 port สำหรับ Mac OS X มาแล้ว (รุ่น Developer Preview Release 2) ใช้ได้ทั้งบน Mac OS X 10.4 และ 10.5 ทั้ง 32-bit และ 64-bit

Java 6 port สำหรับ Mac OS X ตัวนี้ ไม่ได้มาจาก Apple แต่มาจากนักพัฒนาอิสระชื่อ Landon Fuller โดยใช้โค้ดจาก BSD Java port (Mac OS X มีหลายส่วนที่พัฒนาจาก BSD) ซึ่งใช้สัญญาอนุญาต Java Research License (มาจากเจรจาระหว่างโครงการ FreeBSD และ Sun)

Landon มีแผนจะส่งโค้ดนี้เข้าโครงการ BSD Java port ต่อไป และโครงการ BSD Java port เองก็มีเป้าหมายที่จะรวมงานของตนเข้ากับโครงการ OpenJDK (ซึ่งใช้สัญญาอนุญาต GPLv2+Classpath Exception)

ในเว็บไซต์ของ Landon Fuller มีโชว์ Puzzle Pirates ที่รันบน Java 6 port ตัวนี้ด้วย ผมชอบเกมนี้มาก เคยติดงอมแงมอยู่พักนึง นอกจากนี้ก็มีภาพ Eclipse (ตัวอย่างของแอพพลิเคชั่น SWT) ที่ใช้ Carbon ด้วย

Charles Nutter นักพัฒนา JRuby ได้ทดสอบ Open Source Java 6 port ตัวนี้กับ JRuby พบว่าในการทดสอบเลขคำนวณจำนวนเต็ม (fibonacci test) JRuby trunk บน open source Java 6 port มีประสิทธิภาพดีกว่าบน Apple JDK 6 preview และตามหลัง Ruby 1.9 (native) ไม่ไกลนัก และหากให้ JRuby trunk บน open source Java 6 port ทำงานในโหมด frameless execution แล้วมันจะมีประสิทธิภาพดีกว่า Ruby 1.9 อยู่เล็กน้อย

ส่วนในการทดสอบ MatrixBenchmark JRuby บน open source Java 6 port ทำงานเร็วกว่า Ruby 1.9 อยู่ราว 25%

แบบนี้นักพัฒนา (จาวา) จำนวนหนึ่งอาจจะยังใช้ Mac OS X 10.4 ต่อไปได้อีกสักพักใหญ่ ๆ เลยล่ะ ไม่ต้องง้อ Apple แล้วเรื่อง JDK — เว้นว่าถ้าอยากจะเขียนโปรแกรมที่ใช้หน้าตาแบบ Cocao ด้วย Java อันนั้นก็อีกเรื่องนึง แต่ถ้าเป็นเรื่องที่ไม่เกี่ยวกับ UI ก็สบายแล้ว

(ตะกี้ได้กิน “ก๊อบ กอบ” ครั้งแรกในรอบหลายปี ได้รสชาติที่ต่างไปจากเลย์จริง ๆ เบื่อเลย์ ตอนแรกจะหยิบเทสโต แต่เหลือบไปเห็นก๊อบ กอบ ซะก่อน ได้เยอะกว่าด้วย มากกว่าตั้ง 10 กรัม :P)

[ ลิงก์ Landon Fuller | ผ่าน Slashdot ]

technorati tags: , ,

2006-09-03

Good software by design

โปรแกรมที่ดีเริ่มที่การออกแบบ โดยคุณ apirak
เกี่ยวกับการออกแบบ UI ของโปรแกรม บางอย่างอาจจะเฉพาะเจาะจงสำหรับ Mac OS X (Aqua) ไปหน่อย แต่รวม ๆ แล้วใช้ได้โดยทั่วไปครับ

tags: | | | | |

2006-07-20

Monolingual Mac OS X

Remove unnecessary UI languages, input methods, and architectures (in Universal Binaries) from your Mac OS X
by Monolingual (GPL) / review.

Ran this on my friend's machine, Mac OS X 10.3.9 with lots of Adobe/Macromedia apps, keeping only English, German, and Thai interfaces + architectues up to Power G4+ ... instantly saved around 1.1 GB of disk space!

tags:

2005-09-23

Java 5 on Mac OS X 10.3

มีทางที่จะใช้ Java 5 บน Mac OS X 10.3 (Panther) ได้ป่ะ ? .. เอาแบบไม่ต้องอัพเกรดเป็น Tiger อ่ะ

Is there any way round to use Java 5 on Mac OS X 10.3 (Panther) ?

coming Eclipse 3.2 and NetBeans 5.0, both require Java 5 .. hmm...

update:

A script to install Java 5 on Panther — Java5ForPanther_v2.sh — thx, Anonymous!
I used to tried this script once with Java 5 Release 1 on Mac OS X 10.3.9 on PPC, not every Java programs work smoothly with it. But you can try your luck ;)

ทำได้! ดาวน์โหลดสคริปต์ที่ชื่อ Java5ForPanther_v2.sh มา เอาไว้สำหรับติดตั้ง Java SE 5 บน Mac OS X 10.3 (ตัว Java SE 5 ดาวน์โหลดได้จากเว็บแอปเปิล .. เวอร์ชั่นล่าสุดเมื่อ 17 ส.ค. 49 คือ release 4 PPC Intel)
เคยลองทีนึง ไม่เวิร์กกะทุกโปรแกรมนะ ระวัง ๆ ละกัน ลองเอง

2005-08-23

Installing PHP on Mac OS X

Soooo easy, just only few clicks! You download a dmg file, open it, double-click an installer, and that's it! The http://127.0.0.1/~yourname/ will be there ready for a PHP scripting!

Note: this is only for Mac OS X Client (the typical one you'll found on desktops/notebooks), not for Mac OS X Server.

ใช้เวลาลง 2 นาที – มาม่ายังไม่ทันสุก ต้องไปกินไวไวควิกหรือคัพนู้ดเดิ้ลวันแทน

2005-04-01