1. Dual installationof Euphoria (3.1.1 and 4.0 rc2)

Jeremy:

I have 3.1.1 installed, which of course sets EUDIR and EUINC in the environment to point to the respective 3.1.1 directories. I would also like to install 4.0 rc2 on the same system (WINDOWS-XP), but if I do, I can not use the same environment names to point to the EU4 directory or include sub-directory. I know I can create a bunch of BAT files to reset the values of EUDIR ans EUINC each time I want to execute a 4.0 version file, but this gets to be a pain after awhile. My question is, is there an easy way to change version 4.0s's environment names to something other than EUDIR and EUINC permanently without having to completely rebuild version 4.0. That way, both 3.1.1 and 4.0 could coexist on the same system.

Don

new topic     » topic index » view message » categorize

2. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

GSAC3 said...

Jeremy:

I have 3.1.1 installed, which of course sets EUDIR and EUINC in the environment to point to the respective 3.1.1 directories. I would also like to install 4.0 rc2 on the same system (WINDOWS-XP), but if I do, I can not use the same environment names to point to the EU4 directory or include sub-directory. I know I can create a bunch of BAT files to reset the values of EUDIR ans EUINC each time I want to execute a 4.0 version file, but this gets to be a pain after awhile. My question is, is there an easy way to change version 4.0s's environment names to something other than EUDIR and EUINC permanently without having to completely rebuild version 4.0. That way, both 3.1.1 and 4.0 could coexist on the same system.

With 4.0, you really don't need environment variables. The easiest thing to do is to set up a eu.cfg file. You can put it in the euphoria\bin directory where the 4.0 binaries are. The key thing to put there is:

-i C:\euphoria-4.0\include 
(Or whatever the correct path is).

Matt

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

3. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

GSAC3 said...

Jeremy:

I have 3.1.1 installed, which of course sets EUDIR and EUINC in the environment to point to the respective 3.1.1 directories. I would also like to install 4.0 rc2 on the same system (WINDOWS-XP), but if I do, I can not use the same environment names to point to the EU4 directory or include sub-directory. I know I can create a bunch of BAT files to reset the values of EUDIR ans EUINC each time I want to execute a 4.0 version file, but this gets to be a pain after awhile. My question is, is there an easy way to change version 4.0s's environment names to something other than EUDIR and EUINC permanently without having to completely rebuild version 4.0. That way, both 3.1.1 and 4.0 could coexist on the same system.

Don

No. The recommended way to do this is to leave the environment variables for use by 3.1.1 and use an eu.cfg for 4.0

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

4. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

Jeremy:

I downloaded 4.0, installed it on my J drive (without resetting the version 3.1.1 EUINC and EUDIR environment names) and created the EU.CFG file with the single line -i J:\EU4\include in the the J:\EU4\bin directory.

I then tried to run the ed.ex program in the bin directory and got the following result:

J:\EU4\bin\ed.ex:36 can't find std/graphics.e in J:\EU4\bin or in C:\EUPHORIA\Include\WinClass or in C:\EUPHORIA\include include std/graphics.e ^ The eu.cfg file does not seem to be being used even though it exists in the bin directory. Version 4.0 instead is looking in version 3.1.1's EUINC environment variable. J:\EU4\include\std does contain graphics.e

What am I missing?

Don

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

5. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

GSAC3 said...

Jeremy:

I downloaded 4.0, installed it on my J drive (without resetting the version 3.1.1 EUINC and EUDIR environment names) and created the EU.CFG file with the single line -i J:\EU4\include in the the J:\EU4\bin directory.

I then tried to run the ed.ex program in the bin directory and got the following result:

J:\EU4\bin\ed.ex:36 can't find std/graphics.e in J:\EU4\bin or in C:\EUPHORIA\Include\WinClass or in C:\EUPHORIA\include include std/graphics.e ^ The eu.cfg file does not seem to be being used even though it exists in the bin directory. Version 4.0 instead is looking in version 3.1.1's EUINC environment variable. J:\EU4\include\std does contain graphics.e

What am I missing?

Don

eu.cfg needs to go in %HOMEDRIVE%:\%HOMEPATH%

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

6. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

I have the eu.cfg file located in J:\EU4 , which is my home drive and directory in this case, as well as in my J:\EU4\bin directory.

The results are the same:

J:\EU4\bin\ed.ex:36 can't find std/graphics.e in J:\EU4\bin or in C:\EUPHORIA\Include\WinClass or in C:\EUPHORIA\include include std/graphics.e ^

Don

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

7. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

GSAC3 said...

I have the eu.cfg file located in J:\EU4

What does your eu.cfg file look like?

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

8. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

GSAC3 said...

I have the eu.cfg file located in J:\EU4 , which is my home drive and directory in this case, as well as in my J:\EU4\bin directory.

The results are the same:

J:\EU4\bin\ed.ex:36 can't find std/graphics.e in J:\EU4\bin or in C:\EUPHORIA\Include\WinClass or in C:\EUPHORIA\include include std/graphics.e ^

Don

The relevant code is in trunk/source/pathopen.e

        elsifdef WINDOWS then 
                env = getenv( "ALLUSERSPROFILE" ) 
                if sequence(env) then 
                        default_args &= load_euphoria_config( expand_path( "euph 
oria", env ) & conf_file ) 
                end if 
 
                env = getenv( "APPDATA" ) 
                if sequence(env) then 
                        default_args &= load_euphoria_config( expand_path( "euph 
oria", env ) & conf_file ) 
                end if 
 
                env = getenv( "HOMEPATH" ) 
                if sequence(env) then 
                        default_args &= load_euphoria_config( getenv( "HOMEDRIVE 
" ) & env & "\\" & conf_file ) 
                end if 
 

It must be in %HOMEDRIVE%\%HOMEPATH% or one of the other more obscure locations.

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

9. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

-i J:\EU4\include

Don

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

10. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

GSAC3 said...

I have the eu.cfg file located in J:\EU4 , which is my home drive and directory in this case, as well as in my J:\EU4\bin directory.

The results are the same:

J:\EU4\bin\ed.ex:36 can't find std/graphics.e in J:\EU4\bin or in C:\EUPHORIA\Include\WinClass or in C:\EUPHORIA\include include std/graphics.e ^

Don

You can override %EUDIR% in eu.cfg

Add a line like this:

-eudir j:\eu4 
new topic     » goto parent     » topic index » view message » categorize

11. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

The overide in EU.CFG does not work.

My EU.CFG file contains the following two lines:

-eudir j:\eu4 
-euinc j:\eu4\include 

But when I run ED.EX in the j:\eu4\bin directory, I keep getting the following result:

J:\EU4\bin\ed.ex:36 
 
can't find std/graphics.e in J:\EU4\bin 
 
or in C:\EUPHORIA\Include\WinClass 
 
or in C:\EUPHORIA\include 
 
include std/graphics.e 
 
                      ^ 

Don

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

12. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

What does -euinc do? I don't recall an option called -euinc.

GSAC3 said...

The overide in EU.CFG does not work.

My EU.CFG file contains the following two lines:

-eudir j:\eu4 
-euinc j:\eu4\include 

But when I run ED.EX in the j:\eu4\bin directory, I keep getting the following result:

J:\EU4\bin\ed.ex:36 
 
can't find std/graphics.e in J:\EU4\bin 
 
or in C:\EUPHORIA\Include\WinClass 
 
or in C:\EUPHORIA\include 
 
include std/graphics.e 
 
                      ^ 

Don

You say you run ed.ex in j:\eu4\bin directory. How? If you use windows explorer and double click on it, the problem might be file associations - ex might still be assigned to the 3.1.1 exw.exe

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

13. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

jimcbrown said...

What does -euinc do? I don't recall an option called -euinc.

It should be -i j:\eu4. However, the -eudir should have picked up J:\eu4\include by itself.

Also, there may be some confusion here. Using -i does not overwrite your EUINC variable. It simply inserts those paths before your EUINC variable. Thus, those paths will still be searched but the first path the file is found in will be used, thus the files in EUINC will probably never be searched.

Jeremy

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

14. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

The problem I was having was due, in part, to the fact that the file I was trying to run (ED.EX) was associated with version 3.1.1. not 4.0. Changing the association and inserting the -eudir j:\eu4 in the EU.CFG file in the j:\eu4\bin directory works OK now. Of course now, all of the console files in my 3.1.1 Euphoria are also associated with version 4.0 instead of 3.1.1. Looks like solving one issue just created another one.

Is there somewhere I can find out what all the acceptable EU.CFG file syntax is?

Thanks for your help.

Don

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

15. Re: Dual installationof Euphoria (3.1.1 and 4.0 rc2)

GSAC3 said...

The problem I was having was due, in part, to the fact that the file I was trying to run (ED.EX) was associated with version 3.1.1. not 4.0. Changing the association and inserting the -eudir j:\eu4 in the EU.CFG file in the j:\eu4\bin directory works OK now. Of course now, all of the console files in my 3.1.1 Euphoria are also associated with version 4.0 instead of 3.1.1. Looks like solving one issue just created another one.

Is there somewhere I can find out what all the acceptable EU.CFG file syntax is?

Thanks for your help.

Anything that can be used on the command line can be put into a eu.cfg file. You can view details about eu.cfg in the manual, man:configuration. You can view possible options to eui by typing eui --help from a console.

C:\Development\Projects\euphoria>eui --help 
C:\Development\Projects\euphoria\bin\eui.exe options: 
   [-eudir dir]              Overrides the value of EUDIR 
   [-c filename]             Specify a configuration file 
   [-i dir]                  Add a directory to be searched for include files 
   [-d word]                 Define a preprocessor word 
   [-l local]                Defines a localization qualifier 
   [-ldb localdb]            Defines the base name for localization databases 
   [-p file_ext:command]     Setup a pre-processor 
   [-pf]                     Force pre-processing regardless of cache state 
   [-w name]                 Defines warning level 
   [-wf filename]            Write all warnings to the given file instead of STDOUT 
   [-x name]                 Defines warning level by exclusion 
   [-batch]                  Turn on batch processing (do not "Press Enter" on error) 
   [-strict]                 Enable all warnings 
   [-test]                   Test syntax only, do not execute 
   [-coverage dir|file]      Indicate files or directories for which to gather coverage statistics 
   [-coverage-db file]       Specify the filename for the coverage database. 
   [-coverage-erase]         Erase an existing coverage database and start a new coverage analysis. 
   [-coverage-exclude pattern] 
                             Exclude from coverage 
   [-copyright]              Display all copyright notices 
   [-v], [--version]         Display the version number 
   [-h], [--help]            Display the command options 
   [-?]                      Display the command options 

As for associations, this is a problem in Windows really. When you install a new version of Microsoft Word and choose to update the associations, your .doc files will then be opened in the new version of Word and not the old. You could setup multiple associations and right click a .ex file and choose Open In > Eu 3 or Eu 4. Make which ever you use the most the default double click.

Jeremy

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

Search



Quick Links

User menu

Not signed in.

Misc Menu