ZX80, ZX 81, ZX Spectrum, TS2068 and other clones
fraespre
Member
Posts: 50 Joined: Mon Aug 19, 2019 8:08 pm
Post
by fraespre » Sun Sep 17, 2023 9:10 am
hi,
Trying to upgrade the z88dk-sdcc to a current version, I found these weird errors (but the compilation/linking process works correctly with a March 2023 nightly):
Code: Select all
C:/mio/soft/dev/z80/z88dk/z88dk-20230916/lib/config/../../libsrc/_DEVELOPMENT/target/zx/../clib_stubs.inc:12: error: undefined symbol: error_zc
^---- error_zc
C:/mio/soft/dev/z80/z88dk/z88dk-20230916/lib/config/../../libsrc/_DEVELOPMENT/target/zx/../clib_stubs.inc:23: error: undefined symbol: l_ret
^---- l_ret
C:/mio/soft/dev/z80/z88dk/z88dk-20230916/lib/config/../../libsrc/_DEVELOPMENT/target/zx/../clib_stubs.inc:24: error: undefined symbol: l_ret
^---- l_ret
C:/mio/soft/dev/z80/z88dk/z88dk-20230916/lib/config/../../libsrc/_DEVELOPMENT/target/zx/../clib_stubs.inc:25: error: undefined symbol: l_ret
^---- l_ret
C:/mio/soft/dev/z80/z88dk/z88dk-20230916/lib/config/../../libsrc/_DEVELOPMENT/target/zx/../clib_stubs.inc:12: error: undefined symbol: __ch_system
^---- error_zc
C:/mio/soft/dev/z80/z88dk/z88dk-20230916/lib/config/../../libsrc/_DEVELOPMENT/target/zx/../clib_stubs.inc:23: error: undefined symbol: __thread_context_switch
^---- l_ret
C:/mio/soft/dev/z80/z88dk/z88dk-20230916/lib/config/../../libsrc/_DEVELOPMENT/target/zx/../clib_stubs.inc:24: error: undefined symbol: __thread_block_timeout
^---- l_ret
C:/mio/soft/dev/z80/z88dk/z88dk-20230916/lib/config/../../libsrc/_DEVELOPMENT/target/zx/../clib_stubs.inc:25: error: undefined symbol: __thread_unblock
^---- l_ret
BR.
fraespre
Member
Posts: 50 Joined: Mon Aug 19, 2019 8:08 pm
Post
by fraespre » Sun Sep 17, 2023 9:19 am
btw, I use this command line:
Code: Select all
zcc +zx -vn -compiler=sdcc -clib=sdcc_iy -startup=31 -pragma-include:src/zpragma.inc -SO3 --opt-code-size --allow-unsafe-read -DDEBUG=1 -m -create-app
dom
Well known member
Posts: 1966 Joined: Sun Jul 15, 2007 10:01 pm
Post
by dom » Sun Sep 17, 2023 10:00 am
I’ve seen this one before - I think its due to the library files not matching the cpu type used for the compilation I fixed it locally by rebuilding the libraries.
However you’re using a nightly so shouldn’t have that problem.
I‘ll need to dig. Bear with me.
fraespre
Member
Posts: 50 Joined: Mon Aug 19, 2019 8:08 pm
Post
by fraespre » Sun Sep 17, 2023 11:49 am
to be honest, I always do a post-process when try a candidate version, because I have a special sp1 configuration ... so, I do lib rebuild.
Your post has reminded me that the issue could be related.
Code: Select all
echo. & echo. & echo CHANGING: 'config_sp1.m4'
set FILE_M4=config_sp1.m4
cd %Z88DK_DIR%\%CONFIG_DEV%\target\zx\config
if not exist "%FILE_M4%.old" (
copy /Y .\%FILE_M4% .\%FILE_M4%.old
) else (
echo found-copy
)
del %FILE_M4% /F /Q
copy /Y %CURRENT%\%FILE_M4% .\%FILE_M4%
echo. & echo CHANGING: 'arch\zx\*.lst' & pause
set FILE_LST=*.lst
cd %Z88DK_DIR%\%CONFIG_DEV%\arch\zx
del %FILE_LST% /F /Q
copy /Y %CURRENT%\%FILE_LST% .\
echo. & echo Winmake.bat zx & pause
echo RUNING: 'Winmake.bat zx'
start cmd.exe /k "cd %Z88DK_DIR%\%CONFIG_DEV% && Winmake.bat zx"
Maybe lst files are not aligned with the new version. I'll review them.
dom
Well known member
Posts: 1966 Joined: Sun Jul 15, 2007 10:01 pm
Post
by dom » Sun Sep 17, 2023 5:26 pm
Ah.....Winmake.bat - I bet I didn't update that....
Edit: Indeed I didn't, I have now. Thanks for the spot. You can either download the latest version (
https://raw.githubusercontent.com/z88dk ... inmake.bat ) or wait until the next nightly and hopefully it'll be sorted.
fraespre
Member
Posts: 50 Joined: Mon Aug 19, 2019 8:08 pm
Post
by fraespre » Mon Sep 18, 2023 11:23 am
Using this "Winmake.bat" the problem is fixed ;-)
Anyway, I'll test it again with the next "nightly" to make sure that all together is OK.
Thanks a lot, Dom!!!