ผู้สนับสนุน

วันจันทร์ที่ ๓๑ สิงหาคม พ.ศ. ๒๕๕๒

ทดลอง compile chromium (Linux)

Update 2/Nov/2009 
   ตอนนี้ได้มีการเปลี่ยนระบบการ compile ใหม่เป็นใช้ make แล้ว (ไม่ใช้ hammer) 
   และอาจจะมี pkg ที่ขาดหาย ให้ลองติดตั้ง install-build-deps.sh คือ solution ที่เค้าว่ากันว่าง่ายที่สุดที่จะแก้ปัญหานี้
ถ้าไม่ทำจะมีปัญหาประมาณว่า  /usr/bin/ld: error: cannot find -lbz2


1.get source tarball download ไฟล์จากที่นี่  http://build.chromium.org/buildbot/archives/chromium_tarball.html
2.install depot_tools เครื่องมือในการจัดการ source
apt-get install subversion (ถ้ายังไม่มี)
svn co http://src.chromium.org/svn/trunk/tools/depot_tools
3.get prerequire software
    สำหรับ ubuntu 32 bit
sudo apt-get install subversion pkg-config python perl g++ g++-multilib bison flex gperf libnss3-dev libgtk2.0-dev libnspr4-0d libasound2-dev libnspr4-dev msttcorefonts libgconf2-dev libcairo2-dev libdbus-1-dev
4.untar source และเข้าไป sync ใน source directory 
cd downloads/
tar xvfz chromium.rXXXXX.tgz
mv home ~/workspace/chomium/home
export CRROOT=/home/mossila/workspace/chromium/home/chrome-svn/tarball/chromium
cd $CRROOT
gclient sync --force
5.compile แค่ chrome อย่างเดียว
cd $CRROOT/src/build
hammer chrome 
6.จะได้ executable ออกมาที่ $CRROOT/src/sconsbuild/Debug
---------

ผล compile: fail
ด้วย
ram 1 GB
cpu pentium D 3.00 Ghz
harddisk ว่างมากกว่า 20 GB
ubuntu 9.04 desktop 32 bit
(T^T) อารายยว้าาาา....

Update!
compile สำเร็จด้วย 
virtual box
ram 1.5 GB
cpu 1.7 Ghz
harddisk 12 GB
ubuntu 9.04 desktop 32 bit
---------
แถม
force SCons ให้ re-scan dependency 
hammer --implicit-deps-changed

update tarball หรือ checkout version ล่าสุด
ให้ดูจาก http://build.chromium.org/buildbot/waterfall/ ก่อนว่า tree อยู่ใน สถานะอะไร ถ้า open คือดี update มา compile ได้ แต่ถ้าเป็น closed ให้รอไปก่อนแล้วกลับมาดูใหม่
 
Hammer tools ที่ใช้ในการ build ของ chrome หรือ scons ดูเพิ่มได้ที่ http://www.scons.org/
    "SCons is a fantastic build system, written in Python (1.5.2) that does lots of nice things like automated dependencies, cross platform operation, configuration, and other great stuff. I would have to say that it is probably going to be the best thing for building C/C++ projects in the near future."
    ข้อดี
  • configuration file เป็น python เป็นภาษาโปรแกรมมิ่งจริงซึ่งทำให้แก้หลายๆ ปัญหาในการ build ได้
  • สามารถวิเคราะห์ dependency ให้อัตโนมัติสำหรับ c,c++ และ fortran ไม่จำเป็นต้องใช้ "make depend" หรือ "make clean" อีกต่อไป เพื่อที่จะให้ได้มาซึ่ง dependency. การวิเคราะห์ dependency ง่ายที่จะให้ user เพิ่มหรือกำหนดเองว่าให้ไป scan เพิ่มจากภาษาอื่นๆ หรือชนิดของไฟล์


วันพุธที่ ๑๙ สิงหาคม พ.ศ. ๒๕๕๒

VI Editor

เป็น editor ที่เริ่มใช้ตัวที่ 2 ต่อจาก notepad เรื่องจริงนะ ;) 1

