Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于部分bug的报告 #196

Open
xxxxj-up opened this issue May 13, 2023 · 1 comment
Open

关于部分bug的报告 #196

xxxxj-up opened this issue May 13, 2023 · 1 comment
Labels

Comments

@xxxxj-up
Copy link

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

@xxxxj-up xxxxj-up added the bug label May 13, 2023
@waruqi
Copy link
Member

waruqi commented May 13, 2023

但是若我手动修改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 可以自己切。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants