D:\PRIVAT\ZX81\DEV\LAN\sendmail>zcc +zx81 -startup=2 -create-app -vn -O3 -o smai
l.bin mini_sendmail-V2.3.c -llibsocket -llibhttp
Error at file 'mini_sendmail-V2.3.c' line 477: symbol '_strpos' not defined
Error at file 'mini_sendmail-V2.3.c' line 559: symbol '_strpos' not defined
Error at file 'mini_sendmail-V2.3.c' line 1099: symbol '_strpos' not defined
3 errors occurred during assembly
Errors in source file c:\z88dk\lib\config\\..\..\\lib\target\zx81\classic\zx81_c
rt0.asm:
Error at file 'mini_sendmail-V2.3.c' line 477: symbol '_strpos' not defined
^ ---- if ( status != 250 && status != 251 )
Error at file 'mini_sendmail-V2.3.c' line 559: symbol '_strpos' not defined
^ ---- while ((rc >= 0) && (poll_fd(sockfd1) == 4))
Error at file 'mini_sendmail-V2.3.c' line 1099: symbol '_strpos' not defined
^ ---- (null)D:\PRIVAT\ZX81\DEV\LAN\sendmail>
I don't have information about its removal, but I understand it is not in the posix standard. The equivalent function should be strstr().
The wrong line numbers being reported is for another known bug.
Please confirm it is a valid workaround and let me know what link in the wiki is reporting the wrong information.
classic is now using the newlib string functions which doesn't have strpos (it's not posix and is a non-posix equivalent to strstr as mentioned). Classic retained a couple of other string functions not in newlib but missed / deliberately omitted strpos.