크로스컴파일 17

[electron-forge Error] You may need to re-bundle the app using Electron Packager's "executableName" option.

우선 제 작업 환경을 알려주고 시작하겠습니다. Desktop: Window10 Arch: AMD WSL: Linux Ubuntu (Arch: AMD) Target Compile: Linux (Arch: arm64) 간략하게 설명하자면 윈도우 환경에서 Linux(arm64)로 크로스컴파일을 진행하려고 하는 상황입니다. You may need to re-bundle the app using Electron Packager's "executableName" option. 라는 오류가 나왔다면 아마 크로스컴파일을 시도하는 상황일 경우일텐데 이제부터 자세히 알아보자 1. 문제 이유 electron-forge의 공식 페이지에서 설명하는 컴파일 방법은 총 두 가지다. https://www.electronforge.i..

[Electron] Electron cross compile to Linux on Windows (feat. electron-forge, WSL) 윈도우에서 리눅스로 일렉트론 크로스컴파일 하는 방법

정말 애정하고 있고, 미래에도 가치 있게 쓰일 라이브러리? 스택? 인 electron을 다시 손보게 됐다. 기존에 만들었던 프로그램의 업데이트 및 업그레이드를 위해서 electron 문서를 다시 정독해 보면서 Windows -> Linux로 크로스 컴파일링을 시도하는 삽질과 스토리를 써 내려가겠다. https://www.electronjs.org/docs/latest/ Introduction | Electron Welcome to the Electron documentation! If this is your first time developing an Electron app, read through this Getting Started section to get familiar with the basic..

[node-gyp rebuild]Error: node-gyp failed to rebuild 에러 분석 및 해결 방법 (feat. electron-forge)

기존 프로젝트를 쳐내고 오랜만에 다시 electron을 건들던 중... 과거엔 electron-builder를 이용해서 패키징과 컴파일링을 진행했는데, 이번에 공식 홈페이지에 가보니 electron-forge가 메인 빌더라고 적혀있었다. https://www.electronjs.org/docs/latest/tutorial/tutorial-packaging Packaging Your Application | Electron To distribute your app with Electron, you need to package it and create installers. www.electronjs.org 그래서 electron-forge로 빌더 교체를 진행하고 여러 가지 컴파일링을 시도해 봤다. 그러나....

[라즈베리파이 크로스컴파일] electron 라즈베리파이 앱 개발 프로젝트 완성! 2022예비창업패키지

준비했던 DNC프로그램이 3주? 정도의 기간을 가지고 완성되었다. 버전 1이지만 그래도 나름 알찬 기능들을 담고 있다. 중간중간 문제점들이 많았지만 고민도 많았고 해결됐을 때의 기쁨도 있었다. 이제 앞으로 2022예비창업패키지에 나가서 당선? 되는 일만 남았다!!! 스마트 팩토리 분야에서 공정개선 및 효율성 증대로 해당 제품을 판매하려고 한다. 서류도 미리미리 열심히 쓰고 준비도 많이 해놔야겠다.

[라즈베리파이 크로스컴파일] electron 앱 개발 중 textarea에서 serial data read 문제 발견! 그리고 해결

지금 제작 중인 DNC에서 serila data를 받고 textarea에 표시해주는 프로그램을 만들었다. 그런데 이 textarea가 무슨 문제인지, 한 번 데이터를 받고 다른 작업을 한 다음에 다시 데이터를 받게 되면 textarea에 표시가 되지 않았다. 그래서 data를 받을 때, 콘솔에 찍어봤더니 콘솔에서는 데이터가 정상적으로 표시되고 있었다. 이리저리 찾아보던 중 text.append()를 쓰는 게 문제였단 걸 알게 됐다. 왜 문제였을까??? 공식문서를 봐도 잘 이해가 되지 않지만, 얼핏 이해하기로는 .append() 메소드는 선택된 요소의 마지막에 새로운 HTML요소나 콘텐츠를 추가하기 때문인 것 같다. textarea는 안에 string요소들을 가지고 있는데 HTML요소를 주기 때문에 어떤 ..

[라즈베리파이 크로스컴파일] electron Node.js serialport 첫 번째 시련 해결!

https://it-jm.tistory.com/32 electron 앱 개발중 Node.js serialport에서 첫 번째 시련 앞서 개발했던 DNC에서 첫 번째 시련에 봉착했다. 이 화면에서 serialport의 세팅 값을 설정한 걸 로컬 스토리지에 저장하고, 이 화면의 우측 2번째 버튼인 포트버튼을 누르면 바뀐 세팅 값으로 적용 it-jm.tistory.com 앞전 포스팅에서 봉착했던 첫 번째 시련이 있다. 바로 시리얼 세팅값을 동적으로 적용시켜서 포트를 Open/Close 하고 싶었는데, 그게 잘 되지 않았다. 어마 무시한 능력자들이 있는 Stackoverflow나, Node.js의 깃헙에도 올려봤지만 답변이 하나도 안달렸다 ㅠㅠ 혼자서 고민하고 여러가지를 시도해본 결과 답이 나와서 함께 공유하려..

[라즈베리파이 크로스컴파일] electron 앱 개발중 Node.js serialport에서 첫 번째 시련

앞서 개발했던 DNC에서 첫 번째 시련에 봉착했다. 이 화면에서 serialport의 세팅 값을 설정한 걸 로컬 스토리지에 저장하고, 이 화면의 우측 2번째 버튼인 포트버튼을 누르면 바뀐 세팅 값으로 적용하려고 한다. // renderer.js let portname, baudrate, databits, stopbits, Parity, RTSCTS; let portOpen = false; const port = new serialport('COM4', { baudRate: baudrate, dataBits: databits, stopBits: stopbits, parity: Parity, rtscts: RTSCTS, autoOpen: false, }) portBtn.addEventListener('cli..