1. EUDIR, EUINC ??

The Euphoria manual, under:
2.1.1 Windows
2.1.2 Linux and FreeBSD

does not explain how to set up EUDIR and EUINC, at least not in a way I can understand. I could use examples.

Under 2.1.1 Windows, maybe it should be explained for wine.

I had these things working a long time ago, but I don't remember how.

new topic     » topic index » view message » categorize

2. Re: EUDIR, EUINC ??

Jerry_Story said...

The Euphoria manual, under:
2.1.1 Windows
2.1.2 Linux and FreeBSD

does not explain how to set up EUDIR and EUINC, at least not in a way I can understand. I could use examples.

Under 2.1.1 Windows, maybe it should be explained for wine.

I had these things working a long time ago, but I don't remember how.

For 4.0, you really should be using eu.cfg files. Take a look at 2.3 Set Up the Euphoria Configuration File.

For something like Wine, the easiest thing to do is to put the eu.cfg in the same directory as your binaries (eui.exe, euiw.exe, euc.exe, etc).

The most important thing is generally to point to the standard library with an -i switch. Also, you'll probably want to add the path to the translator library. So, a simple example eu.cfg for Wine might look like:

[all] 
-i z:\home\jerry\euphoria\include 
 
[translate] 
-gcc 
-lib z:\home\jerry\euphoria\bin\eu.a 

Matt

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

3. Re: EUDIR, EUINC ??

We could setup the installer to put '-gcc' or '-wat' in the eu.cfg, according to what is on the user's system.

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

4. Re: EUDIR, EUINC ??

SDPringle said...

We could setup the installer to put '-gcc' or '-wat' in the eu.cfg, according to what is on the user's system.

Aside from choosing compiler type for the translator, what difference would that make?

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

5. Re: EUDIR, EUINC ??

jimcbrown said...
SDPringle said...

We could setup the installer to put '-gcc' or '-wat' in the eu.cfg, according to what is on the user's system.

Aside from choosing compiler type for the translator, what difference would that make?

That would be the difference. Namely, more complete configuration upon installation. This is going to get a little more complex, I think, with 4.1. The 64-bit version of MinGW seems to come with the target and host information prepended to the names of the executables. Cross compiling versions (i.e., MinGW on Linux) do this for both 32 and 64-bit versions.

Matt

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

6. Re: EUDIR, EUINC ??

mattlewis said...
jimcbrown said...
SDPringle said...

We could setup the installer to put '-gcc' or '-wat' in the eu.cfg, according to what is on the user's system.

Aside from choosing compiler type for the translator, what difference would that make?

That would be the difference.

Ok.

mattlewis said...

This is going to get a little more complex, I think, with 4.1. The 64-bit version of MinGW seems to come with the target and host information prepended to the names of the executables. Cross compiling versions (i.e., MinGW on Linux) do this for both 32 and 64-bit versions.

I don't see how this is really any different from having i386-pc-linux-gnu-gcc, i386-pc-linux-gnu-ld, i386-pc-linux-gnu-as, i386-pc-linux-gnu-nm, etc.

The lack of a file named gcc or cc makes finding the right executable names harder (the configure script might need to guess-and-check to see what exists) but it's hardly insurmontable. Hardcoding the names of executables into the makefile is not really good practice at any rate. Someone might want to try something weird like manually invoking distcc or using nasm instead of gas.

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

7. Re: EUDIR, EUINC ??

jimcbrown said...
mattlewis said...

This is going to get a little more complex, I think, with 4.1. The 64-bit version of MinGW seems to come with the target and host information prepended to the names of the executables. Cross compiling versions (i.e., MinGW on Linux) do this for both 32 and 64-bit versions.

I don't see how this is really any different from having i386-pc-linux-gnu-gcc, i386-pc-linux-gnu-ld, i386-pc-linux-gnu-as, i386-pc-linux-gnu-nm, etc.

The lack of a file named gcc or cc makes finding the right executable names harder (the configure script might need to guess-and-check to see what exists) but it's hardly insurmontable. Hardcoding the names of executables into the makefile is not really good practice at any rate. Someone might want to try something weird like manually invoking distcc or using nasm instead of gas.

Yes, that's exactly what I'm talking about. It would be nice if, as a user of euphoria, as much as possible just worked, right out of the box, after using the official installer.

On my version of 64-bit Windows 7, I have a 32-bit MinGW installed (which is set up with the 'normal' gcc, etc) and a 64-bit MinGW (all of which are prefixed with x86_64-w64-mingw32-). Obviously, I also have to deal with keeping different versions of euphoria installed. In this case, I'd like each version to use the correct compiler. I'm not sure there's an easy way to have the installer set this up automagically.

Matt

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

8. Re: EUDIR, EUINC ??

mattlewis said...
jimcbrown said...
mattlewis said...

This is going to get a little more complex, I think, with 4.1. The 64-bit version of MinGW seems to come with the target and host information prepended to the names of the executables. Cross compiling versions (i.e., MinGW on Linux) do this for both 32 and 64-bit versions.

I don't see how this is really any different from having i386-pc-linux-gnu-gcc, i386-pc-linux-gnu-ld, i386-pc-linux-gnu-as, i386-pc-linux-gnu-nm, etc.

The lack of a file named gcc or cc makes finding the right executable names harder (the configure script might need to guess-and-check to see what exists) but it's hardly insurmontable. Hardcoding the names of executables into the makefile is not really good practice at any rate. Someone might want to try something weird like manually invoking distcc or using nasm instead of gas.

Yes, that's exactly what I'm talking about. It would be nice if, as a user of euphoria, as much as possible just worked, right out of the box, after using the official installer.

So, in other words, you're saying

jimcbrown said...

the configure script might need to guess-and-check to see what exists

mattlewis said...

On my version of 64-bit Windows 7, I have a 32-bit MinGW installed (which is set up with the 'normal' gcc, etc) and a 64-bit MinGW (all of which are prefixed with x86_64-w64-mingw32-). Obviously, I also have to deal with keeping different versions of euphoria installed. In this case, I'd like each version to use the correct compiler. I'm not sure there's an easy way to have the installer set this up automagically.

Matt

Probably not. Even with an autoconf configure script, it'd be necessary to pass in --ld ... --cc ... --as ... (and so on)

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

9. Re: EUDIR, EUINC ??

jimcbrown said...

Even with an autoconf configure script, it'd be necessary to pass in --ld ... --cc ... --as ... (and so on)

Not really. Assuming GNU build tools, all you need is that prefix. Currently, we have --cc-prefix in 4.1 (code was committed this weekend), which takes care of that, and is basically equivalent to autoconf's host/prefix parameter.

Matt

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

Search



Quick Links

User menu

Not signed in.

Misc Menu