diff options
author | Joey Hess <joey@kitenet.net> | 2013-05-10 18:37:51 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-05-10 18:37:51 -0400 |
commit | e594965a5ca42618970e9640918296c0819daf60 (patch) | |
tree | e24d233e0c04756619ba4c54f8767a0cdbd93204 /doc | |
parent | e8aeff7e0b18065c448b287e8fbeb790dbcb9ee7 (diff) |
blog for the day
Diffstat (limited to 'doc')
-rw-r--r-- | doc/design/assistant/blog/day_260__Windows_dev_environment.mdwn | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/doc/design/assistant/blog/day_260__Windows_dev_environment.mdwn b/doc/design/assistant/blog/day_260__Windows_dev_environment.mdwn new file mode 100644 index 000000000..4fa2ccf5a --- /dev/null +++ b/doc/design/assistant/blog/day_260__Windows_dev_environment.mdwn @@ -0,0 +1,46 @@ +Set up my Windows development environment. For future reference, I've +installed: + +* haskell platform for windows +* cygwin +* gcc and a full C toolchain in cygwin +* git from upstream (probably git-annex will use this) +* git in cygwin (the other git was not visible inside cygwin) +* vim in cygwin +* vim from upstream, as the cygwin vim is not very pleasant to use +* openssh in cygwin (seems to be missing a ssh server) +* rsync in cygwin +* Everything that `cabal install git-annex` is able to install successfully. + This includes all the libraries needed to build regular git-annex, + but not the webapp. Good start though. + +Result basically feels like a linux system that can't decide which way +slashes in paths go. :P I've never used Cygwin before (I last used a +Windows machine in 2003 for that matter), and it's a fairly impressive hack. + +---- + +Fixed up git-annex's configure program to run on Windows (or, at least, in +Cygwin), and have started getting git-annex to build. + +For now, I'm mostly stubbing out functions that use unix stuff. Gotten the +first 44 of 300 source files to build this way. + +Once I get it to build, if only with stubs, I'll have a good +idea about all the things I need to find Windows equivilants of. +Hopefully most of it will be provided by +<http://hackage.haskell.org/package/unix-compat-0.3.0.1>. + +---- + +So that's the plan. There is a possible shortcut, rather than doing a full +port. It seems like it would probably not be too hard to rebuild ghc inside +Cygwin, and the resulting ghc would probably have a full POSIX emulation +layer going through cygwin. From ghc's documentation, it looks like that's +how ghc used to be built at some point in the past, so it would probably +not be too hard to build it that way. With such a cygwin ghc, git-annex +would probably build with little or no changes. However, it would be a +git-annex targeting Cygwin, and not really a native Windows port. So +it'd see Cygwin's emulated POSIX filesystem paths, etc. That +seems probably not ideal for most windows users.. but if I get really stuck +I may go back and try this method. |