wxEuphoria Wxeu
Brought to you by:
mattlewis
To build wxEuphoria on Win32:
* Download the latest wxWidgets 2.8 source from www.wxWidgets.org.
* Start up msys (the MinGW Shell) and navigate to where wxWidgets is located,
then type (see below for cross compilation instructions):
$ cd build/msw
$ ../../configure --disable-threads --enable-shared --enable-unicode --enable-graphics_ctx --enable-mediactrl VENDOR=eu
$ make
Note 1: you can add --without-subdirs to the configure line, which speeds up
the build time by skipping all the examples.
Note 2: after running configure, if you notice any lines say "yes" instead of
"builtin", re-run configure and add --with-lib=builtin (where "lib" is the
library name) to force wxWidgets to use its own version of that library.
Note 3: you can add -jn to your make command, where n is the number of simultaneous
build threads you want to use.
Note 4: if you get "Memory exhausted" errors, run "make clean" and then add
CXXFLAGS="-fno-keep-inline-dllexport" your make command.
You can speed up the build by adding -j to the make command, e.g. -j4 will build four files at once.
If the build fails with "Memory exhausted", run "make clean", then add CXXFLAGS="-fno-keep-inline-dllexport"
to the configure command and run make again.
* To cross compile (this is a lot faster), you'll need to add these when you run configure:
--host=i586-mingw32msvc --prefix=/usr/i586-mingw32msvc
You may need to adjust those based on the details of your MinGW cross
compiler installed. For more information, see:
http://wiki.wxwidgets.org/Cross-Compiling_Under_Linux
If your MinGW installation does not support GDI+, you can either leave
out the --enable-graphics_ctx, or supply the headers and libraries from
a version of MinGW that does. Current versions of MinGW installed on
windows have these. You'll need:
MinGW/include/gdiplus.h
MinGW/include/gdiplus/
MinGW/lib/libgdiplus.a
You will also need to manually update the wxWidgets Makefile after configuring.
Search for "-gdi32" and immediately after that, add "-lgdiplus".
MinGW64 does not contain a library for wctl3d32.dll, so you'll need to remove
the reference to it from the makefile: -lwctl3d32
There is some non-portable code in the wxMSW source that incorrectly casts 64-bit
types into 32-bit types. If you get an error, add the following to your invocation
of make:
CXXFLAGS=-fpermissive
* Once that finishes, go to your wxEuphoria directory (see below for cross compiling):
$ ./configure path/to/wxWidgets
$ make
* To cross compile:
$ ./configure --prefix path/to/wxWidgets --host i586-mingw32msvc
$ make
You may need to adjust the host based on your installed version of MinGW.
* This will create libwxeu.dll in the build directory (default build; change using
configure flag: --build-dir dir). Copy this dll, as well as all of the dlls
from the wxWidgets/lib directory to the same directory as your euphoria
interpreter. There are also two MinGW runtime dlls that need to be copied
there, from the MinGW/bin directory:
+ libgcc_s_dw2-1.dll
+ libstdc++-6.dll
To build wxEuphoria on Linux:
* Download the latest wxWidgets 2.8 source from www.wxWidgets.org, or
install wxWidgets 2.8.x using your package manager (in which case,
you can skip the next two steps of building the wxWidgets binaries)
* Dependencies: You must have the following packages installed in order
to build wxEuphoria from source:
* libwxgtk2.8-dev
* gtk+-2.0-dev
* libpango1.0-dev
* From the base directory where you decompressed wxWidgets, type:
$ ./configure
$ make
$ make install
* The binaries will be moved to a system directory. You may need to
run ldconfig (or /sbin/ldconfig) on the directory where the binaries
were installed.
* From the wxEuphoria source directory, type:
$ ./configure
$ make
$ make install
* The shared library will be moved to a system directory. You may need to
run ldconfig (or /sbin/ldconfig) on the directory where the binaries
were installed (should be /usr/local/lib).
To build wxEuphoria on FreeBSD
* Download the latest wxWidgets 2.8 source from www.wxWidgets.org
* From the base directory where you decompressed wxWidgets, type:
$ ./configure --disable-threads --enable-unicode
$ make
$ su
# make install
# ldconfig
* The binaries will be moved to a system directory.
* Dependencies: You must have the following packages installed in order
to build wxEuphoria from source:
* libwxgtk2.8-dev
* gtk+-2.0-dev
* libpango1.0-dev
* From the wxEuphoria source directory, type:
$ ./configure
$ gmake
$ su
# gmake install
# ldconfig
* The shared library will be moved to a /usr/local/lib.