[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-glpk] VC++ 6.0 makefile for a GLPK multi-threaded dynamic libr
Re: [Help-glpk] VC++ 6.0 makefile for a GLPK multi-threaded dynamic library
Mon, 19 Feb 2007 05:34:30 +0300
> In GLPK versions before 4.14, you provided a special VC++ 6.0
> makefile for a GLPK multi-threaded dynamic library as well as a
> multi-threaded example.
> The multi-threaded callable library was quite useful for me to
> experiment with Dantzig-Wolfe decomposition and column generation.
> Could you please provide the necessary files, including the def
> file. I tried myself by copying and changing the appropriate mt
> files from version 4.13, but I failed miserably.
Please see the file mt_dll.zip attached. It is a patch for glpk 4.15
that allows building multi-threaded dll with MSVC++ 6.0.
To apply the patch you should:
1) copy new version of 'glplib03.c' to the 'src' directory replacing
its old version;
2) copy 'mtsamp.c' to the 'examples' directory;
3) copy other three files (.bat, .def, and Makefile) to the 'w32'
4) enter the directory 'w32' and run (by double clicking) the batch
file 'Build_GLPK_MT_DLL_with_Visual_C++_6.0.bat'. It will produce
glpk_4_15.lib and glpk_4_15.dll.
> You must have had a reason why not to deliver these files. Could you
> please explain these reasons.
The reason is that some glpk routines use some standard C functions
(like strerror) which are not thread-safe. The probability that this
will cause a bug is extremely low, but not equal to zero. On the
other hand, using something like strerror_r is problematic, because
it is beyond the ISO C standard.
> I am still most grateful for your excellent optimization software.
Thank you for your interest in glpk.
Description: Zip compressed data