Le 04/11/2012 23:43, Schindler Karl-Michael a écrit :
Hi Maurice
I tried your patch and i found this small glitch in test/speedtst.c
There is one more "#endif" missing after "#include <values.h>"
OK, done and uploaded
There are the additional issues when enabling tiff, png and jpeg. They are not readily available, but need to be installed in --prefix such as /usr/local, /opt or /sw Therefore, the include and lib paths need to be passed to the compiler and the linker.
In other systems, it is supposed that these softwares are first installed in a known system directory, i.e.
/usr or /usr/local in linux c:\mingw in mingw c:\djgpp in djgpp
In that case .h and library files are found by the system and your following changes are not needed to compile grx.
notice that $(includedir) is the path where .h files of grx are to be installed, not the one where other .h files are to be found (and similarly for libraries)
Doing your changes enables to compile and install grx, but you will not be able to use them in user's programs if you do not make them visible by the system. The usual way to do this is to install them in system directories like above.
I had one case in which this way was not convenient, an old mingw system. In that case the c:\mingw directory was deleted with all its contents for each change of version, so that it was really not convenient to install into it tiff, png, jpeg and grx. In that case I created a "local" directory, as a subdirectory of c:\msys\1.0, which is symlinked as /usr in mingw/msys, to mirror the linux behaviour. I made it computer available by putting in the user's ".profile" and ".bash_profile" the following lines
export LIBRARY_PATH="/usr/local/lib" export C_INCLUDE_PATH="/usr/local/include" export CPLUS_INCLUDE_PATH="/usr/local/include"
and in the global ".profile"
export PATH=".:/usr/local/bin:/mingw/bin:/bin:$PATH"
(could have all been in the global .profile, but this one is maintained by upgrading the system, and can be overwritten)
This way all is available both when compiling grx and in user's programs
Do you see an objection to follow this in Mac OS X. As I said you need something like this to compile user's programs. I can include explanations in the readme files.
diff -r '-x*.*o' ../grx249 2/src/makefile.x11 ./src/makefile.x11
it should be makefile.osx, see below
<snip>
146c164
< $(CC) $(LDOPT) -shared -Wl,-soname,$(notdir $(GRX20SHli)) -o $(GRX20SHna) $(LO)
$(CC) $(LDOPT) -shared -lX11 -L/usr/X11/lib -o $(GRX20SHna) $(LO) $(LIBS)
This is not the content of makefile.osx, with the .dylib stuff. Have you tried it ?
Maurice