Update 2/Nov/2009
ตอนนี้ได้มีการเปลี่ยนระบบการ compile ใหม่เป็นใช้ make แล้ว (ไม่ใช้ hammer)
และอาจจะมี pkg ที่ขาดหาย ให้ลองติดตั้ง install-build-deps.sh คือ solution ที่เค้าว่ากันว่าง่ายที่สุดที่จะแก้ปัญหานี้
ถ้าไม่ทำจะมีปัญหาประมาณว่า /usr/bin/ld: error: cannot find -lbz2
2.install depot_tools เครื่องมือในการจัดการ source
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 อย่างเดียว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
cd $CRROOT/src/build
hammer chrome
6.จะได้ executable ออกมาที่ $CRROOT/src/sconsbuild/Debughammer chrome
---------
ผล compile: fail
ด้วย
ram 1 GB
cpu pentium D 3.00 Ghz
harddisk ว่างมากกว่า 20 GB
ubuntu 9.04 desktop 32 bit
(T^T) อารายยว้าาาา....
ด้วย
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 เพิ่มจากภาษาอื่นๆ หรือชนิดของไฟล์