Ticket UUID: | abd4abedd2f01c12839f0ad94564ae31137f7af5 | |||
Title: | Failed to build tk 8.6.10 with cross compile | |||
Type: | Bug | Version: | 8.6.10 | |
Submitter: | anonymous | Created on: | 2019-12-09 09:17:15 | |
Subsystem: | 99. Other | Assigned To: | jan.nijtmans | |
Priority: | 5 Medium | Severity: | Important | |
Status: | Closed | Last Modified: | 2019-12-09 23:00:08 | |
Resolution: | Fixed | Closed By: | jan.nijtmans | |
Closed on: | 2019-12-09 23:00:08 | |||
Description: |
The commit c5ecf0e01e7b3cec (https://core.tcl-lang.org/tcl/info/c5ecf0e01e7b3cec) introduced a tk build failure when cross compile: /buildarea/build/tmp/work/core2-64-poky-linux/tk/8.6.10-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/ld: /buildarea/build/tmp/work/core2-64-poky-linux/tk/8.6.10-r0/recipe-sysroot/usr/lib/libtclstub8.6.a(strtoul.o): in function `strtoul': /usr/src/debug/tcl/8.6.10-r0/tcl8.6.10/compat/strtoul.c:77: undefined reference to `TclIsSpaceProc' /buildarea/build/tmp/work/core2-64-poky-linux/tk/8.6.10-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/ld: libtk8.6.so: hidden symbol `TclIsSpaceProc' isn't defined /buildarea/build/tmp/work/core2-64-poky-linux/tk/8.6.10-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/../../libexec/x86_64-poky-linux/gcc/x86_64-poky-linux/9.2.0/ld: final link failed: bad value The root cause is the tcl_cv_strtoul_unbroken will set to unknown when cross compile. Then the strtoul.o will be added to COMPAT_OBJS. In unix/Makefile: ######################################## [snip] COMPAT_OBJS = strstr.o strtoul.o [snip] STUB_LIB_OBJS = tclStubLib.o \ tclTomMathStubLib.o \ tclOOStubLib.o \ ${COMPAT_OBJS} [snip] ####################################### Then it can not found the `TclIsSpaceProc' function in libtclstub8.6.a | |||
User Comments: |
jan.nijtmans added on 2019-12-09 23:00:08:
Thanks for the report! Fixed now in all branches |