xmake-io / xmake-vscode

🍩 A XMake integration in Visual Studio Code
https://xmake.io
Apache License 2.0
228 stars 55 forks source link

关于部分bug的报告 #196

Open xxxxj-up opened 1 year ago

xxxxj-up commented 1 year ago

Xmake 版本

2.7.8

操作系统版本和架构

Windows 10 专业工作站版 19045.2965 以及 WSL

描述问题

1.状态栏不记录/读取/保存设置 image 每次重启都是默认自动设置。这看似没有什么大问题,但是若我手动修改xmake.conf中的参数,那么就有可能会出现没效果的情况,且不方便开发者了解一定的基础设置

2.compile_commands.json的生成问题 compile_commands.json不应该只在xmake.lua更改时生成,而应该是在build和debug时也生成才对

3.插件对在WSL下的Clang编译器开发支持不佳 新手可能在选择toolchain时会下意识地选择clang,但实际上项目跑不了,应该选择llvm。即使可以了也会出现调试时使用gdb而不是lldb的奇葩情况

期待的结果

1.状态栏通过xmake.conf等文件读取数据,保持状态栏的正常 2.如问题

工程配置

xmake.zip

附加信息和错误日志

No response

waruqi commented 1 year ago

但是若我手动修改xmake.conf中的参数

这玩意是内部缓存文件,不要自己改,走 xmake f/onConfigure 配置,自己改了导致的后果,不做任何支持。

compile_commands.json不应该只在xmake.lua更改时生成,而应该是在build和debug时也生成才对

没有应该不应该,你觉得应该,也有其他用户觉得不应该,到时候改了,其他用户提 issues 说不应该这么做,怎么搞?再改回来?

这种没有完全通用的方案,默认走最小化的自动按需生成。。如果想要 build 后也自动更新,参考文件,自己配置开启下

https://xmake.io/#/zh-cn/plugin/more_plugins?id=%e9%85%8d%e7%bd%ae-xmakelua-%e8%87%aa%e5%8a%a8%e7%94%9f%e6%88%90

新手可能在选择toolchain时会下意识地选择clang,但实际上项目跑不了,应该选择llvm。即使可以了也会出现调试时使用gdb而不是lldb的奇葩情况

那就用 llvm , clang 那个 toolchain 主要用于 linux/mac 下 /usr/bin/clang 的使用,或者是 PATH 下有 clang 的情况,但 ar 还是用的系统默认的 ar ,win 下原本用不了, 除了 clang,还有 clang-12, clang-13 等对 /usr/bin/clang-12 切换

而 llvm 是完整 llvm 的切换,包括 ar 走的 也是 llvm-ar

每个 toolchain 的用法不同

即使可以了也会出现调试时使用gdb而不是lldb的奇葩情况

没毛病,没有硬性规定,用了 clang 编译,就一定要用 lldb ,gdb 也能调试,而且 gdb 安装更广泛,msys2 都有,可以直接用。。想用 lldb 可以自己切。