首先安装工具
sudo pip3 install pyinstaller
工程中的路径尽量都要使用相对路径,
cd 到你的工程路径下,使用pyinstaller -F main.py
pyinstaller -F gui.py
会在当前文件夹生成一个dist文件夹,里面就是可执行文件。cd 进去
./gui
如果这里没有执行,可以修改一下配置文件gui.spec。将datas修改如下,加两个.然后再重新打包一下即可。pyinstaller gui.spec
如果是修改重新编译,需要将原来的dist和build删除掉,
# -*- mode: python ; coding: utf-8 -*-
block_cipher = None
a = Analysis(
['gui.py'],
pathex=[],
binaries=[],
datas=[('.','.')],
hiddenimports=[],
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False,
)
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
[],
name='gui',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=True,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
)
如果可以运行,这时就可以在用户文件中创建一个桌面快捷启动程序
cd /usr/share/applications/
找一个对应的desktop文件,拷贝到桌面文件夹中,改名成自己想要的名字,然后修改里面的配置。
cp yelp.desktop ~/Desktop
cd ~/Desktop
mv yelp.desktop desk.desktop
sudo vim desk.desktop
修改文件如下:
[Desktop Entry]
Name=Desk
Type=Application
Exec=/home/qy/Desktop/start.sh
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Icon=/home/cat/gm/deskV1
Comment=
Terminal=false
Name是你的快捷方式名字,
Exec对应的是执行文件的路径(这个文件必须是可执行文件)
第7行是设置自启动;
Icon 是设置快捷方式的图标
然后重启一下,桌面应该会有图标出现,双击一下就可以运行程序
最后一步是加入自启动程序
进入.config/,创建一个autostart文件夹,将桌面那个文件放在这里。
cd ~
cd .config/
mkdir autostart
cd autostart
cp ~/Desktop/desk.desktop ./
然后给与这个文件可执行权限:
sudo chmod 777 desk.desktop
然后重启,就会发现桌面程序已经自启动。
小知识:
工具及方法
使用start application,可以自动添加需要开机自启动的.sh脚本,
tips:自启动的脚本最好经过单独测试,测试成功后再放入start application
找到该应用程序后,点击Add——添加脚本——添加描述即可
如果找不到该应用程序,可以通过终端输入
gnome-session-properties