เริ่มเป็น programmer ตัวน้อยๆ ก็โดน vi ยัดเข้าปากเลยครับ T^T แม่มใช้ยากโพด
บ่นพอแระเริ่มเลยละกัน vi มี 2 version หลักๆ ที่เราจะได้ใช้กัน 1. vi 2. vim
vi -ของจริง ไม่ได้แต่ keyboard ฝั่งขวาเลย (ให้ถูกคือแตะไม่ได้เลย) พวก numpad ,ลูกศรต่างๆ
vim -ใช้ง่ายขึ้นเพราะว่า keyboard ฝั่งขวาใช้งานได้แล้ว
ในบางเครื่องเค้าก็จะให้พิมพ์ vi แล้วไปเรียก vim มาใช้เลยถ้าใครได้เจอ vim ก็ถือว่าโชคดีกว่านิดหน่อยละกัน แต่ว่าใน blog นี้ก็จะเรียกรวมกันไปเลยว่า vi นะครับ
vi มี 3 mode
1.พิมพ์ 2. command 3. last line
1.พิมพ์ 2
เข้าสู่ mode นี้ได้ด้วยการพิมพ์ i , a , s , o
i - insert พิมพ์แทรก ข้างหน้าตัวอักษร ,shift i พิมพ์แทรก หน้าบรรทัด
a - append พิมพ์ต่อท้ายตัวอักษร , shift a พิมพ์ต่อท้ายบรรทัด
s - sub... 3 แทนตัวอักษรหรือ replace นั่นเอง เช่น 3s replace 3ตัว, shift s แทนทั้้งบรรทัด
o - open newline ขึ้นบรรทัดใหม่ , shift o แทรกบรรทัดก่อนหน้า
ออกจาก mode นี้้ด้วยการกด escape (esc)
**ระหว่างพิมพ์ สามารถ auto-complete word ได้ด้วย ctrl+n เลือกคำด้วยการกด n ไปเรื่อยๆ โดยกด ctrl ค้างไว้ (เป็น word ที่เคยพิมพ์ไปแล้วเท่านั้น ไม่รู้ว่าถ้าจะเอาจาก lib ของภาษาต้องทำไง)
2. command เป็น mode แรกสุด ที่เข้ามาใน vi เพื่อที่จะทำการเปลี่ยนเป็น mode อื่น
ใน mode นี้ จะมีการเลื่อน key ได้ด้วย h j k l (ซ้าย ลง ขึ้น ขวา) ถ้าเป็น vim ก็เลือกด้วยลูกศรได้เลย
yy copy line
yw copy word
y10w copy 10 words
10yy copy 10 lines
dd cut line
dw cut word
d10w cut 10 words
10dd cut 10 lines
p วาง ,shift p วางก่อนหน้า
w เลื่อน cursor 1 word
10w เลื่อน cursor 10 words
3. last line การพิมพ์เข้าไปเป็นชุดคำสั่งโดยเริ่มจากการพิมพ์ : หรือ / ใน command mode ชุดคำสั่งที่นี่สนใจมีดังนี้
syntax highlight
:syntax off
:syntax on
line wrap
:set wrap
:set nowrap
goto line number
:16
ไปบรรทัดที่ 16
show line number
:set nu
:set nonu
แบ่ง vi เป็น 2 หน้า
:split <filename>
:split myhead.h
สลับ 2 หน้าด้วย ctrl+ww
บันทึก/ออก
:w #บันทึก
:wq #บันทึกแล้วออก
:q #ออก
:q! #บังคับออก
search word
/someword
สามารถกด n เพื่อหน้าต่อได้ next ๆๆๆ , หรือ shift n เพื่อหาย้อนกลับ

  1. เรื่องนี้มีเขียนไว้ที่อื่นด้วยนะ เช่น http://www.thaiopensource.org/?q=node/47
  2. ในตอนลบของ vi ถ้าลบด้วย backspace จะไม่เห็นว่าตัวอักษรหายไปแต่พิมพ์แทนได้เลย แต่ถ้าเป็น vim จะเห็นว่าตัวอักษรหายไป
  3. อะไรไรซักอย่างจำไม่ได้

ระบบภาวะการมีงานทำของบัณฑิต : กรอกตั้งนานได้แค่เนี้ย ต้องใช้ ie6

มหาวิทยาลัยบูรพา
นายหางานดี   มีตังใช้
เลขประจำตัวประชาชน
 :  xxxxxxxxxxxxx
รหัสประจำตัว
 :  xxxxxxxx
คณะ
 :  คณะxxx
สาขาวิชา
 :  xxxx
ได้ตอบแบบสอบถามภาวะการมีงานทำของบัณฑิตเรียบร้อยแล้ว
เมื่อวันที่  xx สิงหาคม  2552
ลงชื่อ...............................................
( นายหางานดี   มีตังใช้ )
xx สิงหาคม 2552


กรอกตั้งนานได้แค่เนี้ย ต้องใช้ ie6 ด้วยถ้าไม่ใช้ สุดท้ายก็ฝืนไม่ใช้ เพราะว่าอยู่บน linux ไม่มี ie กรอกตั้งนานกว่าจะผ่าน แถมกรอกว่าเป็นโปรแกรมเมอร์ดันไม่ผ่าน ผ่านตอนไปกรอกว่าเป็น dancer อืม - -'

สามารถโหลดไฟล์เพื่อแก้ไขมา print ได้ที่นี่