-
Notifications
You must be signed in to change notification settings - Fork 19.5k
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
xray需要go 1.22 目前版本太低 #11921
Comments
多谢,coolsnowwolf大佬能不能把这里的package仓库的go版本也升级一下呢,这样我就没有必要让自己本地维护一个跟仓库分支不同步的go版本了。 |
看到昨天本来update go到1.22了,不知道什么原因revert掉了。。。。 |
用屁股想呀,go1.21 需要最低 go1.17.3 工具链编译,而 go1.17.3 又要 go1.4 来编译,也就是一个 go1.21 从源码构建,需要用到两个工具链。 而 go1.22 需要最低 1.20.6,但是这提交coolsnowwolf/packages@5d77e8e 直接 bootstrap 1.20.14,这怎么可能行呢? 从源码编译到最新的 go1.22,它最开始必须是由 gcc 工具链开始编译,也就是 go1.4 版本支持 gcc -> go,更往上的版本就只能是 go -> go。 编译最新的 go1.22 它的顺序应该是:go1.4-bootstrap -> go1.17.3 -> go1.20.6/go1.21.x > go1.22 |
不懂go的依赖和编译,你这等于对牛弹琴,哈哈 |
垃圾玩意 没事天天再升 这个xray 不知道一天哪来那么多更新 没事就更新go go一个编程语言非要没事去搞那个玩意,看下xray打个补丁给他降回去 看下可行不 |
就和c++ 一天追寻最新标准一样 最那么勤没必要,能用稳定才是王道 |
啥时候修啥时候修 |
领导都说了,要以旧换新,哈哈哈
…------------------ 原始邮件 ------------------
发件人: W_Y_CPP ***@***.***>
发送时间: 2024年2月27日 16:53
收件人: coolsnowwolf/lede ***@***.***>
抄送: michael lee ***@***.***>, Author ***@***.***>
主题: Re: [coolsnowwolf/lede] xray需要go 1.22 目前版本太低 (Issue #11921)
垃圾玩意 没事天天再升 这个xray 不知道一天哪来那么多更新 没事就更新go go一个编程语言非要没事去搞那个玩意,看下xray打个补丁给他降回去 看下可行不
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
换新个鸡毛 看上面那个解决方案 直接打patch就能编译过,就证明根本没用上最新的go什么特性,有可能新版go 有什么特别的优化 但是感觉微乎其微 反而还一大推问题,经常搞这种一刀切 都不考虑编译兼容问题的 |
试试这个 |
等领导来修不香嘛:) |
|
改名Makefile 替换golang 同名文件 编译完事 |
加油加油
W_Y_CPP ***@***.***> 于 2024年2月27日周二 18:32写道:
… image.png (view on web)
<https://github.com/coolsnowwolf/lede/assets/34025388/c1777fa7-0fdf-4d04-a8b0-2f4355e927fd>
image.png (view on web)
<https://github.com/coolsnowwolf/lede/assets/34025388/b75280db-fb24-4fe9-bc38-73f275e0c7b8>
来吧看吧 如此修复,go的自己编译自己太恶心了,1.4 编译1.17 1.17编译1.20 1.20才能编译1.22
真鸡儿恶心,相当于要多增加一个1.20的编译 相当恶心 居然1.17不能直接编译1.22 怀念以前1.4通吃好几个版本的情况,如果不想这样
你们本机安装go1.20编译好的版本 然后设置 GOROOT_BOOTSTRAP 也是可以的,看这个 golang/go#44505
<golang/go#44505> go的说明,反而这样导致后期编译更加老火,当然是在
本机没安装go二进制的情况下 肯定后续还会陆续增加 编译好几个工具链 才能获取到最后一个,伤不起,明天看下能否有方法跳过这狗屎玩意
—
Reply to this email directly, view it on GitHub
<#11921 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKKVNYMK654SMNPNHN3TDL3YVWY43AVCNFSM6AAAAABD3K6X26VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNRWGI2DQNRQHA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
我就特别喜欢一边骂骂咧咧还一边把活儿给干了的大佬,超赞👍🏻
…------------------ 原始邮件 ------------------
发件人: cyx ***@***.***>
发送时间: 2024年2月27日 18:33
收件人: coolsnowwolf/lede ***@***.***>
抄送: michael lee ***@***.***>, Author ***@***.***>
主题: Re: [coolsnowwolf/lede] xray需要go 1.22 目前版本太低 (Issue #11921)
加油加油
W_Y_CPP ***@***.***> 于 2024年2月27日周二 18:32写道:
> image.png (view on web)
> <https://github.com/coolsnowwolf/lede/assets/34025388/c1777fa7-0fdf-4d04-a8b0-2f4355e927fd>
> image.png (view on web)
> <https://github.com/coolsnowwolf/lede/assets/34025388/b75280db-fb24-4fe9-bc38-73f275e0c7b8>
> 来吧看吧 如此修复,go的自己编译自己太恶心了,1.4 编译1.17 1.17编译1.20 1.20才能编译1.22
> 真鸡儿恶心,相当于要多增加一个1.20的编译 相当恶心 居然1.17不能直接编译1.22 怀念以前1.4通吃好几个版本的情况,如果不想这样
> 你们本机安装go1.20编译好的版本 然后设置 GOROOT_BOOTSTRAP 也是可以的,看这个 golang/go#44505
> <golang/go#44505> go的说明,反而这样导致后期编译更加老火,当然是在
> 本机没安装go二进制的情况下 肯定后续还会陆续增加 编译好几个工具链 才能获取到最后一个,伤不起,明天看下能否有方法跳过这狗屎玩意
>
> —
> Reply to this email directly, view it on GitHub
> <#11921 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AKKVNYMK654SMNPNHN3TDL3YVWY43AVCNFSM6AAAAABD3K6X26VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNRWGI2DQNRQHA>
> .
> You are receiving this because you commented.Message ID:
> ***@***.***>
>
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
看你们说隔壁修复的直接可以1.4编译1.20咋我试不行,明天在试下,要想一个办法根治这多级问题 |
内核版本不也是一样吗? 修安全问题就行了,没事儿动不动该内核是不是也是吃饱撑了?(~~) |
编译个鸡毛,自己玩的东西,遵循个屁的规范。自1.20 开始需要两个低版本go才能编译到 1.20,当时我意识到这垃圾玩意是个无底洞,就直接用 prebuilt 做 bootstrap 去编译目标版本 https://github.com/sbwml/packages_lang_golang 。好处是无论往后更新多少个版本,操作永远是下载官方 prebuilt 去编译最新版本,出来的东西一模一样。 如果要遵循 openwrt 规范,以后再更新 1.23、24。。。30 呢?五六七八九十个 bootstrap,直接不用编译 openwrt 了 ,耗时直接全给 golang 好不好 按这种尿性来看,golang 必定要支持使用宿主机版本,就像 openwrt 现有的 external toolchain 一样 |
你这样有个问题 ,我用龙芯的 linux 编译 openwrt 就失败了。。。反而是 从 1.4 编译1.17 ,1.17编译1.20, 1.20才能编译1.22 就好了。。。 |
升内核有一点这个,不过升内核别人并不会说我升个内核你就必须的用gcc13才能编译,别人内核升级并不会升级附加的编译环境做了兼容,但是你看看这玩意,没事就升级依赖的,升级一个xray吧go也升级,但是这玩意并没用到最新go的特性,有点过度追了,也不兼容,今天再看看有啥永久解决的办法,内核我现在还在用5.4虽然现在内核比较多,我都稳定快一年半了,很多东西往往不是最新的就最好,路由器这玩意稳定才可以,工控系统还有4.14内核的多的是 |
看了不行 即使吧cmd/dist下面编译过了 还有好多库都是1.4没有的,所以目前只能这样做,要用go1.22 必须得用与之相近的版本进行编译,如果没有新增什么新的库 就可以夸好几本版本都用这个工具链 如果有新增猜测就不行了,暂时先这样 收工 |
同时这个解决方案的第一种方案直接那样改 是不行的 1.4是没法直接编译1.20的,不信的可以试试 |
我可不是要去编译1.20。我是直接编译 1.22 |
因为是个人自用的东西,用作 bootstrap 的 prebuilt 只添加了 linux-x64 & aarch64 两个宿主机平台 |
这是 go1.20.6 prebuilt,不是 src |
失误失误 看明白了 你下载的是直接别人编译好的 工具链 用这个来编译 1.22 嗯是的 你这个可以,但是平台的话 可能不一定全 |
它来自官方 https://go.dev/dl/ ,通常能叫得出的平台,它都有。只是我个人需求只有 linux-x64,其它平台并没有添加。然而添加一个宿主机平台比想象中要简单得多,只需要写一个 ARCH信息、SHA256 就完成。 https://github.com/sbwml/packages_lang_golang/blob/22.x/golang/Makefile#L75 甚至 SHA256 这些信息都是直接复制粘贴,官方直接给出列表 https://go.dev/dl/ :
|
如果都是常用平台就可以这样,上面不是l说 他在龙芯上面就会失败,不过大多数都是linux 上面编译吧 所以适用大部分人,这go我是不知道他是如何设计搞的,就不能学学gcc 别人gcc13代码用gcc7 都能编译,都没他这个这么怪 |
go1.22.0.linux-loong64.tar.gz 就是龙芯,go1.19 就原生支持龙芯了,上面的失败单纯是我没加 linux-x64 以外的其它平台而已,毕竟我自己只用linux 环境弄op |
那感觉 你这个可能更好如果都比较全的话,可以节省一大笔编译时间 虽然编译也没多久 |
啥时候大雕可以用飞腾+银河麒麟编译OP? |
修复好了吗,刚准备编译个新固件? |
修复了吗? |
就知道问不知道看提交么,告诉你们方法了这种简单替换还要手把手教么 |
天天火气那么大干啥呢,修复过能编译的又出问题了不能发出来?还是说这问题以后解决办法都是这样搞?找个完美的方法修复了节省我们大家的时间也节省你们开发者的时间不是嘛。 |
请问大佬,现在是用这个方式修复这个问题吗。 具体是替换的哪个路径下的问题,请指教下。辛苦了。 |
passwall那边修复了。 |
|
先用 sbwml https://github.com/sbwml/packages_lang_golang 替换feeds里面的golang编译 xray 然后再替换回来,不然1.22编译插件好多问题。 |
在文件 |
详细叙述
touch /home/builder/lede_x86/staging_dir/target-x86_64_musl/root-x86/stamp/.v2ray-plugin_installed
echo "v2ray-plugin" >> /home/builder/lede_x86/staging_dir/target-x86_64_musl/pkginfo/v2ray-plugin.default.install
make[3]: Leaving directory '/home/builder/lede_x86/feeds/helloworld/v2ray-plugin'
time: package/feeds/helloworld/v2ray-plugin/compile#0.09#0.06#0.17
make[3]: Entering directory '/home/builder/lede_x86/feeds/helloworld/xray-plugin'
rm -f /home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.built
touch /home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.built_check
CONFIG_GOLANG_MOD_CACHE_WORLD_READABLE="" GO_BUILD_CACHE_DIR="/home/builder/lede_x86/tmp/go-build" GO_MOD_CACHE_DIR="/home/builder/lede_x86/dl/go-mod-cache" GO_MOD_ARGS="-modcacherw" GO_PKG="github.com/teddysun/xray-plugin" GO_INSTALL_EXTRA="" GO_INSTALL_ALL="" GO_SOURCE_ONLY="" GO_BUILD_PKG="github.com/teddysun/xray-plugin/..." GO_EXCLUDES="" GO_GO_GENERATE="" GO_INSTALL_BIN_PATH="/usr/bin" BUILD_DIR="/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8" GO_BUILD_DIR="/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.go_work/build" GO_BUILD_BIN_DIR="/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.go_work/build/bin" GO_BUILD_DEPENDS_PATH="/usr/share/gocode" GO_BUILD_DEPENDS_SRC="/home/builder/lede_x86/staging_dir/target-x86_64_musl/usr/share/gocode/src" GOOS="linux" GOARCH="amd64" GO386="" GOAMD64="v1" GOARM="" GOMIPS="" GOMIPS64="" GOPPC64="" CGO_ENABLED=1 CC="x86_64-openwrt-linux-musl-gcc" CXX="x86_64-openwrt-linux-musl-g++" CGO_CFLAGS="-Os -pipe -fno-caller-saves -fno-plt -fhonour-copts -fmacro-prefix-map=/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8=xray-plugin-1.8.8 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro" CGO_CPPFLAGS="-I/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/usr/include -I/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/include/fortify -I/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/include" CGO_CXXFLAGS="-Os -pipe -fno-caller-saves -fno-plt -fhonour-copts -fmacro-prefix-map=/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8=xray-plugin-1.8.8 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro" CGO_LDFLAGS="-L/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/usr/lib -L/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/lib -znow -zrelro" GOPATH="/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.go_work/build" GOCACHE="/home/builder/lede_x86/tmp/go-build" GOMODCACHE="/home/builder/lede_x86/dl/go-mod-cache" GOENV=off GOTOOLCHAIN=local /usr/bin/env bash /home/builder/lede_x86/feeds/packages/lang/golang//golang-build.sh build -v -buildvcs=false -trimpath -ldflags "all=-buildid '1708954693' -linkmode external -extldflags '-L/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/usr/lib -L/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/lib -Wl,-z,now -Wl,-z,relro'"
Finding targets
go: github.com/xtls/xray-core@v1.8.8 requires go >= 1.22 (running go 1.21.5; GOTOOLCHAIN=local)
Building targets
no Go files in /home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.go_work/build
make[3]: *** [Makefile:42: /home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.built] Error 1
make[3]: Leaving directory '/home/builder/lede_x86/feeds/helloworld/xray-plugin'
time: package/feeds/helloworld/xray-plugin/compile#0.22#1.25#7.97
ERROR: package/feeds/helloworld/xray-plugin failed to build.
make[2]: *** [package/Makefile:116: package/feeds/helloworld/xray-plugin/compile] Error 1
make[2]: Leaving directory '/home/builder/lede_x86'
make[1]: *** [package/Makefile:110: /home/builder/lede_x86/staging_dir/target-x86_64_musl/stamp/.package_compile] Error 2
make[1]: Leaving directory '/home/builder/lede_x86'
make: *** [/home/builder/lede_x86/include/toplevel.mk:231:world] 错误 2
builder@Build-Server:/home/builder/lede_x86$
builder@Build-Server:/home/builder/lede_x86$ go version
重复 issue
具体型号
x86
详细日志
touch /home/builder/lede_x86/staging_dir/target-x86_64_musl/root-x86/stamp/.v2ray-plugin_installed
echo "v2ray-plugin" >> /home/builder/lede_x86/staging_dir/target-x86_64_musl/pkginfo/v2ray-plugin.default.install
make[3]: Leaving directory '/home/builder/lede_x86/feeds/helloworld/v2ray-plugin'
time: package/feeds/helloworld/v2ray-plugin/compile#0.09#0.06#0.17
make[3]: Entering directory '/home/builder/lede_x86/feeds/helloworld/xray-plugin'
rm -f /home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.built
touch /home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.built_check
CONFIG_GOLANG_MOD_CACHE_WORLD_READABLE="" GO_BUILD_CACHE_DIR="/home/builder/lede_x86/tmp/go-build" GO_MOD_CACHE_DIR="/home/builder/lede_x86/dl/go-mod-cache" GO_MOD_ARGS="-modcacherw" GO_PKG="github.com/teddysun/xray-plugin" GO_INSTALL_EXTRA="" GO_INSTALL_ALL="" GO_SOURCE_ONLY="" GO_BUILD_PKG="github.com/teddysun/xray-plugin/..." GO_EXCLUDES="" GO_GO_GENERATE="" GO_INSTALL_BIN_PATH="/usr/bin" BUILD_DIR="/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8" GO_BUILD_DIR="/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.go_work/build" GO_BUILD_BIN_DIR="/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.go_work/build/bin" GO_BUILD_DEPENDS_PATH="/usr/share/gocode" GO_BUILD_DEPENDS_SRC="/home/builder/lede_x86/staging_dir/target-x86_64_musl/usr/share/gocode/src" GOOS="linux" GOARCH="amd64" GO386="" GOAMD64="v1" GOARM="" GOMIPS="" GOMIPS64="" GOPPC64="" CGO_ENABLED=1 CC="x86_64-openwrt-linux-musl-gcc" CXX="x86_64-openwrt-linux-musl-g++" CGO_CFLAGS="-Os -pipe -fno-caller-saves -fno-plt -fhonour-copts -fmacro-prefix-map=/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8=xray-plugin-1.8.8 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro" CGO_CPPFLAGS="-I/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/usr/include -I/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/include/fortify -I/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/include" CGO_CXXFLAGS="-Os -pipe -fno-caller-saves -fno-plt -fhonour-copts -fmacro-prefix-map=/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8=xray-plugin-1.8.8 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro" CGO_LDFLAGS="-L/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/usr/lib -L/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/lib -znow -zrelro" GOPATH="/home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.go_work/build" GOCACHE="/home/builder/lede_x86/tmp/go-build" GOMODCACHE="/home/builder/lede_x86/dl/go-mod-cache" GOENV=off GOTOOLCHAIN=local /usr/bin/env bash /home/builder/lede_x86/feeds/packages/lang/golang//golang-build.sh build -v -buildvcs=false -trimpath -ldflags "all=-buildid '1708954693' -linkmode external -extldflags '-L/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/usr/lib -L/home/builder/lede_x86/staging_dir/toolchain-x86_64_gcc-11.3.0_musl/lib -Wl,-z,now -Wl,-z,relro'"
Finding targets
go: github.com/xtls/xray-core@v1.8.8 requires go >= 1.22 (running go 1.21.5; GOTOOLCHAIN=local)
Building targets
no Go files in /home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.go_work/build
make[3]: *** [Makefile:42: /home/builder/lede_x86/build_dir/target-x86_64_musl/xray-plugin-1.8.8/.built] Error 1
make[3]: Leaving directory '/home/builder/lede_x86/feeds/helloworld/xray-plugin'
time: package/feeds/helloworld/xray-plugin/compile#0.22#1.25#7.97
ERROR: package/feeds/helloworld/xray-plugin failed to build.
make[2]: *** [package/Makefile:116: package/feeds/helloworld/xray-plugin/compile] Error 1
make[2]: Leaving directory '/home/builder/lede_x86'
make[1]: *** [package/Makefile:110: /home/builder/lede_x86/staging_dir/target-x86_64_musl/stamp/.package_compile] Error 2
make[1]: Leaving directory '/home/builder/lede_x86'
make: *** [/home/builder/lede_x86/include/toplevel.mk:231:world] 错误 2
builder@Build-Server:/home/builder/lede_x86$
builder@Build-Server:/home/builder/lede_x86$ go version
The text was updated successfully, but these errors were encountered: