1. Curious about Euphoria 4.2 Progress

Hi all,

I'm curious how the current progress of Euphoria 4.2 is coming along?

new topic     » topic index » view message » categorize

2. Re: Curios about Euphoria 4.2 Progress

Icy_Viking said...

I'm curious how the current progress of Euphoria 4.2 is coming along?

It's going well! Things slowed down over the holiday season, especially with having moved house the last weekend of December.

Through that time I was having issues getting libffi built correctly on all platforms but I think I have that corrected. I was also working on shoring up the build process for all six platforms (windows-x86, windows-x64, linux-x86, linux-x64, linux-arm, linux-arm64).

Current work is on getting my libffi-euphoria experiment moved into the backend so that it works in tandem with the original C calling code for std/dll.e. I'm about halfway through that right now. Definitely in the 40-60% range.

Once that's working I'll have GitHub workflow set to publish the pre-release builds for download and testing.

-Greg

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

3. Re: Curios about Euphoria 4.2 Progress

ghaberek said...
Icy_Viking said...

I'm curious how the current progress of Euphoria 4.2 is coming along?

It's going well! Things slowed down over the holiday season, especially with having moved house the last weekend of December.

Through that time I was having issues getting libffi built correctly on all platforms but I think I have that corrected. I was also working on shoring up the build process for all six platforms (windows-x86, windows-x64, linux-x86, linux-x64, linux-arm, linux-arm64).

Current work is on getting my libffi-euphoria experiment moved into the backend so that it works in tandem with the original C calling code for std/dll.e. I'm about halfway through that right now. Definitely in the 40-60% range.

Once that's working I'll have GitHub workflow set to publish the pre-release builds for download and testing.

-Greg

Good to hear! Good Luck, Greg!

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

4. Re: Curios about Euphoria 4.2 Progress

I'm using EU 4.2 x64 since January and it works Well.

Euphoria Interpreter v4.2.0 development 
   64-bit Windows, Using System Memory 
   Revision Date: 2024-01-19 01:49:39 
   Id: f24f7211dcc0b65b7824f24188b86cc88fb0b05e 

However, I don't use libffi.

Jean-Marc

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

5. Re: Curios about Euphoria 4.2 Progress

jmduro said...

I'm using EU 4.2 x64 since January and it works Well.

Euphoria Interpreter v4.2.0 development 
   64-bit Windows, Using System Memory 
   Revision Date: 2024-01-19 01:49:39 
   Id: f24f7211dcc0b65b7824f24188b86cc88fb0b05e 

However, I don't use libffi.

That's encouraging to hear. Thanks!

-Greg

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

6. Re: Curios about Euphoria 4.2 Progress

Will Eu 4.2 have a struct type of some sort? Something to help with the libFFI library? Some C structs have many members and accessing them using the [1][2] and so on method can be quite cumbersome when a struct has a ton of members in it.

An idea I have, if possible to implement

struct my_struct  
{ 
 atom x,y 
} 
 
my_struct.x = 10 
new topic     » goto parent     » topic index » view message » categorize

7. Re: Curios about Euphoria 4.2 Progress

Was trying to build this on Windows 11 under WSL but got the following (stored in this gist)

-Bruce

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

8. Re: Curios about Euphoria 4.2 Progress

The old version I use is here: https://github.com/jm-duro/euphoria/releases/download/v4.2.0/euphoria4.2-Win64.zip

Jean-Marc

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

9. Re: Curios about Euphoria 4.2 Progress

Linux build issues too at this gist

-Bruce

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

10. Re: Curios about Euphoria 4.2 Progress

axtens_bruce said...

Was trying to build this on Windows 11 under WSL but got the following (stored in this gist)

Linux build issues too at this gist

For all intents and purposes, WSL is Linux so the only thing that might be helpful is whichever distro you're running. I'm using Ubuntu 24.04 on WSL as my primary development platform.

You probably tried to do a multi-job build (i.e. make -j8) which you should be able to do, but the main Makefile ends up running multiple translations at once, somehow clobbering all over each other.

The Makefile is a recursive mess that calls itself repeatedly with different parameters and a whole lot of ifeq statements. It's like an ouroboros eating its own tail and I hate it.

Unfortunately I haven't been unable to unwind it completely yet. As a (temporary) work-around, I made build.mak, which bootstraps the Makefile correctly and manages some of the top-level dependencies.

Please purge your current build directory and try using build.mak, like this:

make -j$(nproc) -f build.mak PLATFORM=linux-x64 

This should produce a complete package named euphoria-4.2.0-linux-x64-a917604.tar.gz

I've made several improvements to this that I still need to push. I will try to do that soon.

-Greg

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

11. Re: Curios about Euphoria 4.2 Progress

axtens_bruce said...

Linux build issues too at this gist

-Bruce

I built EU 4.2 under WSL on Windows 11 as indicated in the Downloads section with no problem. I just had to add "sudo make install" which seems to be missing.

