wxEuphoria machine level exception

new topic     » topic index » view thread      » older message » newer message

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/

new topic     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu