关键词:linux命令 grep sed 正则表达式 sort
在生成Crypto++密码库的时候遇到一些编译和连接错误。经过分析发现是因为project中没有添加源码目录下的个别源文件。Crypto++源码目录下默认提供VS2010的Solution。官方文档上说当前版本支持从VS2003-2017的编译器,实际上只提供VS2005和VS2010两个Solution,VS2005的Solution在源码目录下的压缩文件VS2005.zip中。我是在编译VS2005的Soluntion出现的错误。在解决了几个错误之后,发现是由于源码目录下的某些源文件没有加入到对应的project中,猜测可能是由于作者在默认的VS2010工程中编译测试通过,没有将工程改动及时更新到VS2005工程。
如果一个错误一个错误地解决,加入一个源文件之后又产生了其他错误,非常浪费时间。如果打开两个project文件人工比对VS2010 Project比VS2005 Project,不仅慢还容易出错。那么如何才能快速比较出VS2010和VS2005两个Project有哪些差异?
VS2010和VS2005的Project虽然在文件结构上有很大不同,但无非是包含源文件和配置信息。只要从VS2010 Project找出包含了哪些CPP文件,再与VS2005 Project包含的CPP文件进行比较,看看多出了哪些CPP文件,问题就解决了。
在Project文件中查找包含.cpp的行</