The Main document for Picogui running on Windows, you will find in http://www.picogui.org/Wiki/BuildingWithMinGW . However, you may also meet some troubles when you want to compile the Picogui. And there is a mainly difference between that document and this document is that issues how to build Picogui with MinGW. And here we will discuss Build Picogui without MinGW, only with Cygwin.
There are several steps need to do.
1. install Cygwin, and make sure you had installed the gcc tools, automake, autoconfig, etc. Attention, you need install "patch packet", if you want to use my patch for picogui. And other librarys should be installed too, such as jpeg, png.
2. You MUST need install the SDL library by hand, since the cygwin's packet not include it. You will download it for www.libsdl.org .
3. I use the picogui source from Subversion Repository at http://navi.picogui.org/svn/picogui/ , you can read the topic "Picogui Repository" in http://www.picogui.org/links/repository . Though I not use Picogui-0.46 packet, but the patch is OK for It, when I test this.
4. when you have checked out the source code, then
4.1 cd picogui/server
4.2 patch -p1 < cygwin_picogui.patch
Though the name of this patch seem this is a cygwin patch, but it did do in Linux,
Changes are :
lxdialog: the old lxdialog has some bugs run in cygwin, I stolen new lxdialog codes for Linux kernel 2.4.x, that will be OK both in cygwin & Linux. So you can use "make menuconfig" in Cygwin.
four Makefile.am files: Since those files will be error with automake version > 1.9 both in Linux & cygwin.
three files sdlfb.c sdlinput.c sdlgl.c : just only change one place "#include <SDL/SDL.h>" to "#include "SDL.h", Before change it, I read the SDL document. He says " The portable way of including SDL is #include " SDL.h" ", so I think that is a good advice. Otherwise there will be some errors when in Cygwin.
mingw_commandline.c: comment the line "#include getopt.c", since the getopt.c is not here and no need.
configure.in: change "PKG_CHECK_MODULES(DIRECTFB, directfb >= 0.9.19)" to "AC_CHECK_LIB(DIRECTFB, directfb)", this point I am not sure. maybe you can fixed it.
5.Before you compile it , the MOST IMPORTANT thing is to modify the sdl-confg files. That file will be in /usr/local/bin, if you according the advice of the SDL official document. If not, find it . The attached sdl-config file is mine. When I first build the picogui in Cygwin with MinGW, using the option -mno-cygwin. there are a lot of strange errors. So I remove all things with MinGW. cflags remove " -Dmain=SDL_main -I/usr/include/mingw -DWIN32 -Uunix -mno-cygwin", libs remove "-lmingw32 -mwindows -mno-cygwin". those options need to remove, if your sdl-config has those.
6. Now you can build it.
6.1 ./autogen if system report "required file './ltmain.sh' " , run libtoolize, and run ./autogen again, then things will be OK
6.2 mkdir build && cd build && ../configure
6.3 make menuconfig, Remember Video & Input driver will only support SDL, of course the NULL driver is OK. About the OS, you may choice POSIX or Windows Compatible now. Because at this moment the codes in Picogui for MiniGW and for Cygwin almost are same.
6.4 make
OK, things will be OK, Good luck.
En, about the C client, I will do ASAP. but I do not familiar with other clients libs, And any others can do that ??
cygwin_picogui.patch
Description: Binary data
sdl-config
Description: Binary data
