作者chchwy (mat)
看板C_and_CPP
标题Re: [问题] 有人编译过开源软体WinMerge吗?
时间Fri Jun 24 23:36:09 2016
WinMerge死掉很久了
(原开发者当初说 WinMerge 3 要整个用Qt改写,结果就此摆烂...)
不过OpenSource就是有无限的可能性
网路上有心人分支出去开发,改名叫做 WinMerge 2011
https://bitbucket.org/jtuc/winmerge2011
一直到最近都有在维护 可以考虑改用这个版本
※ 引述《z1976 (z1976)》之铭言:
: WinMerge是一套开源文件比对软体 http://winmerge.org/
: 因公司有些文字文件是用自己的加解密系统,因此只能用自己写的程式去开档、编辑
: 但那个程式很阳春,导致很多工作上的不便、没效率。
: 最近看到WinMerge是open source,想说可以改看看在开档的後端加入我们解密的部分
: 这样就有一个好用的软体可以快速比较、判读文件。
: 今天实际checkout它的svn回来编译,目录里面有.sln专案
: 而我的环境是 Windows 7 32位元 + Visual Studio Community 2013。
: 它里面有3个静态函示库是设成外部依赖,要预先编译好,(expat, pcre, scew)
: 但要编译完这三个lib,首先要安装好CMake
: 生成那3个库之後再rebuild主程式的.sln,但最後我还是收到这样的error
: ---
: 1>libcpmtd.lib(xlock.obj) : error LNK2038: mismatch detected for
: 'RuntimeLibrary': value 'MTd_StaticDebug' doesn't match value
: 'MDd_DynamicDebug' in 7zCommon.obj
: ---
: 後面很多重复的我就不贴了
: 因主程式的动态函示库是设成MDd,而这个 7zCommon.obj是主程式的一部分。
: 但不知为何去关联到libcpmtd.lib,我查了msdn,这是执行阶段函示库(CRT)的mtd版本
: 如果我配合它,把Runtime Library改为MTd,又会出现错误讯息
: 1>C:\Program Files\Microsoft Visual Studio
: 12.0\VC\atlmfc\include\afxver_.h(77): fatal error C1189: #error : Please use
: the /MD switch for _AFXDLL builds
: 应该是说程式是MFC框架所以只能设/MD
: 到这边就不知道怎麽办了... 7zCommon为何一定要关联到libcpmtd.lib呢
: 但是既然别人可以,那是不是我环境的问题?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.235.83.217
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1466782574.A.D57.html
※ 编辑: chchwy (36.235.83.217), 06/24/2016 23:37:00