Developer forums (C::B DEVELOPMENT STRICTLY!) > Development
Win9x build/support of CB
killerbot:
Facts :
- official CB : unicode
- Win9X : no unicode
MS solution :
- MSLU allows Unicode programs to run on Win9x
- tipically : only for MSVC
Open Souce Solution : http://libunicows.sourceforge.net/
--> License trouble might be happening ? ok or not ok ?
--- Quote --- Usage
=======
1) Add the unicows import library BEFORE other win32 libraries on your command
line. For example, if your command line for Mingw32 was
c++ foo.o bar.o -o foo -lkernel32 -luser32 -lgdi32 -lcomdlg32
change it to
c++ foo.o bar.o -o foo -lunicows -lkernel32 -luser32 -lgdi32 -lcomdlg32
No other change is neccessary, you don't have to include any special headers in
your source files.
2) Download Unicows runtime from
http://www.microsoft.com/downloads/release.asp?releaseid=30039
or
http://download.microsoft.com/download/platformsdk/Redist/1.0/W9XMe/EN-US/unicows.exe
Extract unicows.dll from the package and distribute it with your application.
Do *not* install it to Windows system directory, always copy the DLL to your
application's directory! (Nobody wants any more of DLL hell...).
If your application uses Common Controls DLL (very likely) or Rich Edit control,
make sure the installer installs new enough versions that fully support Unicode
(Common Controls DLL version 5.80 and RichEdit 4.0).
--- End quote ---
Next make sure wx is ok for this libunicows :
--- Quote ---// Set wxUSE_UNICODE_MSLU to 1 if you're compiling wxWidgets in Unicode mode
// and want to run your programs under Windows 9x and not only NT/2000/XP.
// This setting enables use of unicows.dll from MSLU (MS Layer for Unicode, see
// http://www.microsoft.com/globaldev/handson/dev/mslu_announce.mspx). Note
// that you will have to modify the makefiles to include unicows.lib import
// library as the first library (see installation instructions in install.txt
// to learn how to do it when building the library or samples).
//
// If your compiler doesn't have unicows.lib, you can get a version of it at
// http://libunicows.sourceforge.net
--- End quote ---
I am not sure on how to interpret this : do I have to set this in projects using wx and/or on the command line where I issue the instructions to build the wx dll ??
Next :
- add 1 or 2 libs to the sdk target : libshfolder.a and libshell32.a
So we need to settle this once and for all, and make these things part of the official builds.
Or not ?
Lieven
thomas:
Personally, am not fond of yet another hack... what's wrong with building Windows98 binaries in ANSI?
Ceniza:
For sure you'll have to compile wxWidgets with that macro set to 1 and modify the Makefile too so it'll link against that library as the first one, before issuing make.
You'll need to test if you also need to link against it in the Code::Blocks project file.
Adding or not libshell32.a could be checked quickly. Just delete codeblocks.dll from devel, add only libshfolder.a to sdk, compile sdk only (so it'll just re-link) and try in 9x.
thomas: the idea is to provide just one build that works in both 9x and NT, and that is also UNICODE.
tiwag:
--- Quote from: thomas on January 04, 2006, 09:57:26 pm ---... what's wrong with building Windows98 binaries in ANSI?
--- End quote ---
nothing - it's common practice for a lot of applications nowadays
Michael:
--- Quote from: Ceniza on January 04, 2006, 09:59:11 pm ---thomas: the idea is to provide just one build that works in both 9x and NT, and that is also UNICODE.
--- End quote ---
IMHO, there will be debug issues as C::B uses GDB 6.3.
Michael
Navigation
[0] Message Index
[#] Next page
Go to full version