# electron-ppapi-example Пример Pepper Plugin (PPAPI) для Electron (Chromium), который рисует вращающийся куб на OpenGL (GLES2). ### Linux Нужен wget, gcc (g++) и python 2.7. ``` ./setup-linux.sh ./build-linux.sh ./run-linux.sh ``` ### macOS Тоже нужен wget, g++ (наверное, это Xcode устанавливает /usr/bin/g++) и python 2.7. ``` ./setup-macos.sh ./build-macos.sh ./run-macos.sh ``` ### Windows - Нужен git, bash (я ставил отсюда https://git-scm.com/download/win и там сразу и то и другое), curl, Visual Studio. - `./setup-win.sh` (или руками сделать то что в скрипте) - Открыть solution в VS, убедиться что стоит Release и x86 и запустить сборку. - Если ругается на несовпадение версий, пересобрать либу тем же компилятором, для этого открыть "Developer Command Prompt" вашей версии VS, зайти в nacl_sdk/pepper_49/src и сделать `make TOOLCHAIN=win PROJECTS="ppapi ppapi_cpp ppapi_gles2 pthreads"`. - Если завершается без сборки, надо руками удалить объектники из nacl_sdk/pepper_49/src/{$project}/win. Если либа не создается в nacl_sdk/pepper_49/lib/win_x86_32_host или создается в другом месте, проверить, что переменная `NACL_SDK_ROOT` указывает на правильную папку (nacl_sdk/pepper_49). - Если не собирается pthreads и ругается на struct timespec, то открыть nacl_sdk/pepper_49/include/win/pthread.h и после `#define PTHREAD_H` добавить `#define HAVE_STRUCT_TIMESPEC`. - Когда все готово, запустить `.\electron32\electron.exe .` и магия должна случиться. Это про 32-х битный плагин. x64 что-то пока плохо работает (зависает при запуске).