gui working
This commit is contained in:
@@ -0,0 +1,119 @@
|
||||
# Building Orisys Sensor Demo Executable and Installer
|
||||
|
||||
This guide explains how to package `camera_gui.py` into a standalone executable (.exe) and create an installer.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
1. **Python 3.8+** installed
|
||||
2. **All dependencies** installed:
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
pip install PyQt5 pyqtgraph PyInstaller
|
||||
```
|
||||
|
||||
3. **For creating installer (.exe installer)**:
|
||||
- Download and install [Inno Setup](https://jrsoftware.org/isdl.php) (free, open-source)
|
||||
|
||||
## Method 1: Using PyInstaller (Simple)
|
||||
|
||||
### Option A: Using the spec file (Recommended)
|
||||
|
||||
1. Build the executable:
|
||||
```bash
|
||||
pyinstaller camera_gui.spec
|
||||
```
|
||||
|
||||
2. The executable will be in the `dist` folder: `dist\camera_gui.exe`
|
||||
|
||||
### Option B: Using the build script
|
||||
|
||||
1. Run the build script:
|
||||
```bash
|
||||
python build_exe.py
|
||||
```
|
||||
|
||||
2. The executable will be in the `dist` folder: `dist\camera_gui.exe`
|
||||
|
||||
### Option C: Manual PyInstaller command
|
||||
|
||||
```bash
|
||||
pyinstaller --name=camera_gui --onefile --windowed --icon=orisys_logo_notext.png --add-data="orisys_logo_notext.png;." camera_gui.py
|
||||
```
|
||||
|
||||
## Method 2: Creating an Installer (.exe installer)
|
||||
|
||||
### Using Inno Setup
|
||||
|
||||
1. **Build the executable first** using Method 1 above
|
||||
|
||||
2. **Open Inno Setup Compiler**
|
||||
|
||||
3. **Open the script file**: `build_installer.iss`
|
||||
|
||||
4. **Compile the installer**:
|
||||
- Click "Build" → "Compile"
|
||||
- Or press F9
|
||||
|
||||
5. **The installer will be created** in the `installer` folder: `installer\OrisysSensorDemo_Setup.exe`
|
||||
|
||||
### Customizing the Installer
|
||||
|
||||
Edit `build_installer.iss` to customize:
|
||||
- App name and version
|
||||
- Installation directory
|
||||
- Start menu shortcuts
|
||||
- Desktop icons
|
||||
- License file
|
||||
- Additional files to include
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Common Issues
|
||||
|
||||
1. **"Module not found" errors**:
|
||||
- Add missing modules to `hiddenimports` in `camera_gui.spec`
|
||||
- Or use `--hidden-import=module_name` in PyInstaller command
|
||||
|
||||
2. **Large executable size**:
|
||||
- This is normal - PyInstaller bundles Python interpreter and all dependencies
|
||||
- Consider using `--onedir` instead of `--onefile` for faster startup
|
||||
|
||||
3. **Missing DLL files**:
|
||||
- Ensure Visual C++ Redistributable is installed on target machines
|
||||
- Include required DLLs using `--add-binary` option
|
||||
|
||||
4. **OpenCV/CUDA issues**:
|
||||
- If using CUDA, ensure CUDA DLLs are available
|
||||
- May need to add CUDA paths to `pathex` in spec file
|
||||
|
||||
### Testing the Executable
|
||||
|
||||
1. Test on a clean Windows machine (without Python installed)
|
||||
2. Ensure all required DLLs are included
|
||||
3. Test camera functionality
|
||||
4. Test file saving functionality
|
||||
|
||||
## File Structure
|
||||
|
||||
After building, you should have:
|
||||
|
||||
```
|
||||
dist/
|
||||
└── camera_gui.exe # Standalone executable
|
||||
|
||||
installer/
|
||||
└── OrisysSensorDemo_Setup.exe # Installer (after compiling with Inno Setup)
|
||||
```
|
||||
|
||||
## Distribution
|
||||
|
||||
- **Standalone executable**: Just distribute `dist\camera_gui.exe`
|
||||
- **Installer**: Distribute `installer\OrisysSensorDemo_Setup.exe` for easier installation
|
||||
|
||||
## Notes
|
||||
|
||||
- The executable is large (~100-200MB) because it includes Python interpreter and all dependencies
|
||||
- First launch may be slower as files are extracted
|
||||
- Antivirus software may flag PyInstaller executables - this is a false positive
|
||||
- Consider code signing for production releases
|
||||
|
||||
Reference in New Issue
Block a user