fw876 / helloworld

GNU General Public License v3.0
3.52k stars 2.62k forks source link

shadowsocksr-libev编译失败 #1434

Closed OldCoding closed 3 months ago

OldCoding commented 3 months ago

openwrt官方master分支源码编译shadowsocksr-libev失败,把helloworld去掉就可以成功,机型是小米R3G

日志: make[3]: Entering directory '/mnt/openwrt/package/openwrt-passwall-packages/shadowsocksr-libev' rm -f /mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/.built touch /mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/.built_check CFLAGS="-Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc -fno-caller-saves -fno-plt -fhonour-copts -msoft-float -fmacro-prefix-map=/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6=shadowsocksr-libev-2.5.6 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -flto -I/mnt/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-13.2.0_musl/usr/include -I/mnt/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-13.2.0_musl/include -I/mnt/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-13.2.0_musl/include/fortify " CXXFLAGS="-Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc -fno-caller-saves -fno-plt -fhonour-copts -msoft-float -fmacro-prefix-map=/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6=shadowsocksr-libev-2.5.6 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -flto -I/mnt/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-13.2.0_musl/usr/include -I/mnt/openwrt/staging_dir/toolchain-mipsel_24kc make[4]: Entering directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6' make all-recursive make[5]: Entering directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6' Making all in libcork make[6]: Entering directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/libcork' make[6]: Nothing to be done for 'all'. make[6]: Leaving directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/libcork' Making all in libipset make[6]: Entering directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/libipset' make[6]: Nothing to be done for 'all'. make[6]: Leaving directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/libipset' Making all in src make[6]: Entering directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/src' make[6]: Nothing to be done for 'all'. make[6]: Leaving directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/src' Making all in server make[6]: Entering directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/server' mipsel-openwrt-linux-musl-gcc -DHAVE_CONFIG_H -I. -I.. -I/mnt/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-13.2.0_musl/usr/include -I/mnt/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-13.2.0_musl/include -I/mnt/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-13.2.0_musl/include/fortify -g -O2 -Wall -Werror -Wno-deprecated-declarations -fno-strict-aliasing -std=gnu99 -D_GNU_SOURCE -I../libipset/include -I../libcork/include -DMODULE_REMOTE -Os -pipe -mno-branch-likely -mips32r2 -mtune=24kc -fno-caller-saves -fno-plt -fhonour-copts -msoft-float -fmacro-prefix-map=/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6=shadowsocksr-libev-2.5.6 -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -flto -I/mnt/openwrt/staging_dir/target-mipsel_24kc_musl/usr/include -DPCRE2_STATIC -c -o ss_server-server.o test -f 'server.c' || echo './'server.c In file included from server.c:62: server.c: In function 'main': utils.h:160:13: error: pointer 'protocol_344' may be used after 'free' [-Werror=use-after-free] 160 | syslog(LOG_INFO, format, ## VA_ARGS__); \ | ^~~~~~~~~~~~ server.c:1945:13: note: call to 'free' here 1945 | free(protocol); | ^~~~~~ utils.h:166:17: error: pointer 'protocol_344' may be used after 'free' [-Werror=use-after-free] 166 | fprintf(stderr, "\e[01;32m %s INFO: \e[0m" format "\n", timestr, \ | ^~~~~~~~~~~~~~ 167 | ## VA_ARGS); \ | ~~~ server.c:1945:13: note: call to 'free' here 1945 | free(protocol); | ^~~~~~ utils.h:169:17: error: pointer 'protocol_344' may be used after 'free' [-Werror=use-after-free] 169 | fprintf(stderr, " %s INFO: " format "\n", timestr, \ | ^~~~~~~~~~~~~~ 170 | ## __VA_ARGS); \ | ~~~ server.c:1945:13: note: call to 'free' here 1945 | free(protocol); | ^~~~~~ server.c:1948:13: error: pointer 'protocol_344' used after 'free' [-Werror=use-after-free] 1948 | memcpy(protocol, text, length); | ^~~~~~~~~~ server.c:1945:13: note: call to 'free' here 1945 | free(protocol); | ^~~~~~ server.c:1947:13: error: pointer 'protocol_344' used after 'free' [-Werror=use-after-free] 1947 | memset(protocol, 0x00, length); | ^~~~~~~~~~ server.c:1945:13: note: call to 'free' here 1945 | free(protocol); | ^~~~~~ cc1: all warnings being treated as errors make[6]: [Makefile:670: ss_server-server.o] Error 1 make[6]: Leaving directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/server' make[5]: [Makefile:483: all-recursive] Error 1 make[5]: Leaving directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6' make[4]: [Makefile:392: all] Error 2 make[4]: Leaving directory '/mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6' make[3]: [Makefile:66: /mnt/openwrt/build_dir/target-mipsel_24kc_musl/shadowsocksr-libev-2.5.6/.built] Error 2 make[3]: Leaving directory '/mnt/openwrt/package/openwrt-passwall-packages/shadowsocksr-libev' time: package/openwrt-passwall-packages/shadowsocksr-libev/compile#0.53#0.08#0.57 ERROR: package/openwrt-passwall-packages/shadowsocksr-libev failed to build. make[2]: [package/Makefile:129: package/openwrt-passwall-packages/shadowsocksr-libev/compile] Error 1 make[2]: Leaving directory '/mnt/openwrt' make[1]: [package/Makefile:123: /mnt/openwrt/staging_dir/target-mipsel_24kc_musl/stamp/.package_compile] Error 2 make[1]: Leaving directory '/mnt/openwrt' make: *** [/mnt/openwrt/include/toplevel.mk:233: world] Error 2

zxlhhyccc commented 3 months ago

5.15、6.1内核无法复现。。。。,你是否是6.6内核下编译?

sirfromprc commented 3 months ago

6.1.82有上面错误提示,用https://github.com/sbwml/openwrt_helloworld 里的shadowsocksr-libev替换可以编译成功

OldCoding commented 3 months ago

5.15、6.1内核无法复现。。。。,你是否是6.6内核下编译?

6.1.82内核,按照楼上的方法用https://github.com/sbwml/openwrt_helloworld 里面的shadowsocksr-libev替换就编译成功了