Một vài tuần trước, Google đã thông báo rằng Chrome OS sẽ sẵn sàng phát hành vào mùa thu này. Giống như nhiều sản phẩm của Google, Chrome OS được thiết kế để thay đổi trò chơi. Không có ứng dụng dành cho máy tính để bàn nào, như chúng tôi thường nghĩ về chúng. Thay vào đó, toàn bộ trải nghiệm người dùng xảy ra trong trình duyệt. Đương nhiên, một số người nghĩ rằng điều này là vô lý trong khi những người khác xem nó như là sự tiến hóa tự nhiên của công nghệ. Sự thành công hay thất bại của Chrome OS thậm chí có thể là nhân tố chính trong việc xác định liệu sự tiến hóa đó có xảy ra hay không. Nếu bạn muốn tìm hiểu chính mình, dưới đây là cách xây dựng hình ảnh Chrome OS.

Về mặt kỹ thuật, chúng tôi đang biên dịch Chromium OS, nhưng hai thuật ngữ có thể hoán đổi cho nhau trong phạm vi của hướng dẫn này.

Điều gì sẽ xảy ra

Chúng tôi đang xây dựng một hệ điều hành đầy đủ, không chỉ là một ứng dụng riêng lẻ, vì vậy bạn có thể mong đợi nhiều hơn về các bước liên quan và thời gian cho đến khi hoàn thành. Điều đó nói rằng, nó không phải là một quá trình rất khó khăn, và hầu hết thời gian liên quan sẽ chờ đợi tải xuống để hoàn thành và mã để biên dịch. Sẽ rất hữu ích khi có kinh nghiệm biên dịch phần mềm trên Linux, chẳng hạn như những gì được mô tả ở đây. Tùy thuộc vào tốc độ Internet và CPU, quá trình này có thể mất từ ​​1 đến 4 giờ, nhưng một lần nữa, phần lớn thời gian đó được dành cho việc tải xuống và biên dịch.

Điều kiện tiên quyết

Để thực hiện việc xây dựng đúng cách, bạn sẽ cần phải chạy một bản cài đặt Linux 64 bit. 32-bit hiện không được hỗ trợ như một môi trường xây dựng, nhưng điều đó có thể thay đổi trong tương lai. Google khuyến cáo Ubuntu cho mục đích này, vì vậy đó là hệ điều hành được giả định bởi phần còn lại của hướng dẫn này.

Để cài đặt tất cả phần mềm cần thiết để xây dựng Chrome OS đúng cách, chỉ cần chạy phần mềm sau từ thiết bị đầu cuối:

 sudo apt-get cài đặt bison fakeroot flex g + + g ++ - multilib gperf libapache2-mod-php5 libasound2-dev libbz2-dev libcairo2-dev libdbus-glib-1-dev libgconf2-dev libgl1-mesa-dev libglu1-mesa-dev libglib2.0 -dev libgtk2.0-dev libjpeg62-dev libnspr4-dev libnss3-dev libpam0g-dev libsqlite3-dev libxslt1-dev libxss-dev mesa-common-dev msttcorefonts vá perl pkg-config python python2.6-dev rpm subversion libcupsys2-dev libgnome-keyring-dev subversion 

Một thứ không có trong kho lưu trữ của Ubuntu là gói công cụ kho của Google, nhưng đó là việc tải xuống và trích xuất đơn giản. Bấm vào đây để lấy tệp tar.gz và giải nén nó vào thư mục chính của bạn. Bây giờ bạn sẽ có một thư mục gọi là depot_tools trong nhà của bạn.

Bây giờ, chỉ cần thêm vị trí đó vào đường dẫn lệnh của bạn với:

 #Thêm tệp này vào tệp ~ / .bashrc của bạn để làm cho tệp xuất vĩnh viễn PATH = $ PATH: ~ / depot_tools 

Lấy mã nguồn

Chúng tôi sẽ tạo một thư mục chrome trong nhà của bạn để giữ tất cả các tệp cho bản dựng này, sau đó tải xuống mã nguồn. Nó sẽ tải xuống vài trăm megabyte, vì vậy có thể sẽ mất một lúc.

 mkdir ~ / chrome cd ~ / cấu hình chrome gclient http://src.chromium.org/git/chromiumos.git đồng bộ hóa gclient 

Xây dựng nguồn

Trong các bước tiếp theo này, chúng ta sẽ bắt đầu các kịch bản sẽ thực sự xây dựng mã đó thành các tệp nhị phân có thể sử dụng được. Các lệnh sau đây sẽ biên dịch mã nguồn cho bộ vi xử lý x86 chung, một thứ sẽ chạy khá tốt trên CPU trung bình của bạn, nhưng không được tối ưu hóa cho bất kỳ một bộ xử lý cụ thể nào.

 cd ~ / chrome / chromiumos.git / src / scripts ./make_chroot #Điều này tạo môi trường cơ bản, sẽ mất vài phút ./enter_chroot.sh #Enters môi trường cơ bản 

Tại thời điểm này, bạn sẽ có một dấu nhắc tương tự như sau:

Và bây giờ để thực hiện thịt thực sự của quá trình này, việc xây dựng thực tế.

 ./setup_board --board = x86-generic #Define architecture ./build_packages --board = x86-generic #Đây là bản dựng thực sự. Sẽ mất ít nhất vài phút. 

Nếu mọi việc suôn sẻ, bạn đã sẵn sàng cho bước cuối cùng…

Tạo hình ảnh

Cuối cùng, chúng ta phải tạo ra một hình ảnh của hệ thống này mà chúng ta có thể sử dụng trên các thiết bị của chúng ta hoặc các máy ảo. Để xây dựng hình ảnh cơ bản, hãy quay lại trình bao của bạn và nhập…

 ./build_image --board = x86-generic 

... và ngồi xuống uống trà trong khi chờ.

Khi hoàn tất, bạn sẽ nhận được một số thông tin về chính xác vị trí tệp hình ảnh được đặt, cùng với một số chi tiết hữu ích về cách tự động tạo loại hình ảnh cụ thể hơn cho nhu cầu của bạn, chẳng hạn như USB, VMWare hoặc Virtualbox.

Trước khi bạn có thể chạy các tập lệnh đó, bạn cần phải thoát khỏi môi trường chroot bằng cách nhập

 lối thoát 

Trong ví dụ này, chúng ta sẽ xây dựng cho Virtualbox. Hãy chắc chắn rằng bạn thay thế vị trí thư mục với vị trí trên hệ thống của bạn.

 ./image_to_virtualbox.sh \ --from = ~ / chrome / chromiumos.git / src / build / images / x86-generic / YOURIMAGELOCATION \ --to = ~ / chromeOS.vdi 

Các vấn đề?

VMWare / Virtualbox : Thật không may, có vẻ như là một lỗi trong một số phiên bản của tập lệnh image_to_vmware cũng ảnh hưởng đến kịch bản image_to_virtualbox. Nếu bạn gặp lỗi về "Không thể mở / usr / lib / shflags", thì bạn phải chỉnh sửa nhanh image_to_vmware.sh và thay đổi dòng

 sudo "$ TEMP_MNT" / postinst / dev / sda3 

đến

 sudo "$ TEMP_MNT" / postinst / dev / sda3 –postcommit 

.
USB : Có vẻ như tập lệnh image_to_usb không thích dấu ngã (~) trong cờ từ . Nếu bạn gặp lỗi nói rằng nó không thể tìm thấy hình ảnh, hãy đảm bảo sử dụng đường dẫn đầy đủ trong cờ từ .

Chrome OS có phải là điều lớn tiếp theo hay là một bước đi sai hướng?