2012-01-31 56 views
3

我知道Git for Windows它提供了一个 shell中的git shell。但是有没有使用Microsoft VC++工具链构建git的选项?可以使用VC++构建git吗?

+1

我非常怀疑这是可能的,因为Git依赖于一个POSIX接口和相当多的Linux/Unix库。这就是msysgit被引入的原因,毕竟它包装了所有的依赖关系。不过,我没有提及这个,所以我不打算把它作为答案。 – 2012-01-31 17:52:37

+0

https://github.com/gitster/git/tree/master/compat/vcbuild – 2012-01-31 18:00:50

+0

@NiklasBaumstark:看看http://gnuwin32.sourceforge.net/。他们移植了大量可能具有这种依赖关系的GNU工具。是什么让git在这方面特别? – 2012-01-31 18:03:24

回答

1

Git的为Windows构建树(msysGit)提供了所有的UNIX需要构建和运行git的实用程序。通常这是使用gcc构建的,因为这是开放的和免费的,但是需要使用MSVC构建git二进制文件所需的兼容性代码。如果启动Visual Studio命令提示符,则从msysGit树中运行msys.bat命令,您将拥有一个bash shell,其中'cl'运行msvc编译器。运行/ bin/msvc-build脚本以使用Microsoft工具链初始化构建树。这克服了兼容性文件的附加回购并设置了config.mak脚本。 之后make MSVC=1应该足够了。我认为上面的脚本是为免费的Visual Studio Express编译器配置的,但我已经使用VS2010的C编译器构建了一些版本。

总之:使用net-intaller创建一个msysGit构建树,并使用提供的脚本将其重新配置为使用msvc工具链进行构建。

+0

构建的,而'make MSVC = 1'将使用最近的--gui选项的msvc编译器,它生成.sln,生成一个无法在VS2010中编译的项目IDE。 – 2012-04-03 19:25:43

相关问题