pyinstaller打包的exe太大?你需要嵌入式python玄学 充实篇

pyinstaller打包的exe太大?你需要嵌入式python玄学 充实篇

CodingDog

人丑更要多读书

21 人赞同了该文章

【上完课的我写的 并没有逃课】

只见上篇我们介绍了GCC编译c调用python

CodingDog:pyinstaller打包的exe太大?你需要嵌入式python玄学 GCC篇75 赞同 · 75 评论文章正在上传…重新上传取消

ps! 有同学提出可以用python写这个Launcher 然后用pyinstaller打包这个Launcher 我想说:很好! 现在我们的同学已经可以提出有创意的想法了!点赞!

@孤独的电子

 就是这位 大家要向人家学习哈~

那先来写一下怎么用python写这个吧~

和c差不多啊 都一个损出:

import os

os.system("xxx\\python.exe xxx\\test.py")

同样 这个是阻塞的 非阻塞用popen(subprocess貌似也可以- -忘记了)

然后把这个py文件打包出来就好了啊~

--完事-- 进入正题


那明明可以不安装gcc 不写c 为什么还要这么麻烦呢?

是因为可以用c写出来一个命令行窗口啊~ 像这样的~(不是我写的 

@gygigi khgjkbj

 这位大佬写的 给大佬磕头orz)

而且还可以给程序加上special的详细信息还有图标~:

命令行这玩意=w= 不好看 不讲(我不会)

讲讲这个详细信息怎么搞:

其实vscode提供了可以修改详细信息的方法 但是我们又不用vscode编译

原理都是一样的啊 详细信息呢都是存在.rc文件里面的 图标也存在这

我们要做的就是把图标放到和.c&.rc一起的文件夹下 用GCC编译出来就好了

. rc需要这么写:

2 ICON "xxx.ico"
1 VERSIONINFO
	FILEVERSION     2,3,3,3
	PRODUCTVERSION  2,3,3,3
	FILEOS 0x4L
	BEGIN
	BLOCK "StringFileInfo"
	BEGIN
		BLOCK "080404E4"
		BEGIN
		VALUE "CompanyName", "NKUCodingCat Co.Ltd"
		VALUE "FileDescription", "NKU-SSS-in-One Project General Launcher"
		VALUE "FileVersion", "1.0"
		VALUE "InternalName", "Launcher on Windows"
		VALUE "LegalCopyright", "GPLv2"
		VALUE "OriginalFilename", "小心使用,谨防水表"
		VALUE "ProductName", "NKU-SSS-in-One"
		VALUE "ProductVersion", "2.3.3 build 42"
		VALUE "Comments", "@#¥%……&*()一群渣渣。"
		END
	END
	
	BLOCK "VarFileInfo"
	BEGIN
		VALUE "Translation", 0x0804, 1252
	END
	END

你们自己对照去吧233 第一行引号里面的是图标的文件名 其他的···没啥了

那我们需要怎么把这玩意编译进exe呢?

写一个.bat就好了:

set rc=%~dp0%test.rc
set c=%~dp0%test.c
set o=%~dp0%test.o
set exe=%~dp0%test.exe
windres "%rc%" "%o%"
gcc "%o%" "%c%" -o "%exe%"
del "%o%"

注意文件名不能以数字开头!

至于数字证书嘛~ 百度去吧~


最近降温 知友注意保护好自己

我已感冒QAQ 这一期就写到这吧

Embedded-python也告一段落了~

我也没啥好写的了 努力提升自己吧 各自加油~

之后更新的话 大概先是python数据结构实现(有注释- -~)

然后 十一之后嘛 我会学单片机和c 加油吧~ 谢谢一路支持我的知友

如果对上面那个没讲的黑乎乎的命令行感兴趣- -

可以去看一下文章 创建子线程 还有上面提到那位帮了我很多忙的大佬的作品:

https://stackoverflow.com/questions/5177140/creating-independent-process​stackoverflow.com/questions/5177140/creating-independent-process

https://github.com/NKUCodingCat/NKU-SSS-in-One/blob/master/Launcher_src/win/main_win.c​github.com/NKUCodingCat/NKU-SSS-in-One/blob/master/Launcher_src/win/main_win.c

在此再次感谢南开代码喵给我的帮助~ 这就是互联网的分享精神啊 这就是爱啊 233

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值