Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
CLion
CLion is a JetBrains 推出的一款 C++ 集成开发环境(IDE),个人非商业用途可以免费使用。
导入项目
CLion 可以导入项目的编译数据库文件,通常名叫 compile_commands.json。要生成这个编译数据库文件,请打开终端,切换到 Godot 根目录,然后执行:
scons compiledb=yes compile_commands.json
然后,用 CLion 打开 Godot 的根目录,并耐心等待项目完成全部索引。如果发现代码补全、参数信息提示或代码重构等功能没有生效,你就需要用 CMake 重新加载一下项目。具体操作是:找到 platform\android\java\nativeSrcsConfigs 目录下的 CMakeLists.txt 文件,右键点击它,然后选择 (加载 CMake 项目)。等项目重新加载完毕后,系统会自动添加一个名为 godot 的构建配置。你可以放心地把这个配置删掉,因为这个 CMake 文件本身并不能真正用来编译项目,它仅仅是为了帮助你在 JetBrains 系列 IDE 中正常加载项目而存在的。
备注
Windows 用户:
要想让
compile_commands.json在 CLion 中正确加载,你必须先为 CLion 配置好 Visual Studio 工具链。
导航到 Preferences > Build, Execution, Deployment > Toolchains
点击 + 按钮,然后选择
Visual StudioCLion 会尝试自动检测你的 Visual Studio 安装情况。如果检测失败,请点击
Toolset::(工具集)右侧的文件图标,然后手动选择你的 Visual Studio 安装目录。你可以退出并重新启动 CLion,它将重新加载
compile_commands.json文件
项目的编译与调试
CLion 默认并不支持直接通过 SCons 来编译和调试 Godot。不过,通过在 CLion 中创建自定义构建目标和运行配置,就可以实现这一点。在创建自定义构建目标之前,你必须先在命令行中 compile Godot 一次,以生成 Godot 可执行文件。请打开终端,切换到 Godot 的根目录,然后执行以下命令:
scons dev_build=yes
要添加一个调用 SCons 来进行编译的自定义构建目标:
打开 CLion,然后依次进入 偏好设置 > 构建、执行、部署 > 自定义构建目标(Preferences > Build, Execution, Deployment > Custom Build Targets)
点击 添加目标(Add target),并给这个目标起个名字,比如
Godot debug。
点击 编译(Build) 下拉框旁边的 ... 按钮,然后在弹出的 外部工具(External Tools) 对话框中,点击 + 按钮来添加一个新的外部工具。
给这个工具起个名字,比如
Build Godot debug,将 程序(Program) 设置为scons,将 参数(Arguments) 设置为你想要的编译选项(具体选项可以查看 compiling Godot),并将 工作目录(Working directory) 设置为$ProjectFileDir$,这就相当于 Godot 的根目录。最后点击 确定(OK) 来创建这个工具。备注
CLion 不会扩展类似
scons -j$(nproc)这样的 shell 命令。请使用具体的值,例如scons -j8。
回到 外部工具(External Tools) 对话框,再次点击 + 号,添加第二个外部工具,用于通过 SCons 清理 Godot 的编译文件。给这个工具起个名字,比如
Clean Godot debug,将 程序(Program) 设置为scons,将 参数(Arguments) 设置为-c(这个参数代表清理编译文件),并将 工作目录(Working directory) 设置为$ProjectFileDir$。最后点击 确定(OK) 来创建这个工具。
关闭 External Tools(外部工具) 对话框。回到自定义的
Godot debug编译目标的 Custom Build Target(自定义编译目标) 对话框中,在 Build(编译) 下拉框里选择 Build Godot debug 这个工具,并在 Clean(清理) 下拉框里选择 Clean Godot debug 这个工具。最后点击 OK(确定) 来创建这个自定义编译目标。
在主 IDE 窗口中,点击 添加配置(Add Configuration)。
在 运行/调试配置(Run/Debug Configuration) 对话框中,点击 添加新建...(Add new...),然后选择 自定义构建应用(Custom Build Application) 来创建一个新的自定义运行/调试配置。
给这个运行/调试配置起个名字,比如
Godot debug,然后在 目标(Target) 选项中选择你刚刚创建的Godot debug自定义编译目标。将bin/文件夹下的 Godot 可执行文件选为 可执行文件(Executable),并将 程序参数(Program arguments) 设置为--editor --path path-to-your-project/,这里的path-to-your-project/需要替换成你电脑上某个现有 Godot 项目的实际路径。如果你省略了--path参数,那么你将只能调试 Godot 的项目管理器(Project Manager)窗口。最后点击 确定(OK) 来创建这个运行/调试配置。
现在,你可以通过运行配置(run configuration)来编译、运行、调试、性能分析(profile)以及对 Godot 编辑器进行 Valgrind 检查了。
在运行场景时,Godot编辑器会生成一个独立的进程。可以在 CLion 中调试该进程,方法是选择 Run > Attach to process... ,输入 godot ,然后选择 pid (进程 ID)最大的 Godot 进程,该进程通常是正在运行的项目。
忽略目标文件和库文件
在 CLion 中构建 Godot 后,你可能会看到对象文件和库文件显示在 Project 视图中。
你可以配置 CLion 来忽略这些文件:
打开 CLion 并导航至 Preferences > Editor > File Types > Ignored Files and Folders
点击 + 按钮将
*.o和*.a添加到列表中。在 Windows 上,你需要添加*.obj和*.dll。
现在,Project 视图中应该就会忽略这些文件了。