Google NaCl в OS X: как вообще получить информацию об отладке?

Скомпилировав и связав модуль NaCl, я теперь пытаюсь отладить, почему он, по-видимому, не запускается. К сожалению, платформа не передает НИКАКОЙ информации о том, почему ничего не происходит.

Я не могу поверить, что спрашиваю что-то настолько простое, но что вам нужно сделать, чтобы один оператор printf() появился в stdout/stderr? Или в консоли Javascript?

Да, я прочитал страницу SDK об отладке и включил все десятки переменных окружения и флагов, я увеличил детализацию журнала до максимума, и абсолютно ничего из этого не имеет ни малейшего значения. Нигде не появляется никакой информации.

Иногда консоль JS печатает строку «ServiceRuntime::Start (start failed)» (которая также появляется в стандартном выводе), но гораздо чаще я вообще ничего не получаю.

Версия NaCl SDK — 28, я использую Chrome 30 на OS X Mavericks.

Команда, используемая для запуска Chrome с примером Graphics 3D в SDK:

export NACL_EXE_STDERR=~/nacl_stderr.log
export NACL_EXE_STDOUT=~/nacl_stdout.log
open -a "Google Chrome" http://localhost:5103/api/graphics_3d/ --args --enable-logging --no-sandbox --vmodule=ppb*=4

Это должно генерировать массу журналов, но файлы журналов никогда не создаются.


person Reuben Scratton    schedule 29.10.2013    source источник
comment
Было бы полезно, если бы вы могли опубликовать командную строку, которую вы используете для запуска Chrome.   -  person bbudge    schedule 29.10.2013
comment
Должным образом добавлено в ОП!   -  person Reuben Scratton    schedule 30.10.2013


Ответы (1)


Как обсуждалось в списке рассылки, решение состоит в том, чтобы убедитесь, что вы вызываете хром (например, из командной строки), используя фактический путь к двоичному файлу Chrome (например, "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome") вместо использования команды оболочки open, потому что open не дает вам потоки stdout/stderr из приложения, которое оно запускает .

person Derek    schedule 04.11.2013