Skip to content

Add Windows support.#13

Open
bySabi wants to merge 1 commit into
AGWA:masterfrom
bySabi:master
Open

Add Windows support.#13
bySabi wants to merge 1 commit into
AGWA:masterfrom
bySabi:master

Conversation

@bySabi

@bySabi bySabi commented Feb 12, 2014

Copy link
Copy Markdown

Tested with mingw and msysgit.

@bySabi bySabi mentioned this pull request Feb 12, 2014
@dungelin

dungelin commented Jun 8, 2014

Copy link
Copy Markdown

Can you build windows version file and upload to your github?
I am trying to build it on Windows 8.1 X64 but no success.

@ccleaud

ccleaud commented Jun 8, 2014

Copy link
Copy Markdown
Contributor

Hello,

The binary is already in the github repo (https://github.com/ccleaud/git-crypt).

Please have a look to git-crypt.exe, this is the file you want.

Note that I’m working on this Windows version to improve it.

From: Viet Dzung [mailto:notifications@github.com]
Sent: Sunday, June 8, 2014 10:11 AM
To: AGWA/git-crypt
Subject: Re: [git-crypt] Add Windows support. (#13)

Can you build windows version file and upload to your github?
I am trying to build it on Windows 8.1 X64 but no success.


Reply to this email directly or view it on GitHub #13 (comment) . https://github.com/notifications/beacon/7109720__eyJzY29wZSI6Ik5ld3NpZXM6QmVhY29uIiwiZXhwaXJlcyI6MTcxNzgzNDI4NCwiZGF0YSI6eyJpZCI6MjU1MDk2NDN9fQ==--96babfb6a4535bf3139605233878ff4013c75c20.gif

@dungelin

dungelin commented Jun 9, 2014

Copy link
Copy Markdown

Thanks @ccleaud for the build. :)

@AGWA

AGWA commented Jun 15, 2014

Copy link
Copy Markdown
Owner

I just pushed Windows support to the 'windows' branch. The build system needs work, but it does compile with mingw-w64.

The branch is based on the 'revamp' branch which contains GPG support and which the next release will be based on. I've tested GPG support with gpg4win and it works. The revamp branch is still subject to change, so you should not use the windows branch for anything serious yet.

Thanks @bySabi and @ccleaud for the patches, but since much changed with the revamp branch it ended up being simpler to write the Windows support from scratch.

@yoavram

yoavram commented Aug 6, 2014

Copy link
Copy Markdown

I don't see a windows branch up there.

@AGWA

AGWA commented Aug 6, 2014

Copy link
Copy Markdown
Owner

Hi @yoavram, Windows support has since been merged into the revamp branch.

@yoavram

yoavram commented Aug 15, 2014

Copy link
Copy Markdown

OK, I checked out the revamp branch, opened MinGW shell, went to the git-crypto folder, and ran make.
I get:

c:/mingw/bin/../lib/gcc/mingw32/4.7.2/../../../../mingw32/bin/ld.exe: cannot find -lcrypto
collect2.exe: error: ld returned 1 exit status
make: *** [git-crypt] Error 1

Any clue?

@ccleaud

ccleaud commented Aug 15, 2014

Copy link
Copy Markdown
Contributor

You need to build OpenSSL library first. This will produce 2 files.

You also have to put those files in you lib path in order to allow ld linking against it.

Currently only “libcrypto” is required to build git-crypt.

@yoavram

yoavram commented Aug 27, 2014

Copy link
Copy Markdown

OK, I installed OpenSSL from http://gnuwin32.sourceforge.net/packages/openssl.htm.
Opened MingW shell, added the folder with the OpenSSL files to the library path:

> export LIBRARY_PATH
> LIBRARY_PATH="C:/Program Files (x86)/GnuWin32/lib;LIBRARY_PATH"

then ran make. Failed with an error, to which I found the solution here: I had to add -lgdi32 to the LDFLAGS in the Makefile. Then I was able to build git-crypto.

@vorou

vorou commented Apr 30, 2015

Copy link
Copy Markdown

hey, how is it going?
is there any guide on how to build the lib on Windows, or (better) is anybody maintaining the compiled binaries?

here's what I got:

> make
c++ -Wall -pedantic -ansi -Wno-long-long -O2 -static-libgcc -static-libstdc++   -c -o git-crypt.o git-crypt.cpp
git-crypt.cpp:35:25: fatal error: openssl/err.h: No such file or directory
 #include <openssl/err.h>
                         ^
compilation terminated.
make: *** [git-crypt.o] Error 1

@AGWA

AGWA commented Apr 30, 2015

Copy link
Copy Markdown
Owner

@vorou You need to install OpenSSL under MinGW in order to compile git-crypt. I know very little about development environments on Windows so I don't know how you do that, but there is certain to be documentation online.

It's actually pretty easy for me to cross-compile Windows binaries from Linux. Here's a Windows binary, compiled from the current HEAD: https://www.cloudmutt.com/git-crypt-3104508/git-crypt.exe

I'll probably start building official Windows binaries like this.

@vorou

vorou commented May 1, 2015

Copy link
Copy Markdown

@AGWA works as magic, thanks! It would be nice if you could automate the build, so you don't have to build manually on each commit.

@vorou

vorou commented May 1, 2015

Copy link
Copy Markdown

I've created a chocolatey (apt-get for Windows) package for the binary, would you mind if I upload it to the public repository?

It downloads the .exe by your link and puts it into bin folder. It is ten times more convenient to type cinst -y git-crypt then to download the file manually on each box.

Also, am I right there is no requirement to have OpenSSL installed? I though it's required, but it looks like it's working fine w/o it on a virtual box.

@AGWA

AGWA commented May 1, 2015

Copy link
Copy Markdown
Owner

@vorou a chocolatey package sounds great - thanks! However, don't upload it quite yet - I need to move the .exe to a more permanent URL - the current one is very temporary. I'll let you know when it's ready.

@vorou

vorou commented May 1, 2015

Copy link
Copy Markdown

Roger that!

@bradwilson

Copy link
Copy Markdown

Any word on when this becomes official?

@tcastelli

Copy link
Copy Markdown

+1

@mnbeer

mnbeer commented May 27, 2016

Copy link
Copy Markdown

Any movement on a Windows exe? Would love to use it.

@vorou

vorou commented Jun 4, 2016

Copy link
Copy Markdown

It's actually pretty easy for me to cross-compile Windows binaries from Linux. Here's a Windows binary, compiled from the current HEAD: https://www.cloudmutt.com/git-crypt-3104508/git-crypt.exe

Found out that the link is broken, so here's a mirror.

I guess it's pretty old now, but we haven't had any problems with this version.

@mnbeer

mnbeer commented Jun 4, 2016

Copy link
Copy Markdown

Thanks! I actually had managed to create a Windows build with mingw after some painful pathing issues and I have put it to use. It's existence is much appreciated, thank you.

@jaxzin

jaxzin commented Jul 13, 2016

Copy link
Copy Markdown

👍

@seperman

seperman commented Apr 1, 2017

Copy link
Copy Markdown

Any updates on this?

@mnbeer

mnbeer commented Apr 3, 2017 via email

Copy link
Copy Markdown

@cniweb

cniweb commented Apr 24, 2017

Copy link
Copy Markdown

+1

@radistao

radistao commented May 5, 2017

Copy link
Copy Markdown

+1
any updates?

@bijakatlykkex

Copy link
Copy Markdown

I have created a fork which builds the windows version using appveyor and pushes the result back to github automatically: https://github.com/LykkeCity/git-crypt/releases . There are a few changes/additions, which could be tracked from commits tab.

@cniweb

cniweb commented Dec 22, 2017

Copy link
Copy Markdown

:lgtm:


Review status: 0 of 9 files reviewed at latest revision, all discussions resolved, some commit checks failed.


Comments from Reviewable

@030

030 commented Dec 25, 2018

Copy link
Copy Markdown

https://stackoverflow.com/a/48529709/2777965

@andresmoschini

Copy link
Copy Markdown

😴 💤 💤

@pravin

pravin commented Apr 19, 2021

Copy link
Copy Markdown

Any update on this?

@LMBernardo

LMBernardo commented May 10, 2021

Copy link
Copy Markdown

Any update on this?

Main branch works fine for me, just install the deps and build as described in INSTALL.md

@artmotion

Copy link
Copy Markdown

Anyway to help out on this branch?

@AGWA AGWA added the windows Issue only affects Windows label Sep 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

windows Issue only affects Windows

Projects

None yet

Development

Successfully merging this pull request may close these issues.