1. path trouble on 40a3
- Posted by Kat Mar 17, 2009
- 1183 views
I downloaded
http://voxel.dl.sourceforge.net/sourceforge/rapideuphoria/euphoria_40a3.exe
today, and found i still must open every file which includes another, change all the path/filename to "drive:
path
filename".
I thought this bug was fixed. Why is no one else having this problem? It's a linux vs windows thing, this / vs \ separator, so why is no one else on windows reporting any problems?
useless
2. Re: path trouble on 40a3
- Posted by gbonvehi Mar 17, 2009
- 1134 views
As far as I know, windows nt based systems (at least I really can confirm that on XP) accepts / as path separator too. Are you using Windows 9X?
Cheers, Guillermo
3. Re: path trouble on 40a3
- Posted by Kat Mar 17, 2009
- 1132 views
As far as I know, windows nt based systems (at least I really can confirm that on XP) accepts / as path separator too. Are you using Windows 9X?
Cheers, Guillermo
useless
4. Re: path trouble on 40a3
- Posted by mattlewis (admin) Mar 17, 2009
- 1170 views
I downloaded
http://voxel.dl.sourceforge.net/sourceforge/rapideuphoria/euphoria_40a3.exe
today, and found i still must open every file which includes another, change all the path/filename to "drive:
path
filename".
I thought this bug was fixed. Why is no one else having this problem? It's a linux vs windows thing, this / vs \ separator, so why is no one else on windows reporting any problems?
No, I don't think anyone else is having this issue. I have no problem on windows or linux using the forward slash for both operating systems. Are you using an unusual filesystem (i.e., not NTFS)?
Could you tell us where you installed it, and also your environment settings (EUDIR, EUINC)?
Matt
5. Re: path trouble on 40a3
- Posted by Kat Mar 17, 2009
- 1171 views
I downloaded
http://voxel.dl.sourceforge.net/sourceforge/rapideuphoria/euphoria_40a3.exe
today, and found i still must open every file which includes another, change all the path/filename to "drive:
path
filename".
I thought this bug was fixed. Why is no one else having this problem? It's a linux vs windows thing, this / vs \ separator, so why is no one else on windows reporting any problems?
No, I don't think anyone else is having this issue. I have no problem on windows or linux using the forward slash for both operating systems. Are you using an unusual filesystem (i.e., not NTFS)?
Could you tell us where you installed it, and also your environment settings (EUDIR, EUINC)?
Matt
C:\euphoria40a3
No EUDIR or EUINC settings.
The C drive is FAT32.
useless
6. Re: path trouble on 40a3
- Posted by jimcbrown (admin) Mar 17, 2009
- 1152 views
I downloaded
http://voxel.dl.sourceforge.net/sourceforge/rapideuphoria/euphoria_40a3.exe
today, and found i still must open every file which includes another, change all the path/filename to "drive:
path
filename".
I thought this bug was fixed. Why is no one else having this problem? It's a linux vs windows thing, this / vs \ separator, so why is no one else on windows reporting any problems?
C:\euphoria40a3
No EUDIR or EUINC settings.
The C drive is FAT32.
useless
FAT32 C should be ok. Any FAT C should be ok.
Just so there is no ambiguity - you are saying that EUDIR and EUINC are unset?
echo %EUDIR% just prints out %EUDIR% and the same result for EUINC?
If that is correct, the problem is obvious. EUDIR needs to be set to c:\euphoria40a3 for it to be able to find c:\euphoria40a3\include\std.
Actually, try the short name instead of the longname for the euphoria40a3 part.
Also, just so we can rule this out (it happened to CoJaBo), what is your PATH set to?
7. Re: path trouble on 40a3
- Posted by mattlewis (admin) Mar 17, 2009
- 1124 views
Could you tell us where you installed it, and also your environment settings (EUDIR, EUINC)?
Matt
C:\euphoria40a3
No EUDIR or EUINC settings.
The C drive is FAT32.
Ok, you either need to set up EUDIR/EUINC, or put a config file in place. Simplest thing to do might be just to put it in your bin directory.
Matt
8. Re: path trouble on 40a3
- Posted by jeremy (admin) Mar 17, 2009
- 1149 views
On the 4.0a3 installer, you can choose to have it update the environment or not update the environment. Many will choose not to as they are still using 3.1.1 or a version of 4.0 that they know is stable for them. So, those that decide not to update the environment, the installer then creates a batch file in the install directory named setenv.bat
This batch file is built by the installer and will set the EUDIR and add %EUDIR%\bin to the path. Thus, when you are testing with 4.0a3, you can do something like:
C:\Develop\My40a3Tests> \euphoria40a3\setenv.bat C:\Develop\My40a3Tests> exwc hello_regex.ex
By calling setenv.bat, everything is done for you, providing you do not move your installation directory after the fact. If you do that, you'll have to update the setenv.bat file to reflect that change.
Jeremy
9. Re: path trouble on 40a3
- Posted by Kat Mar 17, 2009
- 1102 views
On the 4.0a3 installer, you can choose to have it update the environment or not update the environment. Many will choose not to as they are still using 3.1.1 or a version of 4.0 that they know is stable for them. So, those that decide not to update the environment, the installer then creates a batch file in the install directory named setenv.bat
This batch file is built by the installer and will set the EUDIR and add %EUDIR%\bin to the path. Thus, when you are testing with 4.0a3, you can do something like:
C:\Develop\My40a3Tests> \euphoria40a3\setenv.bat C:\Develop\My40a3Tests> exwc hello_regex.ex
By calling setenv.bat, everything is done for you, providing you do not move your installation directory after the fact. If you do that, you'll have to update the setenv.bat file to reflect that change.
Jeremy
Instead, i edited the setenv.bat and renamed it to this_eu.bat (but the name doesn't matter).
The .bat file:
@echo off REM Set the environment for *THIS* installation of Euphoria REM these vars are for THIS environment only, REM not for any other Euphoria app on another drive SETLOCAL REM 1st, set the EUDIR REM this file must be in the local Euphoria root directory to work, REM whatever the drive SET EUDIR=%CD% REM 2nd, set the EUINC to your favorite paths SET EUINC=%CD%\;%CD%\bin\;%CD%\include\;%CD%\include\std\ REM second, add the path of the application folder to the EUINC set APP_DIR=%~dp1 SET EUINC=%APP_DIR%;%EUINC% REM now run the interpreter with these EUINCs in the environment START /B %CD%\bin\exw.exe %* EXIT
It seems to work, and is independant of where the Euphoria copy is on what drive. I changed the Run tool in Textpad to run the .bat and start minimized, since the bat runs first and makes for screen flicker.
Reasons i do not want to hardcode the envvars for Eu:
1) A bug in winxp that wasn't on win95: eithr winxp or textpad will trash a file textpad is displaying, if that source code is running, and if xp says it must close textpad for any reason, or if xp crashes, including power outage. The source code is totally trashed and unrecoverable.
2) If editing an app that textpad is displaying, the *running* source code is corrupted even if it's already running, if the new code is saved, leading to mandating main() be used, since it seems the interpreter loads/parses functions/procedures before top level code. This may be different in Eu v4.
3) If i am developing and bebugging code, i do not want that new code in my working, running, bugless eudir
4) If i change drives, all absolute spec'd paths are now bad ( i use currentdir() a *lot* )
5) One week, i lost *3* harddrives and all their contents, i need backups, backups that work, regardless of hardcoded eudirs.
useless
10. Re: path trouble on 40a3
- Posted by ChrisB (moderator) Mar 17, 2009
- 1160 views
Hi
Just so everyone's clear, setenv.bat only updates the environment variables for the current session - ie open a DOS box, run setenv.bat, then the eu program in that same box. If you open another dos box, or click on program, the environment variables will not be seen to be changed
This is why I use setenv.exe http://barnyard.syr.edu/~vefatica/#SETENV which updates the environment variables system wide in the eu3.1 total setup, and the registry entries too, to avoid the need for a reboot.
Ok, I'll bite. Why are you signing yourself as useles Kat, when you're not?
Chris
11. Re: path trouble on 40a3
- Posted by Kat Mar 17, 2009
- 1168 views
Hi
Just so everyone's clear, setenv.bat only updates the environment variables for the current session - ie open a DOS box, run setenv.bat, then the eu program in that same box. If you open another dos box, or click on program, the environment variables will not be seen to be changed
This is why I use setenv.exe http://barnyard.syr.edu/~vefatica/#SETENV which updates the environment variables system wide in the eu3.1 total setup, and the registry entries too, to avoid the need for a reboot.
Ok, I'll bite. Why are you signing yourself as useles Kat, when you're not?
Chris
I wrote that .bat to intentionally limit the environment vars to that one session, for the reasons stated. In this way, my odd way of using Euphoria for so many different things, on different drives, with different paths to Eu root dir, won't allow one exw.exe to use the env vars or paths or code for any other application unless i explicitly code that path in.
I feel i am useless, for various reasons, both online and in real life. Just explaining and sticking to my reasons for doing the EUINC and EUDIR this way feels a lot like climbing an escalator the wrong way as a crowd comes down it. As reference, see http://openeuphoria.org/EUforum/index.cgi?module=forum&action=flat&id=104290#unread
I know my reasons are valid, despite the crowd, but then the crowd will refuse to acknowledge or use them. No use, hence:
useless
12. Re: path trouble on 40a3
- Posted by jeremy (admin) Mar 17, 2009
- 1099 views
I do want to point out that adding %EUDIR%\include and %EUDIR%\include\std is the wrong practice. It will lead to all sorts of unexpected results. There are files w/the same name in %EUDIR%\incude and %EUDIR%\include\std. The entire 3.1.1 includes are included in %EUDIR%\include so that 3.1 programs can change almost unchanged. The new standard library is in %EUDIR%\include\std and that should not be in your EUINC environment variable. Instead, you should do this in your code:
include std/map.e include std/get.e include std/io.e --- etc
Jeremy
13. Re: path trouble on 40a3
- Posted by Kat Mar 17, 2009
- 1078 views
I do want to point out that adding %EUDIR%\include and %EUDIR%\include\std is the wrong practice. It will lead to all sorts of unexpected results. There are files w/the same name in %EUDIR%\incude and %EUDIR%\include\std. The entire 3.1.1 includes are included in %EUDIR%\include so that 3.1 programs can change almost unchanged. The new standard library is in %EUDIR%\include\std and that should not be in your EUINC environment variable. Instead, you should do this in your code:
include std/map.e include std/get.e include std/io.e --- etc
Jeremy
Well, i don't know about that, you can still use
include std\get.e
without removing %CD%\include\std\ from the EUINC var, as %CD%\include\ is still there. "std\get.e" won't be found in "%CD%\include\std\" but will be found in "%CD%\include\". But sure, edit the .bat to your heart's contentment. It's there to set up separate env vars for separate instances of the install. If you don't like it, don't use it. If it's the wrong color, then paint, dye, anodize, etc. it.
useless
14. Re: path trouble on 40a3
- Posted by euphoric (admin) Mar 17, 2009
- 1113 views
Ok, I'll bite. Why are you signing yourself as useles Kat, when you're not?
DOH! You took the bait. Never take the bait.
15. Re: path trouble on 40a3
- Posted by jeremy (admin) Mar 17, 2009
- 1111 views
Well, i don't know about that, you can still use
include std\get.e
The entire std lib and every one of my projects used / with out issue. I know that / is translated to
in the windows api even, I am not so sure about \ being translated to / on unix variants.
without removing %CD%\include\std\ from the EUINC var, as %CD%\include\ is still there. "std\get.e" won't be found in "%CD%\include\std\" but will be found in "%CD%\include\". But sure, edit the .bat to your heart's contentment. It's there to set up separate env vars for separate instances of the install. If you don't like it, don't use it. If it's the wrong color, then paint, dye, anodize, etc. it.
Yes, but it leaves it vague as to where it will get
include get.e
from. Some people may be looking at the 4.0 docs and see get.e, so they include get.e thinking they have include/std in their path, but it'll pull the 3.1.1 get.e file. It's best to just add %EUDIR%\include to your path. There is no reason what-so-ever to include %EUDIR%%\include\std in your EUINC path.
Jeremy