1. Unable to compile the development version of Euphoria

I have successfully installed Euphoria 4.1.0 and have a working compiler and thus wanted to try to build Euphoria from GIT. I followed the instructions as per configuring etc and the following errors occur:

./euphoria/source/build/mkver "hg" "./euphoria/source/build/ver.cache" "./euphoria/source/build/include/be_ver.h" -DEREL_TYPE="release" 
abort: no repository found in './euphoria/source' (.hg not found)! 
Mercurial seems to not be installed, writing unknown be_ver.h 

It appears that the above indicates that I may need to have Mercurial set up as well. Is this the case ?

gcc -DEX86_64  -m64 -pthread -c -Wall -DEUNIX -DELINUX    -fsigned-char -ffast-math  -fomit-frame-pointer -ffast-math -O3 -Os -DESIMPLE_MALLOC  -DARCH=ix86_64 -DEREL_TYPE="release"  -I./euphoria/source -DELINUX -I ./euphoria/source/build/intobj/back -I ./euphoria/source/build/include ./euphoria/source/be_runtime.c -o./euphoria/source/build/intobj/back/be_runtime.o 
./euphoria/source/be_runtime.c:466:20: warning: ‘struct exception’ declared inside parameter list will not be visible outside of this definition or declaration 
 int matherr(struct exception *err)   // 10.6 wants this 
                    ^~~~~~~~~ 
