1、下载源码到目录/home/magic/code/scql-main
2、由于网络问题需要对源码做出修改
a、创建目录/home/admin/dev/bazel_third存放第三方依赖库的tar包
b、修改/home/admin/dev/.bazelrc,在第一行增加common --distdir=/home/admin/dev/bazel_third,下载第三方依赖时从此目录寻找tar、zip等
c、修改/home/admin/dev/docker/build.sh
176行内容【docker exec -it ${CONTAINER_ID} bash -c "cd /home/admin/dev && make binary"】改为:
【docker exec -it ${CONTAINER_ID} bash -c "export GOPROXY=https://goproxy.cn,direct && cd /home/admin/dev && make binary"】
此修改是为了启动容器时增加golang的代理,可避免更新golang环境时的网络问题
d、在编译过程中如果反复遇到下载https://github.com/bufbuild/buf/releases/download/v1.27.0/sha256.txt失败的问题,可手动下载sha256.txt到/home/admin/dev/bazel_third目录下
在容器中修改/root/.cache/bazel/_bazel_root/eceb46742416a02f6a0f8d92bc74468c/external/rules_buf~/buf/internal/toolchain.bzl文件:(文件路径略有不同,可看错误提示的路径)
注释如下内容:
# ctx.download(
# url = [
# "https://github.com/bufbuild/buf/releases/download/{}/sha256.txt".format(version),
# ],
# output = "sha256.txt",
# )
保证验证sha256时从本机读取不必每次从网络下载,在注释下方增加如下内容:
LOCAL_SHA256_PATH = "/home/admin/dev/bazel_third/sha256.txt"
content = ctx.read(LOCAL_SHA256_PATH)
ctx.file("sha256.txt", content)
3、进入目录/home/magic/code/scql-main,开始编译,执行命令:sudo bash build.sh -c -n scql-main
4、编译过程中会遇到网络问题下载依赖超时,可复制超时连接到迅雷等工具中下载,下载成功后拷贝到/home/admin/dev/bazel_third,然后重新执行编译
1759

被折叠的 条评论
为什么被折叠?



