wxEuphoria machine level exception
Hi
I have just tested the wxEuphoria installation on linux.
I too get the machine level exception on line 56
--extract from wxEuphoria.e
--#LINUX
wxEuphoria_Platform = LINUX,
wxWin_name = getenv("EUDIR") & "/bin/libwx_gtk-2.4.so.0.1.1",
wxNEED_BUILD = 2,
--#ENDLINUX
wxWin = open_dll( wxWin_name ),
--#LINUX
WX_DLL_BUILD = peek4u(define_c_var(wxWin, "WX_DLL_BUILD")) <<<<line 56
global constant
euret = define_c_var( wxWin, "_ZN8wxEuCall5euretE" ),
eucall = define_c_proc( wxWin, "_ZN8wxEuCall6eucallEv", {} ),
eufunc = define_c_var( wxWin, "_ZN8wxEuCall6eufuncE" ),
euparam_count = define_c_var( wxWin, "_ZN8wxEuCall7euparamE" ),
eulog = define_c_func( wxWin, "_ZN8wxEuCall5eulogEPKc", {C_POINTER}, C_POINTER),
euparam = euparam_count + 4
--#ENDLINUX
experimented with this
wxWin = open_dll( wxWin_name ),
if wxWin = 0 then
puts(1, "Can't find " & wxWin_name & "\n")
abort(0)
end if
a1 = define_c_var(wxWin, "WX_DLL_BUILD")
printf(1, "%d %d\n", {wxWin, a1)
WX_DLL_BUILD = peek4u(a1)
1st - couldn't open libwx_gtk-2.4.so.0.1.1 (aborted)- the lib is in the bin
directory,
and the paths are set correctly (echo $EUDIR)
2nd - moved that copy of libwx_gtk-2.4.so.0.1.1 to /usr/lib and ran ldconfig,
modified wxEuphoria to specify the lib with no path - same result.
3rd - downloaded wxgtk 2.4.2 rpm from www.wxwidgets.org, and installed that,
again keeping the no path specified. Different result. The lib is opened, but
there is no WX_DLL_BUILD in that library (there is in the original one,
both checked with an nm dump)
So far its a good lib for windows, but can't get it to run on Linux. Any other
ideas.
Couple of extra points. Your libraries (so far only wxEuphoria) are platform
specific - can you make them non-specific - ie the eu includes will run on
Linux or windows unmodified, just detecting to os internally, and loading
the appropriate libs.
Currently, wxEuphoria looks for libwx_gtk-2.4.so.0.1.1 in a very specific
place. If you package an app, and give it to someone else, including the
library, then the program won't work, as you don't have the same directory
structure. Perhaps it could be made to be less choosy in its location
(~/ or ./) ?
Chris
http://members.aol.com/chriscrylex/euphoria.htm
http://uboard.proboards32.com/
|
Not Categorized, Please Help
|
|