[라즈베리파이] Python 프로그램을 라즈베리파이에서 실행 가능한 바이너리로 빌드 하기
2022. 5. 17. 15:49ㆍ프로젝트 로그/테스트x솔루션 JIG 개발기
반응형
Python으로 작성된 프로그램을 임베디드 보드에 설치 해서 출시 할 때, 코드 형태로 실행 하게 되면 제품의 보안 문제와
제품의 소스코드를 통채로 노출 하게 되는 단점이 있다.
이를 해결 하기 위해, PyInstaller를 이용하여 Python 프로그램을 실행 가능한 바이너리로 만들 수 있다.
별다른 작업 없이 PyInstaller를 설치 하고 실행하면 x86(인텔) 프로세서용 실행 파일이 만들어 진다. 하지만 라즈베리파이는 ARM 프로세서로 구성되어 있기 때문에 ARM용 실행 파일을 만들어야 하는데, ARM 실행 파일을 만들기 위해서는 PyInstaller에 별도의 작업을 해야 한다.
해당 작업 절차는 아래 글을 참고 한다.
https://kaizen8501.tistory.com/207
실행 파일 만들기 위한 명령
pyinstaller --onefile --clean -p /home/pi/testxStdJig_V2 /home/pi/testxStdJig_V2/main.py
Pyinstaller 옵션
변환 방식
-D, --onedir | -F, --onefile |
1개 폴더로 변환(기본값) | 1개의 exe파일로 변환 (체감상 전자보다 실행속도가 느림) |
Path 지정
-p DIR, --paths DIR |
프로그램이 수행하기 위한 기본 Path 지정 |
이름 지정
-n NAME, --name NAME |
변환될 이름 지정, 별도로 지정하지 않을 경우 스크립트 이름을 따라감 (예 : -n 테스트.exe) |
콘솔 윈도우 여부
-c, --console, --nowindowed | -w, --windowed, --noconsole |
콘솔 윈도우 표시(기본값) | 콘솔 윈도우 표시 안함 |
파일추가
--add-data <SRC;DEST or SRC:DEST> |
프로그램 실행시 추가적으로 필요한 파일이 있을 경우 사용 소스파일과 경로 구분자는 윈도우 환경에서는 세미콜론(;), 유닉스 환경에서는 콜론(:)으로 구분한다 함 |
추가 옵션 정보
https://pyinstaller.org/en/stable/usage.html
참고자료
반응형
'프로젝트 로그 > 테스트x솔루션 JIG 개발기' 카테고리의 다른 글
[Github Action] Github Action을 이용하여 간단한 배포 자동화 구축하기 #2 (0) | 2022.05.26 |
---|---|
[Github Action] Github Action을 이용하여 간단한 배포 자동화 구축하기 #1 (0) | 2022.05.24 |
[라즈베리파이]opencv-python 설치 및 No module named 'cv2' 해결 (0) | 2022.05.19 |
[라즈베리파이]PyQt로 작성한 Application 서비스 등록 및 자동 실행 설정 (0) | 2022.05.18 |
[라즈베리파이] 라즈베리파이 용 PyInstaller Bootloader 설치 (0) | 2022.05.16 |