Как изменить набор инструментов NaCl? - PullRequest
1 голос
/ 23 декабря 2011

Я пытаюсь создать собственный клиентский модуль, который использует improv lib для получения миди-ввода непосредственно в веб-браузере.Но я столкнулся с проблемами, связанными с заголовками таких улучшений, как termio.h, sys / ioctl.h и другими: много заголовочных файлов, которых нет в цепочке инструментов newlib.

Мой вопрос такой:как изменить набор инструментов, который будет использоваться в моем наборе инструментов, чтобы он использовал linux_x86 вместо стандартного набора инструментов linux_x86_newlib?

Страница википедии на Native Client говорит: «Native Client использует Newlibкак его библиотека C, но также доступен порт GNU libc. "и я вижу набор инструментов в папке pepper_1 / toolchain, но как мне указать сценарию build.scons использовать этот альтернативный набор инструментов?

Спасибо всем, кто может подсказать это.

1 Ответ

2 голосов
/ 24 декабря 2011

Модули Native Client не имеют возможности доступа к MIDI-входу.

Уровень доступа к локальным ресурсам (преднамеренно) сильно ограничен: ядро ​​NaCl предоставляет только возможность выделять память, создавать потоки ииспользуйте простой механизм IPC, и стабильный API, предоставляемый Integrated Runtime (IRT), не предоставляет системные вызовы IPC, а предоставляет интерфейс Pepper для доступа к ресурсам на стороне браузера.Интерфейс Pepper предназначен для того, чтобы предоставить модулю NaCl доступ только к тем же видам ресурсов, которые есть у JavaScript, - поэтому использование модуля NaCl не приведет к появлению каких-либо новых уязвимостей (через доступ к ресурсам), которых еще не было.До сих пор это означает хранение в WebFS, уведомления о событиях DOM и т. Д., И, в частности, не включает общий доступ к USB-устройствам или MIDI-доступ.Учитывая это, я подозреваю, что пока веб-платформа не разрешит JavaScript для доступа к MIDI, маловероятно, что Native Client будет иметь доступ.

...