Build a Windows executable #51

Open
liamzebedee opened this Issue Nov 4, 2012 · 4 comments

Comments

Projects
None yet
2 participants
@liamzebedee

I'm developing on a Windows machine, and due to the multiple bash-specific scripts, I cannot build. Would it be possible for a prebuilt Windows executable to be made?

@pomack

This comment has been minimized.

Show comment Hide comment
@pomack

pomack Nov 6, 2012

Owner

I don't have access to a Windows machine with a full development environment. As such, making a Windows executable is not high on my priority list right now. Most scripts have been replaced with appropriate Makefile and built using the standard autoconfigure tools that the main thrift project uses. Are you building the rest of thrift on Windows? What about the associated run-time libraries? Are you using Go on Windows as well? Was that pre-built or built using a particular toolchain?

Owner

pomack commented Nov 6, 2012

I don't have access to a Windows machine with a full development environment. As such, making a Windows executable is not high on my priority list right now. Most scripts have been replaced with appropriate Makefile and built using the standard autoconfigure tools that the main thrift project uses. Are you building the rest of thrift on Windows? What about the associated run-time libraries? Are you using Go on Windows as well? Was that pre-built or built using a particular toolchain?

@liamzebedee

This comment has been minimized.

Show comment Hide comment
@liamzebedee

liamzebedee Nov 8, 2012

I am trying to build with Cygwin. Over the weekend I will try just running natively using MinGW and other Windows tools and see if I can get it to build.

Is there any chance of this being merged back into the main Apache Thrift tree?

I am trying to build with Cygwin. Over the weekend I will try just running natively using MinGW and other Windows tools and see if I can get it to build.

Is there any chance of this being merged back into the main Apache Thrift tree?

@pomack

This comment has been minimized.

Show comment Hide comment
@pomack

pomack Nov 8, 2012

Owner

We'd like it to be merged back into the main Apache Thrift tree and they do too. There are still some bugs and distribution issues that we need to fix before submitting it to them.

Let me know how well it works building on Windows. I'll try to help however I can.

Owner

pomack commented Nov 8, 2012

We'd like it to be merged back into the main Apache Thrift tree and they do too. There are still some bugs and distribution issues that we need to fix before submitting it to them.

Let me know how well it works building on Windows. I'll try to help however I can.

@liamzebedee

This comment has been minimized.

Show comment Hide comment
@liamzebedee

liamzebedee Nov 16, 2012

Sorry it's taken so long to reply, I've been working a lot. Here is the output from merge_and_build.sh -

$ ./merge_and_build.sh
This script will patch in the local changes such that one can build Apache
Thrift 0.8.0 with the current revision of thrift4go. A number of sanity
checks will be run before-hand.

One may wish to run this script as "bash -x ./merge_and_build.sh" to see exactly what steps
it performs, as it will modify the local source copy of Thrift. The script
will abort if it encounters any errors.

It may also be run as "./merge_and_build.sh -b" for batch mode, in which case no prompts will
be performed.
./merge_and_build.sh: line 18: getopt: command not found
Do you wish to proceed: [Y]es or [N]o?Y
WARNING: /cygdrive/c/Users/liamzebedee/Documents/workspace/thrift-0.8.0/cleanup.sh does not exist. A copy from Thrift 0.8.0 is
being provided in its place. This may occur if using a Thrift release tarball.
WARNING: /cygdrive/c/Users/liamzebedee/Documents/workspace/thrift-0.8.0/bootstrap.sh does not exist. A copy from Thrift 0.8.0 is
being provided in its place. This may occur if using a Thrift release tarball.
configure.ac: warning: missing AC_CHECK_HEADERS([wchar.h]) wanted by: lib/py/compat/win32/stdint.h:52
libtoolize: $pkgltdldir is not a directory: `/mingw/share/libtool'

I am indeed using a Thrift release tarball, but I am still concerned about the libtoolize error on the last line. I am building using Cygwin (obviously).

I also have a local Ubuntu boot, if would be possible to cross-compile.

Sorry it's taken so long to reply, I've been working a lot. Here is the output from merge_and_build.sh -

$ ./merge_and_build.sh
This script will patch in the local changes such that one can build Apache
Thrift 0.8.0 with the current revision of thrift4go. A number of sanity
checks will be run before-hand.

One may wish to run this script as "bash -x ./merge_and_build.sh" to see exactly what steps
it performs, as it will modify the local source copy of Thrift. The script
will abort if it encounters any errors.

It may also be run as "./merge_and_build.sh -b" for batch mode, in which case no prompts will
be performed.
./merge_and_build.sh: line 18: getopt: command not found
Do you wish to proceed: [Y]es or [N]o?Y
WARNING: /cygdrive/c/Users/liamzebedee/Documents/workspace/thrift-0.8.0/cleanup.sh does not exist. A copy from Thrift 0.8.0 is
being provided in its place. This may occur if using a Thrift release tarball.
WARNING: /cygdrive/c/Users/liamzebedee/Documents/workspace/thrift-0.8.0/bootstrap.sh does not exist. A copy from Thrift 0.8.0 is
being provided in its place. This may occur if using a Thrift release tarball.
configure.ac: warning: missing AC_CHECK_HEADERS([wchar.h]) wanted by: lib/py/compat/win32/stdint.h:52
libtoolize: $pkgltdldir is not a directory: `/mingw/share/libtool'

I am indeed using a Thrift release tarball, but I am still concerned about the libtoolize error on the last line. I am building using Cygwin (obviously).

I also have a local Ubuntu boot, if would be possible to cross-compile.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment