Несколько недель назад Google объявил, что ОС Chrome будет готова к выпуску этой осенью. Как и многие продукты Google, Chrome OS меняет правила игры. Настольных приложений, как мы обычно думаем, нет. Вместо этого весь пользовательский интерфейс происходит в браузере. Естественно, одни люди думают, что это смешно, а другие видят в этом естественную эволюцию технологий. Успех или провал Chrome OS может даже стать важным фактором в определении того, произойдет ли это развитие. Если вы хотите узнать это сами, вот как создать образ Chrome OS.
Технически мы компилируем Chromium ОС, но в рамках данного руководства эти два термина взаимозаменяемы.
Что ожидать
Мы создаем полную операционную систему, а не просто отдельное приложение, поэтому вы можете ожидать большего с точки зрения количества необходимых шагов и времени до завершения. Тем не менее, это не очень сложный процесс, и большую часть времени потребуется дождаться завершения загрузки и компиляции кода. Было бы полезно иметь предыдущий опыт компиляции программного обеспечения для Linux, например того, что описано здесь. В зависимости от скорости Интернета и ЦП этот процесс может занять от 1 до 4 часов, но, опять же, большая часть этого времени тратится на ожидание загрузки и компиляции.
Предпосылки
Чтобы правильно выполнить сборку, вам потребуется установить 64-разрядную версию Linux. 32-разрядная версия в настоящее время не поддерживается в качестве среды сборки, но это может измениться в будущем. Google рекомендует для этой цели Ubuntu, поэтому в остальной части этого руководства предполагается, что это ОС.
Чтобы установить все программное обеспечение, необходимое для правильной сборки Chrome OS, просто запустите в терминале следующее:
sudoapt-get installbison fakeroot flexg++ 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 patchperl pkg-config python python2.6-dev rpm subversion libcupsys2-dev libgnome-keyring-dev git-core subversion
Единственное, чего нет в репозиториях Ubuntu, так это пакета Google Depot-tools, но его можно просто загрузить и извлечь. Щелкните здесь, чтобы получить файл tar.gz и распаковать его в свой домашний каталог. Теперь у вас дома должен быть каталог с именем depot_tools.
Теперь просто добавьте это местоположение в свой путь к команде с помощью:
#Add this to your ~/.bashrc file to make it permanentexportPATH=$PATH:~/depot_tools
Получение исходного кода
Мы собираемся создать в вашем доме каталог chrome, в котором будут храниться все файлы для этой сборки, а затем загрузим исходный код. Будет загружено несколько сотен мегабайт, так что это, вероятно, займет некоторое время.
mkdir ~/chromecd ~/chromegclient config http://src.chromium.org/git/chromiumos.gitgclient sync
Создание источника
На следующих шагах мы запустим сценарии, которые фактически встраивают код в пригодные для использования двоичные файлы. Следующие команды скомпилируют исходный код для универсального процессора x86, который должен хорошо работать на вашем среднем процессоре, но не оптимизирован для какого-либо конкретного.
cd ~/chrome/chromiumos.git/src/scripts./make_chroot #This creates the base environment, will take a few minutes./enter_chroot.sh #Enters base environment
На этом этапе у вас должно появиться приглашение, подобное следующему:
А теперь перейдем к сути этого процесса, собственно, к сборке.
./setup_board --board=x86-generic #Define architecture./build_packages --board=x86-generic #This is the real build. Will take a few minutes at least.
Если все прошло хорошо, вы готовы к последнему шагу ...
Создание изображения
Наконец, нам нужно создать образ этой системы, который мы можем использовать на наших устройствах или виртуальных машинах. Чтобы создать базовый образ, вернитесь в свою оболочку и введите…
. / build_image - доска=x86-общий
… И сядь попить чаю, пока ждешь.
По завершении вы получите некоторую информацию о том, где именно был размещен файл изображения, а также некоторые полезные сведения о том, как автоматически создать более конкретный тип изображения для ваших нужд, например USB, VMWare или Virtualbox.
Прежде чем вы сможете запустить эти скрипты, вам нужно будет выйти из среды chroot, набрав
выход
В этом примере мы собираемся создать для Virtualbox. Убедитесь, что вы заменили каталог на то, что есть в вашей системе.
./image_to_virtualbox.sh \ --from=~/chrome/chromiumos.git/src/build/images/x86-generic/YOURIMAGELOCATION \--to=~/chromeOS.vdi
Проблемы?
VMWare / Virtualbox. К сожалению, в некоторых версиях сценария image_to_vmware есть ошибка, которая также влияет на сценарий image_to_virtualbox. Если вы получаете сообщение об ошибке "Не удается открыть / usr / lib / shflags", вам нужно быстро отредактировать image_to_vmware.sh и изменить строку
sudo"$TEMP_MNT"/postinst /dev/sda3
к
sudo"$TEMP_MNT"/postinst /dev/sda3 –postcommit
.
USB: похоже, скрипту image_to_usb не нравится наличие тильды (~) во флаге from. Если вы получаете сообщение о том, что изображение не может быть найдено, обязательно используйте полный путь во флаге from.
Станет ли Chrome OS следующим большим достижением или это шаг в неверном направлении?
7 комментариев
Комментарии закрыты.
конечно, будет неплохо вернуться вовремя. как 60 лет назад. когда компьютер управляется централизованно. в конце концов, способность вернуться во времени можно рассматривать как эволюцию. после централизованных вычислений человечество движется в каменный век. звучит весело!!!!!
Спасибо за хороший способ. но каковы характеристики вашего компьютера, на котором вы это строите? На сборку и компиляцию у меня уходят часы.
Я построил на Core 2 Duo в 64-битной Ubuntu. Весь процесс, от начала до конца, занял у меня около 4 часов.
У меня есть четырехъядерный процессор Intel, и это заняло у меня примерно столько же времени. Я могу успешно его построить. Однако создание образа виртуального бокса не удается, и если я создаю загрузочный USB-накопитель, он не загружается и жалуется на панику ядра.
Спасибо!
На 2xXeon 5335 (8 ядер) 12 ГБ ОЗУ заняло около 1 часа. Код огромен ... Кстати, я не вижу значок Chrome в левом верхнем углу для доступа к приложениям. Я делаю что-то неправильно?
файл git отсутствует!
В наши дни я бы скорее предложил запустить сборку Hexxeh, а не обычную Chrome OS http://chromeos.hexxeh.net/