1. LexerEuphoria.dll
- Posted by petelomax Feb 25, 2016
- 1707 views
Has anyone got prebuilt windows versions (32 and 64 bit) of this?
Trying to follow the instructions on https://bitbucket.org/ghaberek/editor/wiki/Running_from_Source gave me predictable results:
C:\MinGW\iup-3.17_Sources\iup\srcscintilla>mingw32-make ../tecmakewin.mak:1639: iup_scintilla.wdep: No such file or directory The system cannot find the path specified. ../tecmakewin.mak:1617: recipe for target 'iup_scintilla.wdep' failed mingw32-make[1]: *** [iup_scintilla.wdep] Error 255 Makefile:11: recipe for target 'iup_scintilla' failed mingw32-make: *** [iup_scintilla] Error 2 C:\MinGW\iup-3.17_Sources\iup\srcscintilla>mingw32-make install mingw32-make: *** No rule to make target 'install'. Stop.
Pete
2. Re: LexerEuphoria.dll
- Posted by ghaberek (admin) Feb 25, 2016
- 1714 views
Has anyone got prebuilt windows versions (32 and 64 bit) of this?
Trying to follow the instructions on https://bitbucket.org/ghaberek/editor/wiki/Running_from_Source gave me predictable results:
C:\MinGW\iup-3.17_Sources\iup\srcscintilla>mingw32-make ../tecmakewin.mak:1639: iup_scintilla.wdep: No such file or directory The system cannot find the path specified. ../tecmakewin.mak:1617: recipe for target 'iup_scintilla.wdep' failed mingw32-make[1]: *** [iup_scintilla.wdep] Error 255 Makefile:11: recipe for target 'iup_scintilla' failed mingw32-make: *** [iup_scintilla] Error 2 C:\MinGW\iup-3.17_Sources\iup\srcscintilla>mingw32-make install mingw32-make: *** No rule to make target 'install'. Stop.
Those directions are referencing the srcscintilla directory here: iup4eu/iup/srcscintilla. It's a small subset of their source code and mixed with my code required to build the LexerEuphoria library. It looks like you're trying to run mingw32-make in the original IUP source directory. If you've already built and installed the IUP libraries, you should be all set. Sorry if the directions are not clear, we can certainly make adjustments as needed.
Has anyone got prebuilt windows versions (32 and 64 bit) of this?
Edit: I can provide you a copy of my 32-bit Windows DLL I've been using if you need but I think you should be able to build the library correctly now. I will make sure the binary distribution of iup4eu includes a pre-built LexerEuphoria library.
-Greg
3. Re: LexerEuphoria.dll
- Posted by petelomax Feb 25, 2016
- 1666 views
Those directions are referencing the srcscintilla directory here: iup4eu/iup/srcscintilla. It's a small subset of their source code and mixed with my code required to build the LexerEuphoria library. It looks like you're trying to run mingw32-make in the original IUP source directory. If you've already built and installed the IUP libraries, you should be all set. Sorry if the directions are not clear, we can certainly make adjustments as needed.
Thanks, that was indeed the problem and it built a 32-bit dll no problem, works fine. The "run from source" page should probably say you have to clone iup4eu as well as editor.
Now, next question: what do I need to do to build a 64-bit dll?
Pete
4. Re: LexerEuphoria.dll
- Posted by ghaberek (admin) Feb 25, 2016
- 1654 views
Thanks, that was indeed the problem and it built a 32-bit dll no problem, works fine. The "run from source" page should probably say you have to clone iup4eu as well as editor.
That documentation was written before editor and iup4eu were separate projects. I'll get it updated shortly. Done.
Now, next question: what do I need to do to build a 64-bit dll?
I haven't tried it on Windows yet, but you should just need to use TDM-GCC-64 instead of TDM-GCC-32.
You are using TDM and not vanilla MinGW, correct? All the cool kids use TDM nowadays.
-Greg
5. Re: LexerEuphoria.dll
- Posted by petelomax Feb 26, 2016
- 1579 views
I haven't tried it on Windows yet, but you should just need to use TDM-GCC-64 instead of TDM-GCC-32.
OK, I've managed that now, and got a working 64 bit dll.
You are using TDM and not vanilla MinGW, correct? All the cool kids use TDM nowadays.
Not that it bothers me but I've now lost the ability to build 32-bit dlls... Guess I can uninstall TDM the next time I need to.
The vanilla mingw 32 bit dll weighed in at 122K, whereas the 64-bit TDM one is 2.5M - I guess I'll live but a 20-fold increase seems a bit excessive.
Pete
6. Re: LexerEuphoria.dll
- Posted by ghaberek (admin) Feb 26, 2016
- 1665 views
Not that it bothers me but I've now lost the ability to build 32-bit dlls... Guess I can uninstall TDM the next time I need to.
Check out the TDM-GCC: Quirks page. You can build 32-bit DLLs with TDM-GCC-64 by simply using the "-m32" flag.
The vanilla mingw 32 bit dll weighed in at 122K, whereas the 64-bit TDM one is 2.5M - I guess I'll live but a 20-fold increase seems a bit excessive.
That's a known issue with GCC and 64-bit builds. Here's a thread about it: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43601
Here are a few things you can try to get the size down:
- Add the -Os "Optimize for size" option to CXXFLAGS option in Makefile
- Use strip to remove unnecessary symbols
- Use upx to compress the executable data
-Greg