Another problem with new SDCC

ZX80, ZX 81, ZX Spectrum, TS2068 and other clones
Post Reply
fraespre
Member
Posts: 50
Joined: Mon Aug 19, 2019 8:08 pm

Another problem with new SDCC

Post by fraespre »

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

Re: Another problem with new SDCC

Post by fraespre »

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
User avatar
dom
Well known member
Posts: 1966
Joined: Sun Jul 15, 2007 10:01 pm

Re: Another problem with new SDCC

Post by dom »

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

Re: Another problem with new SDCC

Post by fraespre »

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.
User avatar
dom
Well known member
Posts: 1966
Joined: Sun Jul 15, 2007 10:01 pm

Re: Another problem with new SDCC

Post by dom »

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

Re: Another problem with new SDCC

Post by fraespre »

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!!!
Post Reply