duro@DESKTOP-BAUM0TJ:~/temp/euphoria/source$ eui -v 
Euphoria Interpreter v4.2.0 development 
   64-bit Linux, Using System Memory 
   Revision Date: 2025-01-24 03:31:36, Id: 22b5124 
duro@DESKTOP-BAUM0TJ:~/temp/euphoria/source$ cat /etc/debian_version 
bookworm/sid 
duro@DESKTOP-BAUM0TJ:~/temp/euphoria/source$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu 
DISTRIB_RELEASE=22.04 
DISTRIB_CODENAME=jammy 
DISTRIB_DESCRIPTION="Ubuntu 22.04.5 LTS" 
duro@DESKTOP-BAUM0TJ:~/temp/euphoria/source$ 

Jean-Marc

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

12. Re: Curios about Euphoria 4.2 Progress

mingw version for x86_64 builds too but the last step to get executables for Windows is not documented and I am not that familiar with mingw.

Jean-Marc

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

13. Re: Curios about Euphoria 4.2 Progress

ghaberek said...

make -j$(nproc) -f build.mak PLATFORM=linux-x64 

This should produce ...

another gist file of errors

-Bruce

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

14. Re: Curios about Euphoria 4.2 Progress

make works for me but this make using build.mak produces an error as for Bruce even if run after a classical make.

duro@DESKTOP-BAUM0TJ:~/temp/euphoria/source$ ls build 
backobj      eu.a    euc               eudis         eui        eutest        libobj          mkver         test818.o 
bind-build   eu.cfg  eucoverage        eudis-build   eushroud   eutest-build  libobj-fPIC     pcre          transobj 
echoversion  eub     eucoverage-build  eudist        euso.a     include       libobjdbg       pcre-fPIC 
ecp.dat      eubind  eudbg.a           eudist-build  eusodbg.a  intobj        libobjdbg-fPIC  shroud-build 
duro@DESKTOP-BAUM0TJ:~/temp/euphoria/source$ make -j$(nproc) -f build.mak PLATFORM=linux-x64 
cd /home/duro/temp/euphoria/docs && eui -i /home/duro/temp/euphoria/include /home/duro/temp/euphoria/source/eui.ex /home/duro/temp/euphoria/source/eudoc/eudoc.ex -d HTML --strip=2 --verbose -a manual.af -o /home/duro/temp/euphoria/source/build-linux-x64/euphoria.txt 
 
/home/duro/temp/euphoria/docs/../include/std/map.e:601 in procedure put() 
A machine-level exception occurred during execution of this statement (signal 11) 
 
... called from /home/duro/temp/euphoria/docs/../include/std/flags.e:13 
 
--> See ex.err 
Segmentation fault (core dumped) 
make[1]: *** [/home/duro/temp/euphoria/source/Makefile.gnu:769: /home/duro/temp/euphoria/source/build-linux-x64/euphoria.txt] Error 139 
make: *** [build.mak:298: /home/duro/temp/euphoria/source/build-linux-x64/html/index.html] Error 2 
duro@DESKTOP-BAUM0TJ:~/temp/euphoria/source$ 

Jean-Marc

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

15. Re: Curios about Euphoria 4.2 Progress

Here is the beginning of ex.err in the docs folder.

/home/duro/temp/euphoria/docs/../include/std/map.e:601 in procedure put()  
A machine-level exception occurred during execution of this statement (signal 11)  
    the_map_p = 1 
    key = 1 
    val = 1 
    op = 1 
    deprecated = 0 
    hashval = 88646550 
    the_map_seq = {1,0,5} 
    slots = { 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0}, 
              {-2,0,0} 
            } 
    index = 7 
    old_hash = -2 
    msg (from inlined routine 'crash' at 291) = <no value> 
    msg (from inlined routine 'crash' at 344) = <no value> 
    msg (from inlined routine 'crash' at 529) = <no value> 
 
... called from /home/duro/temp/euphoria/docs/../include/std/flags.e:13  

I wonder if building the package without documentation could lead to success.

Jean-Marc

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

16. Re: Curios about Euphoria 4.2 Progress

I put Windows and Linux binaries of the latest EU 4.2.0 revision here: https://github.com/jm-duro/euphoria/releases/tag/22b5124

I did my best to create the Windows archive by hand (manual copies). Just take care of eu.cfg. Unzip or untar anywhere, no more to do.

Jean-Marc

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

17. Re: Curios about Euphoria 4.2 Progress

jmduro said...

I put Windows and Linux binaries of the latest EU 4.2.0 revision here: https://github.com/jm-duro/euphoria/releases/tag/22b5124

I did my best to create the Windows archive by hand (manual copies). Just take care of eu.cfg. Unzip or untar anywhere, no more to do.

Jean-Marc

Thank you very much indeed!

-Bruce

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

Search



Quick Links

User menu

Not signed in.

Misc Menu