Makefile 使用详解

在 Unix 下的软件工程,会不会编写 makefile,从一个侧面说明了开发者是否具备完成大型工程的能力

因为,makefile关系到了整个工程的编译规则

  • 一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中
  • makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译
  • 甚至于进行更复杂的功能操作,因为 makefile 就像一个树状 shell 脚本一样,不但可以执行依赖的任务,也可以执行操作系统的命令

makefile带来的好处就是—— 自动化编译 一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率

Unity 手动编译 Reload Domain 插件

Unity工作流中

修改脚本->编译脚本->reload domain(重载域)-> 进入play

  • 通过区分 assembly 能加快编译
  • 但是 Reload domain 却很慢,每次编译之后都要 Reload domain,而且进入播放前也会 Reload domain
  • 这个现象在 Unity 2020 后非常明显
  • 写程序经常会Ctrl+s, 一旦保存,就会重新编译,继而触发 Reload
  • 有时候会返回Unity编辑器,只是查看场景,并不想reload,会让我们漫长等待

Unity 有个设置项 Enter Play Mode Setting 可配置的进入运行模式 - Unity 手册

Pytorch windows 配置

环境有GPU和CPU版本之分,通过 dxdiag 查看是否有GPU

注意: 请选择 正确的 CUDA 版本,防止安装完成后,项目无法运行

cuda cudnn 安装配置

poetry build 打包构建注意事项

bash

$ poetry build
Building playground_1 (0.1.0)

No file/folder found for package playground
  • pyproject.toml 的 name 设定不符合,或者本地目录找不到
  • poetry 设定的 name 和 build 的程序应用程序代码的目录,不可以乱设置
  • 可以是对应模块目录,也可以是 src/ 下的对应模块目录

虽然官方有支持 path 本地依赖 https://python-poetry.org/docs/dependency-specification#path-dependencies