Million errors

Installing on windows
Post Reply
siggi
Well known member
Posts: 344
Joined: Thu Jul 26, 2007 9:06 am

Million errors

Post by siggi »

Hi,
I downloaded the current WIN32-build ZIP-file and unpacket it into c:\z88dk. I had an old version of z88dk installend (renamend the directory befor unzip), so the environment vairables are unchanged and worked befor.

When I try to compile "Hello world" for ZX81 (zcc +zx81 -notemp -no-cleanup hw.c) I get "millions" of error messages:

Here is the start and the end of file "crt0.err"

Code: Select all

Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 8, Module name already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 63, Symbol 'START' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 85, Symbol 'CLEANUP' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 98, Symbol 'START1' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 102, Symbol 'L_DCAL' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 107, Symbol '__SGOIOBLK' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 118, Symbol '_VFPRINTF' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 137, Symbol '_STD_SEED' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 141, Symbol 'EXITSP' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 143, Symbol 'EXITCOUNT' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 148, Symbol 'HEAPLAST' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 149, Symbol 'HEAPBLOCKS' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 152, Symbol 'BASE_GRAPHICS' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 154, Symbol 'COORDS' already defined
Error: File 'C:\z88dk\lib\/float.asm', Module 'ABC80_CRT0', at line 52, Symbol 'DSTORE' already defined
Error: File 'C:\z88dk\lib\/float.asm', Module 'ABC80_CRT0', at line 63, Symbol 'DLOAD' already defined
Error: File 'C:\z88dk\lib\/float.asm', Module 'ABC80_CRT0', at line 71, Symbol 'DLDPSH' already defined
Error: File 'C:\z88dk\lib\/float.asm', Module 'ABC80_CRT0', at line 77, Symbol 'DPUSH' already defined
Error: File 'C:\z88dk\lib\/float.asm', Module 'ABC80_CRT0', at line 90, Symbol 'DPUSH2' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 176, Symbol 'FP_SEED' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 178, Symbol 'EXTRA' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 179, Symbol 'FA' already defined
Error: File 'C:\z88dk\lib\/abc80_crt0.asm', Module 'ABC80_CRT0', at line 180, Symbol 'FASIGN' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 348, Module name already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 408, Symbol 'START' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 429, Symbol 'CLEANUP' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 441, Symbol 'START1' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 445, Symbol 'L_DCAL' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 450, Symbol '__SGOIOBLK' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 461, Symbol '_VFPRINTF' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 480, Symbol '_STD_SEED' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 484, Symbol 'EXITSP' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 486, Symbol 'EXITCOUNT' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 491, Symbol 'HEAPLAST' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 492, Symbol 'HEAPBLOCKS' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 496, Symbol 'BASE_GRAPHICS' already defined


.. some more 12000 lines ...

Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29511, Symbol 'ZXFP_GET_ARGT' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29513, Symbol 'ZXFP_TRUNCATE' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29515, Symbol 'ZXFP_FP_CALC_2' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29517, Symbol 'ZXFP_E_TO_FP' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29521, Symbol 'ZXFP_SERIES_06' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29525, Symbol 'ZXFP_ST_MEM_0' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29527, Symbol 'ZXFP_ST_MEM_1' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29529, Symbol 'ZXFP_ST_MEM_2' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29531, Symbol 'ZXFP_ST_MEM_3' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29533, Symbol 'ZXFP_ST_MEM_4' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29535, Symbol 'ZXFP_ST_MEM_5' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29539, Symbol 'ZXFP_GET_MEM_0' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29541, Symbol 'ZXFP_GET_MEM_1' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29543, Symbol 'ZXFP_GET_MEM_2' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29545, Symbol 'ZXFP_GET_MEM_3' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29547, Symbol 'ZXFP_GET_MEM_4' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29549, Symbol 'ZXFP_GET_MEM_5' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29553, Symbol 'ZXFP_STK_ZERO' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29555, Symbol 'ZXFP_STK_ONE' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29557, Symbol 'ZXFP_STK_HALF' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29559, Symbol 'ZXFP_STK_PI_D_2' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29561, Symbol 'ZXFP_STK_TEN' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29567, Symbol 'ZXFP_CH_ADD' already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29633, Module name already defined
Error: File 'crt0.asm', Module 'ABC80_CRT0', at line 29638, File 'zxsysvar48.def' open error
Any hint, what to do?

