Application Descriptor
This commit is contained in:
139
README.md
Normal file
139
README.md
Normal file
@@ -0,0 +1,139 @@
|
||||
# 🚀 PyInstaller Automation Tool
|
||||
|
||||
A powerful and interactive Python script that automates the process of creating executables from Python scripts using PyInstaller. This tool provides a user-friendly menu-driven interface to configure and build your applications with ease.
|
||||
|
||||
## 📋 Features
|
||||
|
||||
- 🖥️ **Interactive Menu** - Easy-to-use terminal interface
|
||||
- ⚡ **Quick Configuration** - Set all PyInstaller options through simple prompts
|
||||
- 📦 **Multiple Build Modes** - Choose between one-file or one-directory compilation
|
||||
- 🎯 **Platform-Specific** - Builds for your current operating system
|
||||
- 🔧 **Customizable Options** - Icon, console mode, optimization levels, and more
|
||||
- 📁 **Additional Files Support** - Include extra files and directories in your build
|
||||
- ✅ **Build Summary** - Review your configuration before compiling
|
||||
- 🛡️ **Error Handling** - Comprehensive error checking and feedback
|
||||
|
||||
## 🚀 Quick Start
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Python 3.6 or higher
|
||||
- PyInstaller (will be installed automatically if missing)
|
||||
|
||||
### Installation
|
||||
|
||||
1. **Download the script:**
|
||||
```bash
|
||||
wget https://git.opentty.xyz/fetuber4095/build-python/raw/branch/master/build.py
|
||||
```
|
||||
|
||||
2. **Make it executable (Linux/Mac):**
|
||||
```bash
|
||||
chmod +x build.py
|
||||
```
|
||||
|
||||
### Usage
|
||||
|
||||
1. **Run the script:**
|
||||
```bash
|
||||
python build.py
|
||||
```
|
||||
|
||||
2. **Follow the interactive prompts:**
|
||||
|
||||
- 📜 **Script Path** - Enter the full path to your Python file
|
||||
- 📦 **Compilation Mode** - Choose between single executable or directory with dependencies
|
||||
- 🖥️ **Console Mode** - Select whether to show console window or run as GUI application
|
||||
- ⚡ **Optimization** - Choose Python optimization level
|
||||
- 🎨 **Custom Icon** - Add a custom icon to your executable
|
||||
- 📁 **Additional Files** - Include extra files needed by your application
|
||||
|
||||
3. **Review and confirm** the build summary
|
||||
|
||||
4. **Wait for compilation** - The tool will automatically run PyInstaller with your selected options
|
||||
|
||||
## 🛠️ Configuration Options
|
||||
|
||||
### Build Modes
|
||||
- **One-file**: Creates a single executable containing all dependencies
|
||||
- **One-directory**: Creates a folder with the executable and all dependency files
|
||||
|
||||
### Console Options
|
||||
- **With console**: Shows terminal window (ideal for CLI applications)
|
||||
- **Without console**: Runs as background process (ideal for GUI applications)
|
||||
|
||||
### Optimization Levels
|
||||
- **No optimization**: Standard compilation
|
||||
- **Basic optimization (-O)**: Removes assert statements and debug code
|
||||
- **Maximum optimization (-OO)**: Additional bytecode optimization
|
||||
|
||||
### Additional Features
|
||||
- **Custom icons** (.ico for Windows, .png for Linux/Mac)
|
||||
- **File inclusion** - Add data files, images, or configuration files
|
||||
- **UPX compression** - Reduce executable size (enabled by default)
|
||||
|
||||
## 📁 Output Structure
|
||||
|
||||
After successful compilation, your files will be organized as follows:
|
||||
|
||||
```
|
||||
project/
|
||||
├── build.py
|
||||
├── your_script.py
|
||||
├── dist/
|
||||
│ ├── your_script # Linux executable
|
||||
│ ├── your_script.exe # Windows executable
|
||||
│ └── your_script/ # Directory mode output
|
||||
├── build/
|
||||
│ └── temporary_files/
|
||||
└── your_script.spec # PyInstaller specification file
|
||||
```
|
||||
|
||||
## 💡 Usage Examples
|
||||
|
||||
### Basic GUI Application
|
||||
```bash
|
||||
python build.py
|
||||
# Select: One-file, Without console, Add icon
|
||||
```
|
||||
|
||||
### Command Line Tool
|
||||
```bash
|
||||
python build.py
|
||||
# Select: One-file, With console, No optimization
|
||||
```
|
||||
|
||||
### Application with Data Files
|
||||
```bash
|
||||
python build.py
|
||||
# Select: One-directory, Add additional files (config, images, etc.)
|
||||
```
|
||||
|
||||
## 🐛 Troubleshooting
|
||||
|
||||
### Common Issues
|
||||
|
||||
1. **PyInstaller not found**
|
||||
- The script will automatically offer to install it
|
||||
- Or install manually: `pip install pyinstaller`
|
||||
|
||||
2. **Missing dependencies**
|
||||
- Ensure all Python imports in your script are available
|
||||
- The tool will show PyInstaller's error messages for debugging
|
||||
|
||||
3. **Large executable size**
|
||||
- Use UPX compression (enabled by default)
|
||||
- Consider one-directory mode for very large applications
|
||||
|
||||
4. **Anti-virus false positives**
|
||||
- Some anti-virus software may flag PyInstaller executables
|
||||
---
|
||||
|
||||
## 📄 License
|
||||
|
||||
This project is open source and available under the [MIT License](LICENSE).
|
||||
|
||||
## 🙏 Acknowledgments
|
||||
|
||||
- Built with [PyInstaller](https://www.pyinstaller.org/)
|
||||
- Inspired by the need for simpler executable creation workflows
|
||||
Reference in New Issue
Block a user