Windows10+vs2015源码编译subversion

编程入门 行业动态 更新时间:2024-10-14 02:19:16

Windows10+vs2015<a href=https://www.elefans.com/category/jswz/34/1770099.html style=源码编译subversion"/>

Windows10+vs2015源码编译subversion

Windows源码安装subversion

一、运行环境

  • windows10 64位系统

  • VS2015完整安装

  • Subversion1.6.3

二、源码编译环境配置

1、python环境安装

python-2.4.msi

2、perl环境安装

ActivePerl-5.8.8.822-MSWin32-x86-280952.msi

3、openssl编译

C:>cd openssl-0.9.7f
C:>perl Configure VC-WIN32
C:>call ms\do_masm
C:>nmake -f ms\ntdll.mak
  • 出现报错

.\crypto\mem_dbg.c(607) : error C2220: warning treated as error - no 'object' fi
le generated

解决方法

修改ms\ntdll.mak文件,将第19行的CFLAG的/WX参数去掉,重新运行nmake。

没有报错后,出现如下说明编译成功link /nologo /subsystem:console /machine:I386 /opt:ref /out:out32dll\ope
nssl.exe @C:\Users\ADMINI~1\AppData\Local\Temp\nm30D1.tmp
  • 测试openssl

cd out32dll
call ..\ms\test

最后看到如下提示信息,说明编译正常,功能正常

TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 512 bit RSA passed all tests

4、apache相关依赖模块编译

4.1、apr编译

  • 编译libapr

vs2015打开apr.dsw工程文件,编译,本次环境路径
#
C:\SVN\src-trunk\apr\apr.dsw
#
编译libapr工程

  • 编译报错

编译报错:
1>apr_atomic.obj : error LNK2019: 无法解析的外部符号 __InterlockedCompareExchange,该符号在函数 _apr_atomic_cas32@12 中被引用
1>apr_atomic.obj : error LNK2019: 无法解析的外部符号 __InterlockedDecrement,该符号在函数 _apr_atomic_dec32@4 中被引用
1>apr_atomic.obj : error LNK2019: 无法解析的外部符号 __InterlockedExchange,该符号在函数 _apr_atomic_set32@8 中被引用
1>apr_atomic.obj : error LNK2019: 无法解析的外部符号 __InterlockedExchangeAdd,该符号在函数 _apr_atomic_add32@8 中被引用
1>apr_atomic.obj : error LNK2019: 无法解析的外部符号 __InterlockedIncrement,该符号在函数 _apr_atomic_inc32@4 中被引用
  • 编译报错解决

修改工具集为
Visual Studio 2015 - Windows XP (v140_xp)

4.2、apr-util编译

  • 编译libaprutil

vs2015打开aprutil.dsw工程文件,编译,本次环境路径
#
C:\SVN\src-trunk\apr-util\aprutil.dsw
#
编译libaprutil工程

  • 跟上面一样,工程的编译工具集统一设置成v140_xp

修改工具集为
Visual Studio 2015 - Windows XP (v140_xp)

5、subversion-1.6.3客户端模块编译

5.1、修改配置参数

  • 去除snprintf定义宏

修改build/generator/gen_win.py文件,删除763、764行
if target.name.find('ruby') == -1:fakedefines.append("snprintf=_snprintf")

  • neon去除snprintf定义宏配置

修改neon/config.hw文件,删除59行
#define snprintf			_snprintf

5.2、生成vcproj项目工程文件

cmd命令窗口执行
#
cd src-trunk
#运行如下python命令,生成subversion_vcnet.sln解决方案文件
python gen-make.py -t vcproj --with-openssl=..\openssl-0.9.7f --with-zlib=.\zlib --with-apr=.\apr --with-apr-util=.\apr-util --with-apr-iconv=.\apr-iconv --with-sqlite=.\sqlite-amalgamation
#
vs2015打开并编译

5.3、编译

操作同上,工程的编译工具集统一设置成v140_xp

6、目录结构

7、附件下载

<–>文章附件下载<–>

更多推荐

Windows10+vs2015源码编译subversion

本文发布于:2023-11-15 07:21:24,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1595859.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:源码   subversion

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!