[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-datamash] Windows Build Instructions - MinGW x64 or i686
From: |
Clifford Sobchuk |
Subject: |
Re: [Bug-datamash] Windows Build Instructions - MinGW x64 or i686 |
Date: |
Wed, 3 Aug 2016 14:53:05 +0000 |
Hi Asaf, There is a very large selection of different versions of the
development packages on Cygwin that would impact having a repeatable setup. For
example - there are 12 different versions of automake alone. Could you provide
me a listing of what you have installed for the windows development
environment.
Thanks,
CLIFF SOBCHUK
Phone +16139636957
Mobile +14038199233
-----Original Message-----
From: Assaf Gordon [mailto:address@hidden
Sent: Tuesday, August 02, 2016 9:45 PM
To: Clifford Sobchuk
Cc: address@hidden
Subject: Re: [Bug-datamash] Windows Build Instructions - MinGW x64 or i686
Hello,
> On Aug 2, 2016, at 18:05, Clifford Sobchuk <address@hidden> wrote:
>
> Hi, where are the build instructions for Windows using either the MinGW
> toolchain or Visual Studio. I have tried several times with the latest MinGW
> on Windows7 enterprise and it fails the configure stage – then once that is
> fixed it fails multiple places in the make stage. Surely the earlier windows
> versions used the same build process?
>
> Thanks, Cliff.
When I build windows binaries, I use a Windows Server 2012 with cygwin version
2.5.1, with gcc 5.3.0 and/or MinGW-gcc 4.9.2 .
I use the latest official tarball (currently datamash version 1.1.0).
The following commands will demonstrate (these are executed inside the cygwin
shell terminal window):
$ uname -a
CYGWIN_NT-6.2 WIN-9FFSHRJAFVN 2.5.1(0.297/5/3) 2016-04-21 22:14 x86_64
Cygwin
$ echo `cmd /c ver`
Microsoft Windows [Version 6.2.9200]
$ gcc --version
gcc (GCC) 5.3.0
$ x86_64-w64-mingw32-gcc --version
x86_64-w64-mingw32-gcc (GCC) 4.9.2
$ i686-w64-mingw32-gcc --version
i686-w64-mingw32-gcc (GCC) 4.9.2
$ wget http://ftp.gnu.org/gnu/datamash/datamash-1.1.0.tar.gz
$ tar -xf datamash-1.1.0.tar.gz
$ cd datamash-1.1.0
Build for cygwin (will require cygwin's dlls):
$ ./configure
$ make
Build native windows exe (64bit):
$ ./configure --host=x86_64-w64-mingw32 --disable-nls
$ make
Build native windows exe (32bit):
$ ./configure --host=i686-w64-mingw32 --disable-nls
$ make
On a somewhat-related note, it was brought to my attention in a recent thread (
http://lists.gnu.org/archive/html/bug-datamash/2016-06/msg00002.html ) that
datamash's exe files respect the current locale (as they should), but on
windows it's hard to force a different locale (unlike on unix, where LC_ALL=C
solves the issue).
As a temporary work-around, I've updated the file 'src/datamash.c" to always
use simple "C" locale (mainly: use dot character as decimal separator), by
changing line 1069 from:
setlocale(LC_ALL,"")
to:
setlocale(LC_ALL,"C")
I will soon fix this issue in the git repository, but at the moment it's done
manually before building a windows binary.
Hope this helps,
regards,
- assaf