./euphoria/source/be_runtime.c: In function ‘matherr’: 
./euphoria/source/be_runtime.c:476:12: error: dereferencing pointer to incomplete type ‘struct exception’ 
  switch(err->type) { 
            ^~ 
./euphoria/source/be_runtime.c:478:8: error: ‘DOMAIN’ undeclared (first use in this function); did you mean ‘VMIN’? 
   case DOMAIN: 
        ^~~~~~ 
        VMIN 
./euphoria/source/be_runtime.c:478:8: note: each undeclared identifier is reported only once for each function it appears in 
./euphoria/source/be_runtime.c:481:8: error: ‘SING’ undeclared (first use in this function); did you mean ‘SIN’? 
   case SING: 
        ^~~~ 
        SIN 
./euphoria/source/be_runtime.c:484:8: error: ‘OVERFLOW’ undeclared (first use in this function); did you mean ‘EOVERFLOW’? 
   case OVERFLOW: 
        ^~~~~~~~ 
        EOVERFLOW 
./euphoria/source/be_runtime.c:487:8: error: ‘UNDERFLOW’ undeclared (first use in this function); did you mean ‘OVERFLOW’? 
   case UNDERFLOW: 
        ^~~~~~~~~ 
        OVERFLOW 
./euphoria/source/be_runtime.c:490:8: error: ‘TLOSS’ undeclared (first use in this function); did you mean ‘LESS’? 
   case TLOSS: 
        ^~~~~ 
        LESS 
./euphoria/source/be_runtime.c:491:8: error: ‘PLOSS’ undeclared (first use in this function); did you mean ‘TLOSS’? 
   case PLOSS: 
        ^~~~~ 
        TLOSS 
./euphoria/source/Makefile.gnu:1122: recipe for target './euphoria/source/build/intobj/back/be_runtime.o' failed 
make[2]: *** [./euphoria/source/build/intobj/back/be_runtime.o] Error 1 
make[2]: Leaving directory './euphoria/source' 

I am running Debian Linux (buster/testing) on a 64 bit machine with kernel 4.17.1. My version of GCC is "gcc (Debian 7.3.0-21) 7.3.0" and my version of libc is "GNU C Library (Debian GLIBC 2.27-3) stable release version 2.27".

Doing a 'man matherr' I see that the following is displayed:

Note:  the  mechanism  described in this page is no longer supported by 
glibc.  Before glibc 2.27, it had been marked as obsolete.  Since glibc 
2.27,  the  mechanism  has  been  removed altogether.  New applications 
should use the techniques described in math_error(7) and fenv(3).  This 
page  documents  the  matherr() mechanism as an aid for maintaining and 
porting older applications. 

Does this mean that I need to wait until the code is updated re glibc 2.27 or is there something that I can do so that I can successfully compile the development version of Euphoria ? I am not aware of any package that I could install that would provide backward compatability re the matherr issue and the above errors but if anybody is aware of one I would be most grateful.

new topic     » topic index » view message » categorize

2. Re: Unable to compile the development version of Euphoria

You will have to wait. If other devs can use the new interface on the current machines, I don't see why this could not be used instead where available.

Mercurial must not be required for building. If it is, that is a bug. Previously we used MERCURIAL for change control and for recording the change set for display of the version message.

SD Pringle

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

3. Re: Unable to compile the development version of Euphoria

srb623 said...

I have successfully installed Euphoria 4.1.0 and have a working compiler and thus wanted to try to build Euphoria from GIT. I followed the instructions as per configuring etc and the following errors occur:

./euphoria/source/build/mkver "hg" "./euphoria/source/build/ver.cache" "./euphoria/source/build/include/be_ver.h" -DEREL_TYPE="release" 
abort: no repository found in './euphoria/source' (.hg not found)! 
Mercurial seems to not be installed, writing unknown be_ver.h 

It appears that the above indicates that I may need to have Mercurial set up as well. Is this the case ?

While I may have moved all of the code to GitHub, including the existing Mercurial repo data, I have not yet made any changes to replace Mercurial in the build system.

That being said, Mercurial is not required. Notice that it says, "writing unknown be_ver.h" which means it still writes be_ver.h for you, just without the Mercurial info.

srb623 said...

gcc -DEX86_64  -m64 -pthread -c -Wall -DEUNIX -DELINUX    -fsigned-char -ffast-math  -fomit-frame-pointer -ffast-math -O3 -Os -DESIMPLE_MALLOC  -DARCH=ix86_64 -DEREL_TYPE="release"  -I./euphoria/source -DELINUX -I ./euphoria/source/build/intobj/back -I ./euphoria/source/build/include ./euphoria/source/be_runtime.c -o./euphoria/source/build/intobj/back/be_runtime.o 
 
... lots of errors ... 

I am running Debian Linux (buster/testing) on a 64 bit machine with kernel 4.17.1. My version of GCC is "gcc (Debian 7.3.0-21) 7.3.0" and my version of libc is "GNU C Library (Debian GLIBC 2.27-3) stable release version 2.27".

Doing a 'man matherr' I see that the following is displayed:

Note:  the  mechanism  described in this page is no longer supported by 
glibc.  Before glibc 2.27, it had been marked as obsolete.  Since glibc 
2.27,  the  mechanism  has  been  removed altogether.  New applications 
should use the techniques described in math_error(7) and fenv(3).  This 
page  documents  the  matherr() mechanism as an aid for maintaining and 
porting older applications. 

Does this mean that I need to wait until the code is updated re glibc 2.27 or is there something that I can do so that I can successfully compile the development version of Euphoria ? I am not aware of any package that I could install that would provide backward compatability re the matherr issue and the above errors but if anybody is aware of one I would be most grateful.

Those are all new errors for me. You must be on too new of a system for which we will need to make some changes. Please create a ticket for this so we can address it.

-Greg

P.S. I updated the formatting on your post so it's easier to read. Remember to use triple braces {{{/}}} for blocks of formatted text. The ## tag is just for inline MONOSPACED text.

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

4. Re: Unable to compile the development version of Euphoria

I have tried, twice, to create a ticket as requested by Greg, and on both occasions, the following error message is displayed:

I am sorry, but an error occurred while processing your request. 
 
Incorrect integer value: 'NULL' for column 'assigned_to_id' at row 1 

Is my account able to create tickets as I filled in all of the fields on the form.

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

5. Re: Unable to compile the development version of Euphoria

srb623 said...

I have tried, twice, to create a ticket as requested by Greg, and on both occasions, the following error message is displayed:

I am sorry, but an error occurred while processing your request. 
 
Incorrect integer value: 'NULL' for column 'assigned_to_id' at row 1 

Is my account able to create tickets as I filled in all of the fields on the form.

There were a few patches to the euweb code that didn't get committed back to Mercurial when I ported the site to a new server. This must have been one of those changes.

In the mean time, it will work if you assign the ticket to a user when creating, but I realize that you many not have permission to do so. I've created the ticket and assigned it to myself for now.

https://openeuphoria.org/ticket/975.wc

-Greg

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

6. Re: Unable to compile the development version of Euphoria

There was already a ticket created at https://openeuphoria.org/ticket/974.wc . Go there to see development progress on this issue.

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

Search



Quick Links

User menu

Not signed in.

Misc Menu