如何在 MXE 中仅重新编译特定包
How to recompile in MXE only a specific package?
我用这个SO答案作为在Linux上为Windows构建Qt GUI应用程序的食谱。它工作得很好。但是我生成的"Hello World"二进制文件是12MB大 - 仅适用于窗口中的按钮 - 这太多了。
所以我想我可以修改src/qt.mk
文件并调整配置选项以删除尽可能多的不需要的选项。
但是现在我需要在MXE中重新编译Qt,我不知道怎么做。当我在基目录中运行make
时,它开始下载所有源包。但是我已经下载了这些东西。
那么如何只重新编译 qt 部分,让我的更改生效呢?
touch src/<packagename>.mk
make <packagename>
希望有帮助。
在mxe
的基目录中,只需打开文件settings.mk
并取消注释最后三行:
LOCAL_PKG_LIST := <packages-to-recompile-here>
.DEFAULT local-pkg-list:
local-pkg-list: $(LOCAL_PKG_LIST)
如果您将应该重新编译的软件包放在<packages-to-recompile-here>
,然后在mxe
的基本目录中运行make
,则它可以完美运行。
如果 src/$packagename.mk 上发生了更改,只需运行 make $packagename 即可在您的 mxe 结帐中重建$packagename
相关文章:
- 使用 MINGW gcc 编译时,不会为 std::string 调用重载的新运算符
- 如何编译:Mac上的Synergy(2017年的新工具链)
- 如何编译和运行一个新的 C++ Actor 框架项目?
- C++编译新的警告过滤器
- 每次都构建(make)lib,只有在lib较新时才重新编译项目
- 如何创建指向派生类的新指针,该派生类在C++编译时未知
- 如何在不退出和失去断点的情况下重新加载重新编译的二进制文件
- 在编译时将整数和分数部分宏组合成一个新的宏或双精度
- C++运算符新重载、编译错误
- 在新OSX上编译旧碳应用
- 为什么G 5.4不能编译此编译时质数代码
- 代码块在尝试编译或创建新文件时出现"An assertion failed!"错误
- 在新的Visual Studio项目中包含任何Eigen 3.3.1文件将无法编译
- RCpp:如何在不重新启动R的情况下重新加载重新编译的C++代码
- 新安装的MinGW问题与编译和可执行文件
- 为什么要编译?(编译是否忽略未包含的 h 文件?
- 高级C和C++编译:无法编译书中提到的示例程序
- 在不同的编译单元中使用不同的编译标志编译相同的头
- 在cygwin中编译新的mingw二进制文件
- 使用boost库编译预编译头文件需要很长时间