1. missing eu.a

I have the beta of Euphoria 4.0 installed on Windows XP. When I use the command: euc -gcc filename, Gcc says that it can't find eu.a. Where is eu.a? Thanks.

new topic     » topic index » view message » categorize

2. Re: missing eu.a

tiger0581 said...

I have the beta of Euphoria 4.0 installed on Windows XP. When I use the command: euc -gcc filename, Gcc says that it can't find eu.a. Where is eu.a?

install minGW or cygwin, you have to compile from source to get eu.a, probably has to be from the same version of gcc. what does gcc -v show?

may be better off installing openwatcom. gcc trsnslated programs on windows are much slower and not everything has been tested. all the tests and libs expect windows to have backslash filenames for one thing. if that were selectable you could at least run from a dos box or a bash shell.

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

3. Re: missing eu.a

ne1uno said...

may be better off installing openwatcom. gcc trsnslated programs on windows are much slower and not everything has been tested. all the tests and libs expect windows to have backslash filenames for one thing. if that were selectable you could at least run from a dos box or a bash shell.

I wonder if we should leave MINGW support in to support in the future but "hide" the parameters, i.e. make -mng to the translator a hidden parameter? I did not realize that it was limited at this point. It seems like a work in progress that really shouldn't be used yet?

Jeremy

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

4. Re: missing eu.a

jeremy said...
ne1uno said...

may be better off installing openwatcom. gcc trsnslated programs on windows are much slower and not everything has been tested.

I wonder if we should leave MINGW support in to support in the future but "hide" the parameters, i.e. make -mng to the translator a hidden parameter?

the minGW compile does work, and recently it can compile itself even in debug mode. most commandline or simple windows programs work fine. just has a problem with backslashed filenames in some cases depending on the shell used, and callbacks seem to be a problem.

newer versions of gcc may optomize better, removing the speed advantage of openwatcom at the moment. I've only really tried the default optomization flags.

maybe just a warning banner in the production releases for -gcc on win32?

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

5. Re: missing eu.a

ne1uno said...

just has a problem with backslashed filenames in some cases depending on the shell used, and callbacks seem to be a problem.

...

maybe just a warning banner in the production releases for -gcc on win32?

What would be optimal is to solve these problems before the next beta release, scheduled for 8/25. Any chance on that happening?

Jeremy

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

6. Re: missing eu.a

jeremy said...
ne1uno said...

just has a problem with backslashed filenames in some cases depending on the shell used, and callbacks seem to be a problem.

...

maybe just a warning banner in the production releases for -gcc on win32?

What would be optimal is to solve these problems before the next beta release, scheduled for 8/25. Any chance on that happening?

Jeremy

I wasn't aware that there was a problem with callbacks. What is the issue there?

I'm not sure what to do about the backslash problem. Are you saying that 'include std\file.e' fails because of this? Or that open("temp/test.txt", "w") fails? My understanding was that MinGW supported it either way, so MinGW compiled Eu should too. If I am wrong, then the typical way to deal with this is to have a standardize_file_seperator() function which would accept using either backslash or forward slashes as a file seperator and then return either all backslash on watcom or all forward slash on MinGW.

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

7. Re: missing eu.a

jimcbrown said...

I'm not sure what to do about the backslash problem. Are you saying that 'include std\file.e' fails because of this? Or that open("temp/test.txt", "w") fails? My understanding was that MinGW supported it either way, so MinGW compiled Eu should too. If I am wrong, then the typical way to deal with this is to have a standardize_file_seperator() function which would accept using either backslash or forward slashes as a file seperator and then return either all backslash on watcom or all forward slash on MinGW.

What I'm trying to say is that the proper way to fix this is to make it so that MinGW compiled EU works with either type of slash. If I had a way to build and run MinGW compiled programs I could probably get this done in a day...

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

8. Re: missing eu.a

jimcbrown said...

What I'm trying to say is that the proper way to fix this is to make it so that MinGW compiled EU works with either type of slash. If I had a way to build and run MinGW compiled programs I could probably get this done in a day...

