Создание приложения Native Client из ничего - PullRequest
3 голосов
/ 15 марта 2012

Что нужно для создания приложения Native Client с нуля?Я изучил документацию и возился с несколькими приложениями, однако сейчас я перехожу к созданию собственного приложения и не вижу ничего, связанного с созданием основы собственного клиентского приложения.

Ответы [ 2 ]

7 голосов
/ 15 марта 2012

В зависимости от версии SDK, которую вы хотите использовать, у вас есть несколько вариантов.

Pepper 16 и 17: используйте init_project.py или используйте пример в качестве отправной точки

Если вы используете pepper_16 или pepper_17, вы найдете скрипт Python init_project.py в project_templates в SDK. Он настроит полный набор файлов (.cc, .html, .nmf) с комментариями, указывающими, куда вам нужно добавить код. Запустите python init_project.py -h, чтобы увидеть, какие опции он принимает. Дополнительную документацию можно найти по адресу https://developers.google.com/native-client/pepper17/devguide/tutorial.

Pepper 18 и новее: используйте пример в качестве отправной точки

Если вы используете pepper_18 или новее, init_project.py больше не включается. Вместо этого вы можете скопировать очень маленький пример из каталога examples (например, hello_world_glibc или hello_world_newlib для C или hello_world_interactive для C ++) и использовать его в качестве отправной точки.

Пишем полностью с нуля

Если вы хотите написать свое приложение полностью с нуля, сначала убедитесь, что SDK работает, скомпилировав и выполнив несколько примеров. Затем хорошим следующим шагом будет рассмотрение классов pp :: Module и pp: Instance , которые ваше приложение должно будет реализовать.

Со стороны HTML напишите простую страницу с элементом EMBED для модуля Native Client. Затем добавьте обработчики событий JavaScript для loadstart, progress, error, abort, load, loadend и message и попросите обработчики записать данные события, например, в консоль JavaScript , так что можно сказать, что пошло не так, если модуль Native Client не загрузился. Пример load_progress показывает, как это сделать.

Затем создайте файл манифеста (.nmf). Начиная с pepper_18 и далее, вы можете использовать для этого скрипт generate_nmf.py, находящийся в каталоге tools/. Если вы хотите написать его с нуля, в примерах приведены примеры использования newlib и glibc (в настоящее время поддерживаются две библиотеки Standard C). См. hello_world_newlib/ и hello_world_glibc/ соответственно.

Если вы ранее не использовали компилятор семейства gcc, также неплохо было бы взглянуть на Makefile, чтобы увидеть, какие флаги компилятора и компоновщика использовать. Рекомендуется компиляция как для 32-битной, так и для 64-битной версии с самого начала.

0 голосов
/ 15 марта 2012

Самый простой способ - следовать документу по быстрому старту по адресу https://developers.google.com/native-client/pepper18/quick-start,, в частности шаги 5-7 учебного пособия (https://developers.google.com/native-client/pepper18/devguide/tutorial), о которых вы, похоже, и спрашиваете.

...