Siggi

The test program
#include <stdio.h>
main ()
{
printf("Hello world\n");
}
User avatar
dom
Well known member
Posts: 2072
Joined: Sun Jul 15, 2007 10:01 pm

Post by dom »

Oh wow, that really is impressively broken! And the reason is quite amazingly dumb. If someone can explain I'd appreciate some enlightenment.

Please change the / on the CRT0 line in z88dk/lib/config/zx81.cfg to a \ (also applies for any target).

I'll try and bodge the build scripts to sort this one out.
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Post by stefano »

I'm always in trouble with those config files on windows, and every time I install z88dk on a new system I'm re-inventing the wheel (everything changes from cygwin to mingw32). Just I hope it is not due to something I put online ages ago and then I forgot.
siggi
Well known member
Posts: 344
Joined: Thu Jul 26, 2007 9:06 am

Post by siggi »

Perhaps also in the lines

VLINKOPTS -Lc:\z88dk\lib/vlink/

COPTRULES1 c:\z88dk\lib/z80rules.1
COPTRULES2 c:\z88dk\lib/z80rules.2
COPTRULES3 c:\z88dk\lib/z80rules.0

?

Siggi
User avatar
dom
Well known member
Posts: 2072
Joined: Sun Jul 15, 2007 10:01 pm

Post by dom »

I think those are probably ok (certainly coptrules are). I'm guessing that since we execute "copy" with the CRT0 argument the / means the rest of line gets interpreted as an option which means "blow up the world" :)
User avatar
dom
Well known member
Posts: 2072
Joined: Sun Jul 15, 2007 10:01 pm

Post by dom »

stefano wrote:I'm always in trouble with those config files on windows, and every time I install z88dk on a new system I'm re-inventing the wheel (everything changes from cygwin to mingw32). Just I hope it is not due to something I put online ages ago and then I forgot.
No not your fault! I'm just missing an appropriate sed in the build script or some nasty bodge code in zcc to sort out the slashes.

Most of the slashes don't need changing since we use open() to access the file and the win32 API permits directory separators to be / or \. It's just copy that blows up.
siggi
Well known member
Posts: 344
Joined: Thu Jul 26, 2007 9:06 am

Post by siggi »

Thanks.
The problem is solved!

Perhaps you should use a ZX81 to make Z88DK, because the Zeddy has only a "/" in its character set, so you have no chance to use the wrong slash :-)

Siggi
siggi
Well known member
Posts: 344
Joined: Thu Jul 26, 2007 9:06 am

Post by siggi »

dom wrote:Most of the slashes don't need changing since we use open() to access the file and the win32 API permits directory separators to be / or \. It's just copy that blows up.
Why don't you write an own COPY program, which "eats" all kind of slashes (instead of using the dump WINdoofs COPY ;-) )

Siggi
User avatar
dom
Well known member
Posts: 2072
Joined: Sun Jul 15, 2007 10:01 pm

Post by dom »

I think I'll eventually end up writing a function that does that.

I'd forgotten about the win32 nonsense when I was making changes, even with the big churn this evening.

I'll try it out tomorrow with a nightly and see if I've restored functionality.
stefano
Well known member
Posts: 2137
Joined: Mon Jul 16, 2007 7:39 pm

Post by stefano »

To add confusion the behaviour of those special characters depend on the shell environment and on the way the program has been built.

I've been lucky, using CygWin I could simply get the new .cgf files set in this way:
C:\z88dk\lib\config>copy *.lnx *.cfg

Surprisingly all was easier this time ; gccmake, copy *.lnx *.cfg, new cmd instance to permit PATH to find the newly created 'bin' folder, and 'make' under libsrc. It even looked faster than usual !
Post Reply