1. RE: new to euphoria
- Posted by irv at take.maxleft.com
Aug 14, 2002
Ron Tarrant wrote:
> Ron W wrote:
>
> > Is there a site dedicated to Linux programming with euphoria?
>
> The closest thing I'm aware of is David Cuny's Llama (I believe it's
> unfinished, but it should get you started). You can find it at:
>
> www.lanset.com/dcuny/home.htm
>
You might also want to look at my GTK+ wrapper - it's complete
enough that I have written e-mail clients and an accounts receivable
program with it. It's *very* easy to use, compared to C, but there
are a couple of tricks when setting it up - e-mail me, I'll be happy
to help. You can download it from http://take.maxleft.com
Regards,
Irv Mullins
2. RE: new to euphoria
irv at take.maxleft.com wrote:
>
> Ron Tarrant wrote:
> > Ron W wrote:
> >
> > > Is there a site dedicated to Linux programming with euphoria?
> >
> > The closest thing I'm aware of is David Cuny's Llama (I believe it's
> > unfinished, but it should get you started). You can find it at:
> >
> > www.lanset.com/dcuny/home.htm
> >
> You might also want to look at my GTK+ wrapper - it's complete
> enough that I have written e-mail clients and an accounts receivable
> program with it. It's *very* easy to use, compared to C, but there
> are a couple of tricks when setting it up - e-mail me, I'll be happy
> to help. You can download it from http://take.maxleft.com
>
> Regards,
> Irv Mullins
>
>
I tried last night to use your gtk lib. As you've noted there seems to
be a trick I'm unaware of.
this is the ex.err file
<pre>
/usr/euphoria/include/gtk/main.e:52
type_check failure, eugtk is 0
Global & Local Variables
/usr/euphoria/include/get.e:
input_file =
input_string =
string_next =
ch =
/usr/euphoria/include/gtk/wrapper.e:
homogeneous_ = 0
spacing_ = 0
context = 0
group = 0
/usr/euphoria/include/machine.e:
check_calls = 1
/usr/euphoria/include/gtk/main.e:
gdk = 134819288
gtk = 134832088
eugtk = 0
Traced lines leading up to the failure:
/usr/euphoria/include/gtk/wrapper.e:19 homogeneous_ = 0
/usr/euphoria/include/gtk/wrapper.e:20 spacing_ = 0
/usr/euphoria/include/gtk/wrapper.e:23 context = 0 -- declared
widget
/usr/euphoria/include/gtk/wrapper.e:26 group = 0
/usr/euphoria/include/machine.e:292 check_calls = 1
/usr/euphoria/include/gtk/main.e:50 gdk = open_dll("libgdk.so")
/usr/euphoria/include/dll.e:34 return machine_func(M_OPEN_DLL,
file_name)
/usr/euphoria/include/gtk/main.e:16 if x = 0 then
/usr/euphoria/include/gtk/main.e:19 return x != 0
/usr/euphoria/include/gtk/main.e:51 gtk = open_dll("libgtk.so")
/usr/euphoria/include/dll.e:34 return machine_func(M_OPEN_DLL,
file_name)
/usr/euphoria/include/gtk/main.e:16 if x = 0 then
/usr/euphoria/include/gtk/main.e:19 return x != 0
/usr/euphoria/include/gtk/main.e:52 eugtk = open_dll(libpath &
"eugtk.so")
/usr/euphoria/include/dll.e:34 return machine_func(M_OPEN_DLL,
file_name)
/usr/euphoria/include/gtk/main.e:16 if x = 0 then
/usr/euphoria/include/gtk/main.e:17 puts(1,"Library not accessible!")
/usr/euphoria/include/gtk/main.e:19 return x != 0
</pre>
My $PATH is correct and I set my $EUDIR var also.
Euphoria is located in /usr/euphoria...
/gtk and /gdk are located in /usr/euphoria/include
and the .so included with the lib is also in /usr/euphoria/include
I'm using RedHat 7.2 and would be will to provide nearly any other
information need to solve this problem and get eugtk to work. Any help
you offer would be helpfull.
3. RE: new to euphoria
- Posted by irv at take.maxleft.com
Aug 14, 2002
Ron W wrote:
> >
> I tried last night to use your gtk lib. As you've noted there
> seems to be a trick I'm unaware of.
>
> this is the ex.err file
> /usr/euphoria/include/gtk/main.e:
> gdk = 134819288
> gtk = 134832088
> eugtk = 0
This is actually good news. Most people have trouble with the
links to libgdk and libgtk. Those are working for you.
Eugtk.so is a small shared library I compiled. It should have
been installed in your $HOME/euphoria/include directory.
First, check to see if it is there. (Should be about 17.7 kbytes)
Secondly, you might want to adjust line 53 in
../euphoria/include/gtk/main.e to be sure it points to eugtk.so.
One addition you may want to make to main.e while you're there:
line 22-24:
global library
gdk, gtk, gtkxmhtml, -- gtk libraries (NOTE ADDED gtkxmhtml)
eugtk -- my own support library
line 50-54:
gdk = open_dll("libgdk.so")
gtkxmhtml = open_dll("libgtkxmhtml.so") -- << ADDED
gtk = open_dll("libgtk.so")
eugtk = open_dll(libpath & "eugtk.so")
This seems to be necessary on some people's computers, not on
others. I don't know why, but is won't hurt anything.
Regards,
Irv
4. RE: new to euphoria
- Posted by irv at take.maxleft.com
Aug 14, 2002
irv at take.maxleft.com wrote:
>
> Ron W wrote:
>
> > >
> > I tried last night to use your gtk lib. As you've noted there
> > seems to be a trick I'm unaware of.
> >
> > this is the ex.err file
>
> > /usr/euphoria/include/gtk/main.e:
> > gdk = 134819288
> > gtk = 134832088
> > eugtk = 0
>
A follow-up:
I note that you have euphoria installed in /usr, rather than
in a user's home directory. (/home/ron for example)
That's ok, but you'll have to change the call in main.e from:
eugtk = open_dll(libpath & "eugtk.so")
to something that can find the file, for example:
eugtk = open_dll("/usr/euphoria/include/eught.so")
I prefer to keep all the Euphoria stuff in my own home directory.
It doesn't take up much room, and I can change things without
suddenly crashing other user's programs.
Regards,
Irv
5. RE: new to euphoria
Thanks Irv. As a direct result of all your hard work and your
willingness to help me configure your work for my machine, I'm now happy
to report that I'm able to use eugtk. However I did make one small
change to your advice.
instead of changing ....
eugtk = open_dll(libpath & "eugtk.so")
I changed ...
constant libpath = getenv("HOME") & "/euphoria/include/"
to ...
constant libpath = getenv("EUDIR") & "/include/"
in the set up documentation of euphoria it mentioned to set the $EUDIR.
What else would it be for if not for situations like this?
Any way I got a really cool program to start on. Thanks again.
Ron_W