Как использовать портированную библиотеку для Native Client (NaCl)?

Я просматривал список naclports для портированных библиотек и хочу использовать openssl. для моего родного клиентского расширения. Я не могу найти правильный набор инструкций для установки этих перенесенных библиотек, я скачал сжатый файл openssl и следовал инструкциям, данным в файле INSTALL, но обнаружил некоторые ошибки, которые не могу устранить.


person bawejakunal    schedule 19.03.2015    source источник


Ответы (1)


Чтобы установить библиотеку, портированную на Native Client как часть naclports, вам необходимо:

  • Загрузите и установите NaCl SDK: https://developer.chrome.com/native-client/sdk/download

  • Установите NACL_SDK_ROOT в своей среде так, чтобы он указывал на версию pepper_* в том месте, где вы ее устанавливаете.

    Вы можете явно установить самую последнюю версию: pepper_canary с: ./naclsdk install pepper_canary

  • Синхронизируйте репозиторий naclports: руководство по оплате

    Проверьте ветку, которая соответствует вашему SDK, или master для pepper_canary

  • Чтобы построить openssl, сделайте что-то вроде этого:

      ./bin/naclports --force --from-source install openssl
    

    Если у вас нет локальных модификаций, вы можете снять флаги --force и --from-source.

    Это создаст версию newlib NaCl по умолчанию.

    Вы можете установить TOOLCHAIN в среде на: glibc / pnacl / newlib, чтобы выбрать явную версию.

Затем библиотека будет установлена ​​в ваш SDK.

person Brad Nelson    schedule 19.03.2015
comment
После шага git checkout -b pepper_41 origin/pepper_41 при выполнении gclient sync я получаю эту ошибку: src (ERROR) ---------------------------------------- [0:00:00] Started. _____ src at refs/remotes/origin/master ---------------------------------------- Error: 1> Could not switch upstream branch from refs/remotes/origin/pepper_41 to refs/remotes/origin/master 1> Please use --force or merge or rebase manually: 1> cd /home/kunal/Downloads/naclports/src; git rebase refs/remotes/origin/master 1> OR git checkout -b <some new branch> refs/remotes/origin/master - person bawejakunal; 20.03.2015
comment
Хорошо, я понял, что нам не нужно делать gclient sync после проверки ветки - person bawejakunal; 20.03.2015