It's vita that it at least support include std/io.e ... open("abc/def.txt", ...). That's the way everything is coded as it's supported in OpenWatcom and gcc (on all unix variants that we support). It's also easier to deal with than open("abc
def.txt", ...)

Jeremy

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

9. Re: missing eu.a

Gcc -v shows version 4.1.2.

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

10. Re: missing eu.a

jimcbrown said...
jeremy said...
ne1uno said...

just has a problem with backslashed filenames in some cases depending on the shell used, and callbacks seem to be a problem.

What would be optimal is to solve these problems before the next beta release,

I wasn't aware that there was a problem with callbacks. What is the issue there?

tests/t_legacy_callback.e fails translated.

some win32lib programs fail interpreted or translated. watcom translated tests/t_legacy_callback.e works but does crash on some translated win32lib programs. having a hard time finding a reasonable size test.

jimcbrown said...

I'm not sure what to do about the backslash problem. Are you saying that 'include std\file.e' fails because of this? Or that open("temp/test.txt", "w") fails?

using a just minGW built eui to build itself again is a pretty good test of sanity. include works with both slashes and open for write works as well. no surprize there.

there are a few moving parts to the problem.

  • build system

current makefile requires a typical *nix shell which not every minGW user would have. cygwin is a little more forgiving about accepting either forward or back slashes. Jam requires a patch to run in Msys shell.

  • eutest run from Msys bash shell.

$ make test 
cd ../tests && EUDIR=/usr/local/eu4 EUCOMPILEDIR=/usr/local/eu4 eui.exe ../source/eutest.ex -i ../include -cc gcc -exe /usr/local/eu4/source/eui.exe -ec /usr/local/eu4/source/euc.exe -lib /usr/local/eu4/source/eu.a 
interpreting t_c_crash.e: 
FAILURE: t_c_crash.e No ex.err has been generated. 
and more of the same 
I assume the problem here is eutest building/joining BUILDDIR & SLASH &TEST or something equally hardwired. maybe eutest has a verbose mode?

it may be possible to run eutest from a dosbox in the test directory once minGW/eui is built.

jimcbrown said...

...the typical way to deal with this is to have a standardize_file_seperator() function which would accept using either backslash or forward slashes as a file seperator and then return either all backslash on watcom or all forward slash on MinGW.

this is almost happening now. the constant SLASH should be set depending on what shell requires for SLASH. doswindow would be backslash, any kind of bash then forward. but then the drive can be a problem. Msys can't deal with c:\something has to be /c/something depending on how the path is used.

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

11. Re: missing eu.a

ne1uno said...
  • build system

current makefile requires a typical *nix shell which not every minGW user would have. cygwin is a little more forgiving about accepting either forward or back slashes. Jam requires a patch to run in Msys shell.

but Jam does not require cygwin or msys to use MinGW. Just install MinGW and type set JAM_TOOLSET=MINGW and jam from the normal command prompt. That's all.

Jeremy

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

12. Re: missing eu.a

When I use simply:

C:\euphoria\tests> eutest -exe ..\build\eui.exe 
... 
Test results summary: 
    FAIL: t_net_http.e 
    FAIL: t_os.e 
    FAIL: t_text.e 
Files run: 92, failed: 3 (96.7% success) 

The failing t_net_http.e is a known issue. The other two should have passed. Oh, this is with eui.exe build with MinGW w/of MSys or Cygwin:

C:\euphoria> SET JAM_TOOLSET=MINGW 
C:\euphoria> jam eui 
... 
C:\euphoria> cd tests 
C:\euphoria\tests> eutest ..\build\eui.exe 

Jeremy

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

13. Re: missing eu.a

jeremy said...

When I use simply:

C:\euphoria\tests> eutest -exe ..\build\eui.exe 
... 
Test results summary: 
    FAIL: t_net_http.e 
    FAIL: t_os.e 
    FAIL: t_text.e 
Files run: 92, failed: 3 (96.7% success) 

so translated legacy callback test isn't crashing. can I assume you are using a recent version of gcc >4.? so it may be some problem with win98 or the gcc3.45 I still use.

jeremy said...

C:\euphoria> SET JAM_TOOLSET=MINGW 
C:\euphoria> jam eui 
... 
C:\euphoria> cd tests 
C:\euphoria\tests> eutest ..\build\eui.exe 

the options for compiling eu4 w/minGW

    1. wait a few days for beta2 and use Jam (it may work w/beta1 as well)
    2. install Msys or cygwin and use source/makefile
    3. maybe someone using gcc4 on windows will make their eu.a available.
new topic     » goto parent     » topic index » view message » categorize

14. Re: missing eu.a

C:\Development\Projects\euphoria>gcc -v
Reading specs from C:/Development/Tools/mingw/bin/../lib/gcc/mingw32/3.4.2/specs Configured with: ../gcc/configure with-gcc with-gnu-ld with-gnu-as host=mingw32 target=min gw32 prefix=/mingw enable-threads disable-nls enable-languages=c,c++,f77,ada,objc,java dis able-win32-registry disable-shared enable-sjlj-exceptions enable-libgcj disable-java-awt w ithout-x enable-java-gc=boehm disable-libgcj-debug enable-interpreter enable-hash-synchroniz ation enable-libstdcxx-debug
Thread model: win32
gcc version 3.4.2 (mingw-special)

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

15. Re: missing eu.a

ne1uno said...

tests/t_legacy_callback.e fails translated.

Can you be more specific about the crashes? Does either test pass?

Matt

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

16. Re: missing eu.a

mattlewis said...
ne1uno said...

tests/t_legacy_callback.e fails translated.

Can you be more specific about the crashes? Does either test pass?

Matt

using minGW compiled w/managed_mem, note it still says using system memory. Euphoria Interpreter 4.0.0 development (r2543) for Windows Using System Memory, EuConsole

I copied t_legacy_callback.e to t_legacy_callback1.e & t_legacy_callback2.e with one test commented out in each.

both tests crash in debug mode interpreted. both pass interpreted in release mode.

both crash translated release mode.

I think Jeremy didn't test translated. eutest, contrary to what the docs say, donesn't run translated tests by default. it would have no idea how to find or choose a compiler.

would need a commmandline something like: eui ..\source\eutest -ec euc -cc gcc but that is not quite working,

interpreting t_call.e: 
translating, compiling, and executing executable: t_call.e 
...................................FAILURE: t_call program could not be compiled 
 
.  Error -1 executing:# TODO: check for executable, jump to done 
 

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

Search



Quick Links

User menu

Not signed in.

Misc Menu