Hi,
looks like I have to clearify some things about windows compatiblity of
zimlib.
Zimlib is developed on linux but not for linux. It is as far as possible
platform indipendent. To compile zimlib you first need to compile cxxtools.
Both use autoconf and automake as the build system. This is a platform
indipendend build system. The only prerequisites you need is a (bourne-
compatible) shell and some simple tools like awk, sed and make. Cxxtools
requires a c++-compiler. Zimlib depends on libz and libbz2. All of these are
easily installable by your package manager of your operating system.
As you know, windows does not fulfil these simple requirements. It does not
have a shell, nor sed or awk. It even does not have a C++-compiler or a
package manager. So it is not that easy to just "emerge libz" or "apt-get
install zlib-dev" or whatever. This is the main problem in porting zimlib to
windows. You have to generate your build stuff on your own and manually install
zlib, libbz2 and a c++-compiler. All this is freely availabe.
Ok - there is at least 2 things which won't work out of the box on windows.
These are libiconv, which is needed by cxxtools and used in zimreader and
opendir/readdir/closedir.
The libiconv stuff is not needed for zimlib. This can be excluded from the
build of cxxtools if you write your build system.
Opendir/readdir/closedir is abstracted away by cxxtools. We just need a
windows implementation.
Fortunately this opendir/readdir/closedir-stuff is adopted from pt-framework,
which has this windows implementation. It is just a matter of adopt this into
cxxtools.
Mutexes were used in libzeno but are not any more used in zimlib.
There may be some other problems, which need to be resolved, but I don't think
there are real showstoppers. The work just need to be done. Nothing really
difficult.
The patches I got from Guillaume mainly copied the pt-framework-directory-stuff
into cxxtools. The other thing was to remove the mutex stuff from libzeno. This
was really not much work. The main problem is to set up the build environment.
This was not done. A Makefile for windows would be helpful, but I haven't got
one from Guillaume. Or a document "howto setup my windows environment to
compile cxxtools and libzeno".
Tommi
Show replies by date