2015-11-19 4 views
3

Я смог запустить приложение node.js, используя serialport. Теперь попытаемся перенести его на электрон для кросс-платформенного использования. «NPM установить SerialPort» дали следующие:Проблемы с созданием электронного приложения с serialport

[email protected] install /Users/ylh/0/electron/electron-quick-start-master/node_modules/serialport 
    node-pre-gyp install --fallback-to-build 

    CXX(target) Release/obj.target/serialport/src/serialport.o 
    CXX(target) Release/obj.target/serialport/src/serialport_unix.o 
    CXX(target) Release/obj.target/serialport/src/serialport_poller.o 
    SOLINK_MODULE(target) Release/serialport.node 
    COPY /Users/ylh/0/electron/electron-quick-start-master/node_modules/serialport/build/Release/node-v47-darwin-x64/serialport.node 
    TOUCH Release/obj.target/action_after_build.stamp 

    [email protected] postinstall /Users/ylh/0/electron/electron-quick-start-master/node_modules/electron-prebuilt 
    node install.js 

Когда я запускал приложение с электроном, всплывающее окно жалуется, что

The app provided is not a valid electron app, please read the docs on how to write one: 
https://github.com/atom/electron/tree/master/docs 

Error: Cannot find module '/Users/ylh/0/electron/electron-quick-start-master/node_modules/serialport/build/Release/node-v46-darwin-x64/serialport.node' 

Конечно, версия в каталоге node_modules является node-v47-darwin-x64. Я не знаю, почему npm устанавливает сборки v47, но ищет v46 для запуска.

ответ

3
export npm_config_disturl=https://atom.io/download/atom-shell 
export npm_config_target=0.34.3 
export npm_config_arch=x64 
export npm_config_runtime=electron 
HOME=~/.electron-gyp npm install serialport 

После этого перейдите к /Users/ylh/0/electron/electron-quick-start-master/node_modules/serialport/build/Release/

И переименовывать electron-0.34-darwin-x64 в node-v46-darwin-x64

+0

Я получил это: _ $ HOME = ~/.electron-лавочка НПМ установить SerialPort > serialp[email protected] установить/Пользователи/ylh/0/электрон/электронный-быстрый запуск-мастер/node_modules/serialport > node-pre-gyp install --fallback-to-build – user1860288

+0

try: 'npm install -g node-pre-gyp' –

+1

Спасибо - я прошел мимо компиляции. Теперь нужно отлаживать мой код ... То, что вы предложили, кажется немного черным. Позаботьтесь об этом? Особенно переименование. – user1860288

Смежные вопросы