2023.1.17:
魔法环境方案: clash + proxychains-ng 可解决。
尝试打包GUI 魔法 clash-verge:
[cargo-tauri] 在Cargo.toml 中 target 添加“loongarch64-unknown-linux-gnu” 可编译成功,已PR
误解了,这只是给文档中加了loong64,不对编译过程起作用。本来就可以成功编译。武老已经纳入LoongArch仓库
————————
解决cargo-tauri后,其他依赖畅通。开始到clash-verge Building环节:
Error: clash meta alpha unsupported platform "linux-loong64"
上游mihomo 已经支持loong64,所以直接加上loong64架构,已PR
clash-meta 内核部分解决了,接着卡到了quickjs上:
Rust 包rquickjs-sys不能通过,缺少bindings文件,见上游文件夹
这些binddings是通过bindgen生成的。bindgen包含在loong64-extra包中,可直接下载。
不确定loong64是否支持quickjs.
在rqucikjs的issue看到使用bindgen生成binddings并导出的方法,
cd sys cargo build --features exports,bindgen,update-bindings
其依赖的rust包rustix无法编译。这是报错
@hev 搞定了bindding files, 并PR ,使用这个文件,rquickjs-sys编译成功
* 另外发现 在 clash-verge/src-tauri/Cargo.toml 中
#rquickjs = "0.3" 修改为:
rquickjs = { version = "0.3", features = ["bindgen"] }
可编译成功clash-verge!!!!! 见PR
安装后打不开,报错:
thread 'main' panicked at /home/kiri/.cargo/registry/src/index.crates.io-6f17d22bba15001f/libappindicator-sys-0.7.3/src/lib.rs:41:5:
Failed to load ayatana-appindicator3 or appindicator3 dynamic library
libayatana-appindicator3.so.1: cannot open shared object file: No such file or directory
libappindicator3.so.1: cannot open shared object file: No such file or directory
libayatana-appindicator3.so: cannot open shared object file: No such file or directory
libappindicator3.so: cannot open shared object file: No such file or directory
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Aborted (core dumped)
可能还是rquickjs, rustix导致的。
由RUST 包 libappindicator-sys 导致, 该仓库已归档
是tauri缺依赖
sudo pacman -S libappindicator-gtk3
后该报错消失,取而代之:
(clash-verge:71445): Gtk-CRITICAL **: 16:50:16.028: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
去解决rustix.
打开rustix目录,用cargo build,编译成功。
但是在rquickjs-sys 目录下,用cargo build, 编译卡在了rustix, 见报错。
发现在rustix Cargo.toml中有架构的target。尝试添加loongarch64-unknown-linux-gnu, 结果和没加一样。
目前无头绪。