Euphoria Ticket #683: Cannot make tools under mingw

the 'make tools' target fails under MINGW. I have both WATCOM and MINGW installed and there may be some interaction here. The OS is Windows Vista.

The issue appears to be a silly backslash vs. slash problem:

gcc -DEWINDOWS -fomit-frame-pointer -c -w -fsigned-char -O2 -m32 -Ic:/Users/Shaw 
n/Documents/development/hg/4.0 -ffast-math -mwindows flags.c -o flags.o 
gcc -o c:\Users\Shawn\DOCUME~1\DEVELO~1\hg\4.0\build\40C7FC~1.3RC\eudist init-.o 
 eudist.o main-.o cmdline.o console.o get.o io.o machine.o memconst.o memory.o d 
ll.o types.o text.o convert.o search.o filesys.o datetime.o math.o sequence.o so 
rt.o pretty.o serialize.o graphcst.o map.o eumem.o primes.o stats.o info.o regex 
.o flags.o  c:\Users\Shawn\Documents\development\hg\4.0\build\4.0.3rc2\eu.a -m32 
 
gcc.exe: c:UsersShawnDocumentsdevelopmenthg4.0build4.0.3rc2eu.a: No such file or 
 directory 
make[2]: *** [c:\Users\Shawn\DOCUME~1\DEVELO~1\hg\4.0\build\40C7FC~1.3RC\eudist] 
 Error 1 
make[2]: Leaving directory `/c/Users/Shawn/Documents/development/hg/4.0/build/4. 
0.3rc2/eudist-build' 
make[1]: *** [/c/Users/Shawn/Documents/development/hg/4.0/build/4.0.3rc2/eudist] 
 Error 2 
make[1]: Leaving directory `/c/Users/Shawn/Documents/development/hg/4.0/source' 
make: *** [all] Error 2 

Details

Type: Bug Report Severity: Major Category: Build System
Assigned To: SDPringle Status: Fixed Reported Release: 4.0.3
Fixed in SVN #: View VCS: none Milestone: 4.0.4

1. Comment by SDPringle Jun 25, 2011

Whenever you use a false-UNIX environment under Windows, as with cygwin or ming, you have a new way of getting a file. This new false-UNIX way with forward slashes from some root, is required by gnu make for ming or cygwin but using these with file_exists() will just return 0 whether they exist or not.

2. Comment by mattlewis Jun 26, 2011

It builds correctly for me, but I run MinGW from the MinGW Shell (or MSYS, or whatever they call it). How are you running make (i.e., what shell are you using)?

3. Comment by SDPringle Jun 26, 2011

I also run from the MinGW shell. I am using tip binaries. Did you actually run 'make tools'? Which version of Windows are you using? I am doing this on Vista.

4. Comment by mattlewis Jun 27, 2011

I built the translator and library, then ran make tools. This was on XP.

5. Comment by SDPringle Jun 27, 2011

Do you configure with absolute paths? Do you use forward or back slashes? Do you use the 'build' option?

6. Comment by ne1uno Jun 28, 2011

if you are using msys, using the msys make rather than the minGW make sometimes helps.

export path=pathtomsys:pathtominGW:$path 
make tests also fails. eutest and some tests assume backslashes if it's windows.

you can make tests from a windows command prompt, but you have to modify build/eu.cfg first.

make coverage seems to be broken too. but I haven't tried to build the last few days.

7. Comment by SDPringle Jun 28, 2011

If the shell script configure creates eu.cfg, and we know that it does, it should create one appropriate for the OS it is running on instead of for the pseudo-file-system of the script. Bash scripting is flexible enough for this purpose. Although, I suppose that belongs in a new ticket.

8. Comment by mattlewis Jun 28, 2011

Is the problem really eu.cfg? Where is the path with backspaces coming from? Forward slashes should work just fine on windows.

9. Comment by SDPringle Jun 28, 2011

See: hg:euphoria/rev/e3b4f537eda2

changeset: 5000:e3b4f537eda2 branch: 4.0 parent: 4989:cbd3608aedf0 user: Shawn Pringle <shawn.pringle@gmail.com> date: Tue Jun 28 13:03:32 2011 -0300 files: source/buildsys.e source/pathopen.e source/traninit.e description:

  • fixes ticket 683 : When running on GCC, forward slashes are used in Makefiles even on Windows

Search



Quick Links

User menu

Not signed in.

Misc Menu