1. eu 4773 dos

The Dos translator eucd.exe appears to have a bug in in its code that

appeared in the euc.exe translator and was corrected ( see TICKET #223 and #248 ).

In 4773 DOS euc.exe works ok but it looks like the fixes did not make it into eucd.exe

translator source code.


When I run eucd -wat polygon.exd I get the following error file init-.err :

init-.c(1): Error! E1055: Unable to open 'include\euphoria.h' 
main-.h(856): Error! E1022: Missing or misspelled data type near 'object' 
main-.h(859): Error! E1022: Missing or misspelled data type near 'object_ptr' 
main-.h(860): Error! E1022: Missing or misspelled data type near 's1_ptr' 
main-.h(861): Error! E1022: Missing or misspelled data type near 'object' 
init-.c(814): Error! E1175: Too many initializers 
init-.c(815): Error! E1175: Too many initializers 
init-.c(816): Error! E1175: Too many initializers 
init-.c(817): Error! E1175: Too many initializers 
init-.c(818): Error! E1175: Too many initializers 
init-.c(819): Error! E1175: Too many initializers 
init-.c(820): Error! E1175: Too many initializers 
init-.c(821): Error! E1175: Too many initializers 
init-.c(825): Error! E1022: Missing or misspelled data type near 'object' 
init-.c(827): Error! E1175: Too many initializers 
init-.c(828): Error! E1175: Too many initializers 
init-.c(829): Error! E1175: Too many initializers 
init-.c(830): Error! E1175: Too many initializers 
init-.c(831): Error! E1175: Too many initializers 
init-.c(832): Error! E1175: Too many initializers 
init-.c(833): Error! E1147: Too many errors: compilation aborted 
 


I do not have enough know how to understand how the translator is constructed.

new topic     » topic index » view message » categorize

2. Re: eu 4773 dos

BRyan said...

When I run eucd -wat polygon.exd I get the following error file init-.err :

init-.c(1): Error! E1055: Unable to open 'include\euphoria.h' 

I do not have enough know how to understand how the translator is constructed.

I think the real issue is that the compiler can't find the header, which includes lots of important declarations, which are in turn causing those other errors. Make sure that the command line invoking the compiler points to the directory with euphoria.h. This is usually a flag using a capital I, e.g.: /Ic:\euphoria\include

Matt

new topic     » goto parent     » topic index » view message » categorize

3. Re: eu 4773 dos

Matt:

Please read the Tickets that I listed. The same problem was original euc.exe code

new topic     » goto parent     » topic index » view message » categorize

4. Re: eu 4773 dos

BRyan said...

Please read the Tickets that I listed. The same problem was original euc.exe code

And they basically say the problem is what I just said. Can you tell us where euphoria.h is and provide the command line invoking the compiler?

Matt

new topic     » goto parent     » topic index » view message » categorize

5. Re: eu 4773 dos

Its in the include directory

new topic     » goto parent     » topic index » view message » categorize

6. Re: eu 4773 dos

BRyan said...

Its in the include directory

Sorry, I thought you wanted help. Are you being deliberately unhelpful?

Matt

new topic     » goto parent     » topic index » view message » categorize

7. Re: eu 4773 dos

mattlewis said...
BRyan said...

Its in the include directory

Sorry, I thought you wanted help. Are you being deliberately unhelpful?

Matt

No Matt I am serious

new topic     » goto parent     » topic index » view message » categorize

8. Re: eu 4773 dos

BRyan said...
mattlewis said...
BRyan said...

Its in the include directory

Sorry, I thought you wanted help. Are you being deliberately unhelpful?

Matt

No Matt I am serious

"It's in the include directory" is not a very good answer to: "Can you tell us where euphoria.h is and provide the command line invoking the compiler?"

Please, quote the actual path where euphoria.h is and the command line used to invoke the compiler that generated the error you posted.

Matt

new topic     » goto parent     » topic index » view message » categorize

9. Re: eu 4773 dos

I am in the cmd.exe shell an invoking the a tmp directory containing only polygon.exd

Doesn't euc.exe use euphoria.h it works.

new topic     » goto parent     » topic index » view message » categorize

10. Re: eu 4773 dos

BRyan said...

The Dos translator eucd.exe appears to have a bug in in its code that

appeared in the euc.exe translator and was corrected ( see TICKET #223 and #248 ).

In 4773 DOS euc.exe works ok but it looks like the fixes did not make it into eucd.exe

Jeremy's fix to look in standardized locations for euphoria.h was in common code, shared by all platforms (even DOS). So, this fix should have made it in there.

See http://sourceforge.net/p/rapideuphoria/code/3646/tree//trunk/source/common.e?diff=51a507dc34309d7588b4a0a1:3645 - note how on DOS the standard paths are c:/program files/euphoria, c:/program files (x86)/euphoria, and c:/euphoria ... if it's not in c:/euphoria but in one of the other two places then it won't be found (unless you have long file name support set up).

new topic     » goto parent     » topic index » view message » categorize

11. Re: eu 4773 dos

BRyan said...

I am in the cmd.exe shell an invoking the a tmp directory containing only polygon.exd

Doesn't euc.exe use euphoria.h it works.

You said this is the DOS euc.exe right? Why not remove eucd.exe and copy euc.exe to eucd.exe ... that should fix the problem then?

Where is the euphoria.h that euc.exe is using located? What's the full path to that euphoria.h ?

new topic     » goto parent     » topic index » view message » categorize

12. Re: eu 4773 dos

Jim:

It looks like the code in the trunk may have old common.e file.

Can I use the the one out of eu405 source and try that ?

new topic     » goto parent     » topic index » view message » categorize

13. Re: eu 4773 dos

BRyan said...

Jim:

It looks like the code in the trunk may have old common.e file.

Then I don't understand why euc.exe works. Isn't it built from the same source as eucd.exe ?

BRyan said...

Can I use the the one out of eu405 source and try that ?

I don't remember precisely what other changes were made. It might break and fail to build, but on the other hand it just might work.

new topic     » goto parent     » topic index » view message » categorize

14. Re: eu 4773 dos

I tried using common.e from eu405 but still have same problem.

new topic     » goto parent     » topic index » view message » categorize

15. Re: eu 4773 dos

BRyan said...

I tried using common.e from eu405 but still have same problem.

You might try helping us to help you.

Matt

new topic     » goto parent     » topic index » view message » categorize

16. Re: eu 4773 dos

What do you mean by that ?????

new topic     » goto parent     » topic index » view message » categorize

17. Re: eu 4773 dos

BRyan said...

What do you mean by that ?????

Telling us the full path of euphoria.h .. if using 4.0.5's common.e did not resolve the problem, then this is not the same bug as in ticket:248 but a new issue.

To debug this, we need a few bits of information. One of those is the full path of euphoria.h ... we can not proceed without this information.

new topic     » goto parent     » topic index » view message » categorize

18. Re: eu 4773 dos

c:\eunewdos\include\euphoria.h

new topic     » goto parent     » topic index » view message » categorize

19. Re: eu 4773 dos

BRyan said...

What do you mean by that ?????

I've asked you twice for information.

BRyan said...

c:\eunewdos\include\euphoria.h

That's half of it. Now tell us about how the compiler is being invoked.

Matt

new topic     » goto parent     » topic index » view message » categorize

20. Re: eu 4773 dos

BRyan said...

c:\eunewdos\include\euphoria.h

That's not on the default path search list. Are you using EUDIR, and if so what is EUDIR set to?

Where is your eu.cfg located and what are the contents of eu.cfg?

new topic     » goto parent     » topic index » view message » categorize

21. Re: eu 4773 dos

mattlewis said...
BRyan said...

What do you mean by that ?????

I've asked you twice for information.

BRyan said...

c:\eunewdos\include\euphoria.h

That's half of it. Now tell us about how the compiler is being invoked.

Matt

Are you asking how the compiler is invoke or the translator ?

new topic     » goto parent     » topic index » view message » categorize

22. Re: eu 4773 dos

BRyan said...
mattlewis said...
BRyan said...

What do you mean by that ?????

I've asked you twice for information.

BRyan said...

c:\eunewdos\include\euphoria.h

That's half of it. Now tell us about how the compiler is being invoked.

Matt

Are you asking how the compiler is invoke or the translator ?

You read that sentence, right? What do you think?

Matt

new topic     » goto parent     » topic index » view message » categorize

23. Re: eu 4773 dos

THIS IS MY BATCH FILE:


REM move down two directories from source. cd /d %0\..\..

REM set enviorment variable EU to the current directory. set EU=%CD%

REM move back to the source directory. cd %EU%\source\

REM need to create be_callback.c if using source with make_be_callback.ex if not exist make_be_callback.ex goto skip if not exist be_callback.c %EU%\bin\eui.exe make_be_callback.ex

skip

wmake -f makefile.wat clean

wmake -f makefile.wat distclean

call configure eubin %EU%\bin build %EU%\source\build

wmake -f makefile.wat all

new topic     » goto parent     » topic index » view message » categorize

24. Re: eu 4773 dos

BRyan said...

THIS IS MY BATCH FILE:

...

wmake -f makefile.wat all

I think we're closing in on the last tooth that needs to be pulled. When you run that, do you get some sort of command printed in the console that has whatever the Watcom DOS compiler is, plus whatever C file it's compiling?

Alternatively: Look inside the makefile. Somewhere, it builds the command line. Figure out where it builds the part that tells the compiler to look for header files (it will be either the /I or -I flag).

Please report this information (AKA, how the compiler is invoked).

Matt

new topic     » goto parent     » topic index » view message » categorize

25. Re: eu 4773 dos

I'll have to get back with you guys later I have some other things to do right now.

Thanks matt and Jim for now.

new topic     » goto parent     » topic index » view message » categorize

26. Re: eu 4773 dos

mattlewis said...
BRyan said...

THIS IS MY BATCH FILE:

...

wmake -f makefile.wat all

I think we're closing in on the last tooth that needs to be pulled. When you run that, do you get some sort of command printed in the console that has whatever the Watcom DOS compiler is, plus whatever C file it's compiling?

Alternatively: Look inside the makefile. Somewhere, it builds the command line. Figure out where it builds the part that tells the compiler to look for header files (it will be either the /I or -I flag).

Please report this information (AKA, how the compiler is invoked).

Matt

 
The incdir is set makefile.wat 
 
│EXE=$(EX) 
│INCDIR=-i $(TRUNKDIR)\include 
 

One thing that does not make sense to me is that the code in makefile.wat

for building the both translators is the same.

I would think the DOS translator would use a different EU_TARGET

 
 
translator : .SYMBOLIC version.h 
    @echo ------- TRANSLATOR ----------- 
	wmake -h $(BUILDDIR)\transobj\main-.c EX=$(EUBIN)\eui.exe EU_TARGET=ec. OBJDIR=transobj  $(VARS) DEBUG=$(DEBUG) MANAGED_MEM=$(MANAGED_MEM) 
	wmake -h objlist OBJDIR=transobj EU_NAME_OBJECT=EU_TRANSLATOR_OBJECTS $(VARS) 
	wmake -h $(BUILDDIR)\euc.exe EX=$(EUBIN)\eui.exe EU_TARGET=ec. OBJDIR=transobj $(VARS) DEBUG=$(DEBUG) MANAGED_MEM=$(MANAGED_MEM) 
 
dostranslator : .SYMBOLIC version.h 
    @echo ------- DOS TRANSLATOR ----------- 
	wmake -h $(BUILDDIR)\dostrobj\main-.c EX=$(EUBIN)\eui.exe EU_TARGET=ec. OBJDIR=dostrobj $(VARS) DEBUG=$(DEBUG) MANAGED_MEM=1 OS=DOS 
	wmake -h objlist OBJDIR=dostrobj EU_NAME_OBJECT=EU_TRANSDOS_OBJECTS $(VARS) OS=DOS 
	wmake -h $(BUILDDIR)\eucd.exe EX=$(EUBIN)\eui.exe EU_TARGET=ec. OBJDIR=dostrobj $(VARS) DEBUG=$(DEBUG) MANAGED_MEM=1 OS=DOS 
 
 

new topic     » goto parent     » topic index » view message » categorize

27. Re: eu 4773 dos

BRyan said...
mattlewis said...

I think we're closing in on the last tooth that needs to be pulled. When you run that, do you get some sort of command printed in the console that has whatever the Watcom DOS compiler is, plus whatever C file it's compiling?

Alternatively: Look inside the makefile. Somewhere, it builds the command line. Figure out where it builds the part that tells the compiler to look for header files (it will be either the /I or -I flag).

Please report this information (AKA, how the compiler is invoked).

Matt

 
The incdir is set makefile.wat 
 
│EXE=$(EX) 
│INCDIR=-i $(TRUNKDIR)\include 
 

 
 
translator : .SYMBOLIC version.h 
    @echo ------- TRANSLATOR ----------- 
	wmake -h $(BUILDDIR)\transobj\main-.c EX=$(EUBIN)\eui.exe EU_TARGET=ec. OBJDIR=transobj  $(VARS) DEBUG=$(DEBUG) MANAGED_MEM=$(MANAGED_MEM) 
	wmake -h objlist OBJDIR=transobj EU_NAME_OBJECT=EU_TRANSLATOR_OBJECTS $(VARS) 
	wmake -h $(BUILDDIR)\euc.exe EX=$(EUBIN)\eui.exe EU_TARGET=ec. OBJDIR=transobj $(VARS) DEBUG=$(DEBUG) MANAGED_MEM=$(MANAGED_MEM) 
 
dostranslator : .SYMBOLIC version.h 
    @echo ------- DOS TRANSLATOR ----------- 
	wmake -h $(BUILDDIR)\dostrobj\main-.c EX=$(EUBIN)\eui.exe EU_TARGET=ec. OBJDIR=dostrobj $(VARS) DEBUG=$(DEBUG) MANAGED_MEM=1 OS=DOS 
	wmake -h objlist OBJDIR=dostrobj EU_NAME_OBJECT=EU_TRANSDOS_OBJECTS $(VARS) OS=DOS 
	wmake -h $(BUILDDIR)\eucd.exe EX=$(EUBIN)\eui.exe EU_TARGET=ec. OBJDIR=dostrobj $(VARS) DEBUG=$(DEBUG) MANAGED_MEM=1 OS=DOS 
 
 

That's the wrong one! That's for the translator, not the compiler!

Also, posting makefile.wat won't help... but the complete contents of config.wat might.

BRyan said...

One thing that does not make sense to me is that the code in makefile.wat

for building the both translators is the same.

I would think the DOS translator would use a different EU_TARGET

Why? EU_TARGET is one of the interpreter, translator, or backend. It's trying to build the translator for DOS in this case, so it's the same EU_TARGET.. EU_TARGETs are shared between different platforms.

new topic     » goto parent     » topic index » view message » categorize

28. Re: eu 4773 dos

Here is config.wat :

 
# Configuration for Watcom  
EUBIN=C:\EUNEWDOS\bin  
EUPHORIA=1  
MANAGED_MEM=1  
DELTREE=del /Q /S  
RM=del /Q  
RMDIR=rmdir /Q/S  
TRUNKDIR=C:\EUNEWDOS  
BUILDDIR=C:\EUNEWDOS\source\build  
 

new topic     » goto parent     » topic index » view message » categorize

29. Re: eu 4773 dos

BRyan said...

Here is config.wat :

 
# Configuration for Watcom  
EUBIN=C:\EUNEWDOS\bin  
EUPHORIA=1  
MANAGED_MEM=1  
DELTREE=del /Q /S  
RM=del /Q  
RMDIR=rmdir /Q/S  
TRUNKDIR=C:\EUNEWDOS  
BUILDDIR=C:\EUNEWDOS\source\build  
 

Ok, I have figured this out and I think I know exactly what is wrong and have a patch available to fix it.

I guess wcc386's command line options are case sensitive...

new topic     » goto parent     » topic index » view message » categorize

30. Re: eu 4773 dos

Ok Thanks jim

I'll will be waiting to test the fix.

new topic     » goto parent     » topic index » view message » categorize

31. Re: eu 4773 dos

jimcbrown said...
BRyan said...

Here is config.wat :

 
# Configuration for Watcom  
EUBIN=C:\EUNEWDOS\bin  
EUPHORIA=1  
MANAGED_MEM=1  
DELTREE=del /Q /S  
RM=del /Q  
RMDIR=rmdir /Q/S  
TRUNKDIR=C:\EUNEWDOS  
BUILDDIR=C:\EUNEWDOS\source\build  
 

Ok, I have figured this out and I think I know exactly what is wrong and have a patch available to fix it.

I guess wcc386's command line options are case sensitive...

Jim:

Have you come up with a patch for DOS 4773 case problem ?

new topic     » goto parent     » topic index » view message » categorize

32. Re: eu 4773 dos

BRyan said...

Jim:

Have you come up with a patch for DOS 4773 case problem ?

"case" problem? There's an issue with 'switch' ?

I ended up coming up with two patches to the problem in this thread, the right fix and a quick fix.

I'll leave it to the reader to figure out which is which.

--- Makefile.wat     2013-01-04 08:12:21.000000000 -0400 
+++ Makefile.wat       2014-01-11 12:41:30.829085988 -0400 
@@ -424,7 +424,7 @@ 
 CC = wcc386 
  .ERASE 
   COMMON_FLAGS = $(DEBUGFLAG) 
   -FE_FLAGS = /bt=nt /mf /w0 /zq /j /zp4 /fp5 /fpi87 /5r /otimra /s  /I..\ $(EREL_TYPE) 
   +FE_FLAGS = /bt=nt /mf /w0 /zq /j /zp4 /fp5 /fpi87 /5r /otimra /s  /I$(BUILDDIR)\include /I$(BUILDDIR) /I$(BUILDDIR)\source $(EREL_TYPE) 
    BE_FLAGS = /ol /zp4 /d$(OSFLAG) /5r /dEWATCOM  /dEOW $(SETALIGN4) $(NOASSERT) $(HEAPCHECKFLAG) $(%ERUNTIME) $(EXTRACHECKFLAG) $(EXTRASTATSFLAG)  $(MEMFLAG) $(EREL_TYPE) 
 
     library : .SYMBOLIC 

--- Makefile.wat     2013-01-04 08:12:21.000000000 -0400 
+++ Makefile.wat       2014-01-11 12:41:30.829085988 -0400 
@@ -424,7 +424,7 @@ 
 CC = wcc386 
  .ERASE 
   COMMON_FLAGS = $(DEBUGFLAG) 
   -FE_FLAGS = /bt=nt /mf /w0 /zq /j /zp4 /fp5 /fpi87 /5r /otimra /s  /I..\ $(EREL_TYPE) 
   +FE_FLAGS = /bt=nt /mf /w0 /zq /j /zp4 /fp5 /fpi87 /5r /otimra /s  /I..\ /IC:\EUNEWDOS\include $(EREL_TYPE) 
    BE_FLAGS = /ol /zp4 /d$(OSFLAG) /5r /dEWATCOM  /dEOW $(SETALIGN4) $(NOASSERT) $(HEAPCHECKFLAG) $(%ERUNTIME) $(EXTRACHECKFLAG) $(EXTRASTATSFLAG)  $(MEMFLAG) $(EREL_TYPE) 
 
     library : .SYMBOLIC 

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu