<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oracle Berkeley DB 中国研发团队的博客 &#187; VC2005</title>
	<atom:link href="http://www.bdbchina.com/tag/vc2005/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bdbchina.com</link>
	<description>Oracle Berkeley DB 中国研发团队的博客</description>
	<lastBuildDate>Fri, 09 Jul 2010 06:44:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>使用Visual C++ 2005对Oracle BerkeleyDB 进行最小化编译</title>
		<link>http://www.bdbchina.com/2009/06/%e4%bd%bf%e7%94%a8visual-c-2005%e5%af%b9oracle-berkeleydb-%e8%bf%9b%e8%a1%8c%e6%9c%80%e5%b0%8f%e5%8c%96%e7%bc%96%e8%af%91/</link>
		<comments>http://www.bdbchina.com/2009/06/%e4%bd%bf%e7%94%a8visual-c-2005%e5%af%b9oracle-berkeleydb-%e8%bf%9b%e8%a1%8c%e6%9c%80%e5%b0%8f%e5%8c%96%e7%bc%96%e8%af%91/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 07:13:56 +0000</pubDate>
		<dc:creator>Winter</dc:creator>
				<category><![CDATA[Berkeley DB]]></category>
		<category><![CDATA[Winter Zhang]]></category>
		<category><![CDATA[bdb]]></category>
		<category><![CDATA[VC2005]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=318</guid>
		<description><![CDATA[1 最小化编译(Small Build)介绍
在 使用Visual C++ 2005编译Oracle Berkeley DB中， 我们介绍了如何用Visual C++ 2005来编译BerkeleyDB的通用库以及相应工具、例子的过程。 所谓通用，是指所有功能都被开启了，这是默认的配置。 但是， 默认配置对于某些特定场景来说，是冗余的。 举例来说， 嵌入式设备的内存有限， 要求运行的程序使用尽量少的内存；另一方面，许多嵌入式设备上不具备某些功能， 比如网络访问，多线程支持， 加密支持等等，因而Berkeley DB提供的相关功能不是必须的。 一句话，为了满足某些特殊使用场景， Berkeley DB提供了Small Build选项。
Small Build是指编译一个精简的函数库以及相应的工具、例子， 它是对通用编译的精简化。 首先， 通用编译会提供4中存取方法：Btree、Hash、Queue、Recno，但是在small Build中， 只提供了对Btree的支持。 其次， Small Build取消了以下功能：CRYPTO(加密/解密支持)、Replication(高可用性支持)、Verify(存取方法验证支持)。 通过这些精简化， Berkeley DB大大降低了编译后生成的类库的大小。
本文介绍了如何在Windows上用VC++2005 编译Oracle Berkeley DB 4.7.25 Small Build版本。
关于下载BerkeleyDB以及用VC++2005打开工程BerkeleyDB的工程文件，请参见使用Visual C++ 2005编译Oracle Berkeley DB。
2  编译Small Library(最小化函数库)
打开工程文件之后，选择编译类型(本文是Release x86 Win32)，鼠标右键单击项目db_small， 选择build，就开始编译Small Library了。

编译完成之后，就可以看到产生的Small Library了。Release编译类型产生的文件名为：libdb_small47s.lib。



3 基于Small Library编译工具程序和示例程序。
默认情况下，各种工具程序(db_deadlock等等)和示例程序(ex_access等等)都是依赖于通用函数库，而不是Small [...]]]></description>
			<content:encoded><![CDATA[<p>1 最小化编译(Small Build)介绍</p>
<p>在 <a title="使用Visual C++ 2005编译Oracle Berkeley DB" href="http://www.bdbchina.com/2009/04/使用visual-c-2005编译oracle-berkeley-db" target="_blank">使用Visual C++ 2005编译Oracle Berkeley DB</a>中， 我们介绍了如何用Visual C++ 2005来编译BerkeleyDB的通用库以及相应工具、例子的过程。 所谓通用，是指所有功能都被开启了，这是默认的配置。 但是， 默认配置对于某些特定场景来说，是冗余的。 举例来说， 嵌入式设备的内存有限， 要求运行的程序使用尽量少的内存；另一方面，许多嵌入式设备上不具备某些功能， 比如网络访问，多线程支持， 加密支持等等，因而Berkeley DB提供的相关功能不是必须的。 一句话，为了满足某些特殊使用场景， Berkeley DB提供了Small Build选项。</p>
<p>Small Build是指编译一个精简的函数库以及相应的工具、例子， 它是对通用编译的精简化。 首先， 通用编译会提供4中存取方法：Btree、Hash、Queue、Recno，但是在small Build中， 只提供了对Btree的支持。 其次， Small Build取消了以下功能：CRYPTO(加密/解密支持)、Replication(高可用性支持)、Verify(存取方法验证支持)。 通过这些精简化， Berkeley DB大大降低了编译后生成的类库的大小。</p>
<p class="MsoNormal"><span style="font-family: 宋体;">本文介绍了如何在</span><span lang="EN-US">Windows</span><span style="font-family: 宋体;">上用</span><span lang="EN-US">VC++2005 </span><span style="font-family: 宋体;">编译</span><span lang="EN-US">Oracle Berkeley DB 4.7.25 Small Build</span><span style="font-family: 宋体;">版本</span><span lang="EN-US">。</span></p>
<p class="MsoNormal"><span lang="EN-US"><span id="more-318"></span></span>关于下载BerkeleyDB以及用VC++2005打开工程BerkeleyDB的工程文件<span lang="EN-US">，请参见<a title=" 使用Visual C++ 2005编译Oracle Berkeley DB" href="http://www.bdbchina.com/2009/04/%E4%BD%BF%E7%94%A8visual-c-2005%E7%BC%96%E8%AF%91oracle-berkeley-db" target="_blank">使用Visual C++ 2005编译Oracle Berkeley DB</a>。</span></p>
<p class="MsoNormal">2  编译Small Library(最小化函数库)</p>
<p class="MsoNormal">打开工程文件之后，<span style="font-family: 宋体;">选择编译类型</span><span lang="EN-US">(</span><span style="font-family: 宋体;">本文是</span><span lang="EN-US">Release x86 Win32)，</span><span style="font-family: 宋体;">鼠标右键单击项目db_small</span><span lang="EN-US">， </span><span style="font-family: 宋体;">选择</span><span lang="EN-US">build，</span><span style="font-family: 宋体;">就开始编译Small Library了。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;"><img class="alignnone size-full wp-image-323" src="http://www.bdbchina.com/wp-content/uploads/2009/06/11.jpg" alt="11" width="510" height="621" /></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">编译完成之后，就可以看到产生的Small Library了。Release编译类型产生的文件名为：libdb_small47s.lib。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;"><img class="alignnone size-full wp-image-324" src="http://www.bdbchina.com/wp-content/uploads/2009/06/2.jpg" alt="2" width="599" height="374" /></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;"><br />
</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">3 基于Small Library编译工具程序和示例程序。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">默认情况下，各种工具程序(db_deadlock等等)和示例程序(ex_access等等)都是依赖于通用函数库，而不是Small Library。但实际上，</span><span style="font-family: 宋体;">依赖于Small Library，</span><span style="font-family: 宋体;">他们也能正确运行。通常，为了验证Small Library的正确性，以及在嵌入式设备上诊断信息，也需要基于Small Library编译出这些程序。但是，在直接点击一个项目build之前，需要对这个项目作若干必要配置更改。下面就以编译db_deadlock来说明这个过程。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">3.1 修改依赖性</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">默认情况下，db_deadlock项目依赖于db_dll(通用函数库),这里要改成对db_small的依赖。具体操作过程是：鼠标单击选中工程文件，而后选择菜单 Project-&gt;Project Dependencies, 选择Dependencies页， 在Projects下拉列表中选择db_deadlock, 在Depends on中，将db_dll前的勾去掉，并在db_small前面打勾。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;"><img class="alignnone size-full wp-image-325" src="http://www.bdbchina.com/wp-content/uploads/2009/06/3.jpg" alt="3" width="515" height="471" /></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">3.2 修改项目属性</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">默认情况下，db_deadlock项目使用通用的设置进行编译，要使用Small Library，并且要使得程序基于Small Library能够顺利编译，需要修改一下项目的某些属性。右键单击db_deadlock，选择properties就可以看到db_deadlock的属性页，选择并展开Configuration Properties就可以看到有许多分类，本处要修改的两个属性分别位于C/C++和Linker这两个分类之中。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">3.2.1 使用最小化设置来编译该项目。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">展开C/C++分类，选择Command Line, 而后在右边的Additional options空白中填入/D &#8220;HAVE_SMALLBUILD&#8221;</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;"><img class="alignnone size-full wp-image-326" src="http://www.bdbchina.com/wp-content/uploads/2009/06/4.jpg" alt="4" width="743" height="586" /></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">3.2.2 修改依赖的库文件，让db_deadlock使用编译出来的Small Library。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">展开Linker分类，选择Input,在右边的Additional Dependencies中，用libdb_small47s.lib覆盖原有内容(libdb47.lib)。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;"><img class="alignnone size-full wp-image-327" src="http://www.bdbchina.com/wp-content/uploads/2009/06/5.jpg" alt="5" width="742" height="577" /></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">完成这些修改之后，如同编译db_small一样，右键单击db_deadlock，而后选择build，就编译出了基于Small Library的db_deadlock程序了。</span></p>
<p class="MsoNormal">4  运行示例程序</p>
<p class="MsoNormal"><span lang="EN-US">ex_access是Oracle Berkeley DB自带的一个示例程序， 该程序将用户输入的字符串作为关键字(key)，将字符串倒置作为数据(data)，而后将此键值对存入BerkeleyDB数据库。 当用户键入exit时，该程序将显示数据库的内容， 而后退出。</span>以和db_deadlock相同的方式，修改ex_access项目， 而后再编译ex_access项目，就编译出基于Small Library的ex_access，可以运行它来验证一下Small Library的正确性。</p>
<p class="MsoNormal"><img class="alignnone size-full wp-image-328" src="http://www.bdbchina.com/wp-content/uploads/2009/06/6.jpg" alt="6" width="664" height="435" /></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US">5 总结<br />
</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><span> </span></span><span style="font-family: 宋体;">在掌握了用VC++2005对BerkeleyDB进行通用编译的方法之后，进行最小化编译也是比较容易的。 如果读者出现什么问题，可以与我进行交流。 </span></p>
<p class="MsoNormal">
<p class="MsoNormal">
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2009/06/%e4%bd%bf%e7%94%a8visual-c-2005%e5%af%b9oracle-berkeleydb-%e8%bf%9b%e8%a1%8c%e6%9c%80%e5%b0%8f%e5%8c%96%e7%bc%96%e8%af%91/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使用Visual C++ 2005编译Oracle Berkeley DB</title>
		<link>http://www.bdbchina.com/2009/04/%e4%bd%bf%e7%94%a8visual-c-2005%e7%bc%96%e8%af%91oracle-berkeley-db/</link>
		<comments>http://www.bdbchina.com/2009/04/%e4%bd%bf%e7%94%a8visual-c-2005%e7%bc%96%e8%af%91oracle-berkeley-db/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 05:23:15 +0000</pubDate>
		<dc:creator>Winter</dc:creator>
				<category><![CDATA[Berkeley DB]]></category>
		<category><![CDATA[Winter Zhang]]></category>
		<category><![CDATA[bdb]]></category>
		<category><![CDATA[VC2005]]></category>

		<guid isPermaLink="false">http://www.bdbchina.com/?p=244</guid>
		<description><![CDATA[本文简要介绍了Oracle Berkeley DB, 描述了用Microsoft Visual Studio 2005 在Windows 平台编译Oracle Berkeley DB的过程.]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"><span lang="EN-US">1 </span><span style="font-family: 宋体;">前言</span></p>
<p class="MsoNormal"><span lang="EN-US">Oracle Berkeley DB </span><span style="font-family: 宋体;">是行业领先的可嵌入开源数据库引擎，它为开发人员提供了无需管理的快速、可靠的本地持久性。它是一个直接链接到您应用程序的库。您的应用程序进行简单的函数调用，而不是向远程服务器发送消息，从而消除了客户端</span><span lang="EN-US">-</span><span style="font-family: 宋体;">服务器体系结构的性能损耗。</span> <span style="font-family: 宋体;">它消除了</span><span lang="EN-US"> SQL </span><span style="font-family: 宋体;">查询处理的开销，从而使应用程序按可预测的访问模式更快地运行。它提供了事务和恢复</span><span lang="EN-US">，</span><span style="font-family: 宋体;">用于高并发的锁定，</span><span style="font-family: 宋体;">多进程和多线程</span><span lang="EN-US">， </span><span style="font-family: 宋体;">冷热备份</span><span lang="EN-US">，</span><span style="font-family: 宋体;">以及用于高可用性应用程序的单主复制</span><span lang="EN-US">。</span><span style="font-family: 宋体;">在提供强大功能的同时</span><span lang="EN-US">， </span><span style="font-family: 宋体;">它还具有强大的可配置性</span><span lang="EN-US">， </span><span style="font-family: 宋体;">使得开发人员能够控制它行为的众多方面</span><span lang="EN-US">。</span></p>
<p class="MsoNormal"><span lang="EN-US"></span></p>
<p class="MsoNormal"><span lang="EN-US"> </span><span lang="EN-US">Visual C++ 2005</span><span style="font-family: 宋体;">是</span><span lang="EN-US">Windows </span><span style="font-family: 宋体;">平台上最为流行的企业级</span><span lang="EN-US">C/C++</span><span style="font-family: 宋体;">编译器</span><span lang="EN-US">，</span><span style="font-family: 宋体;">能够在</span><span lang="EN-US">windows</span><span style="font-family: 宋体;">平台上产生高效的二进制代码</span><span lang="EN-US">。</span><span lang="EN-US">Visual C++ 2005是Visual Studio 2005的重要组成部分，其安装包含在Visual Studio 2005的安装中，并且其与其他语言的编译器共用一个集成开发环境（IDE)。<br />
</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">本文介绍了如何在</span><span lang="EN-US">Windows</span><span style="font-family: 宋体;">上用</span><span lang="EN-US">VC++2005 </span><span style="font-family: 宋体;">编译</span><span lang="EN-US">Oracle Berkeley DB 4.7.25 </span><span style="font-family: 宋体;">版本</span><span lang="EN-US">。</span></p>
<p class="MsoNormal"><span lang="EN-US"><span id="more-244"></span><br />
</span></p>
<p class="MsoNormal"><span lang="EN-US">2 </span><span style="font-family: 宋体;">下载</span><span lang="EN-US">Oracle Berkeley DB</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US">Oracle Berkeley DB </span><span style="font-family: 宋体;">可以从此处下载</span><span lang="EN-US">: <a href="http://www.oracle.com/technology/global/cn/software/products/berkeley-db/db/index.html">http://www.oracle.com/technology/global/cn/software/products/berkeley-db/db/index.html</a></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><!--[if !mso]><br />
<mce:style><!  v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} --></p>
<p><!--[endif]--><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning /> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:Compatibility> <w:SpaceForUL /> <w:BalanceSingleByteDoubleByteWidth /> <w:DoNotLeaveBackslashAlone /> <w:ULTrailSpace /> <w:DoNotExpandShiftReturn /> <w:AdjustLineHeightInTable /> <w:UseFELayout /> </w:Compatibility> <w:DoNotOptimizeForBrowser /> </w:WordDocument> </xml><![endif]--> <span style="font-size: 10.5pt; font-family: &quot;Times New Roman&quot;;" lang="EN-US"><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600"  o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f"  stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:377.25pt;  height:146.25pt'> <v:imagedata src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/07/clip_image001.png" mce_src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/07/clip_image001.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><img class="alignnone size-full wp-image-251" title="1" src="http://www.bdbchina.com/wp-content/uploads/2009/04/1.jpg" alt="1" width="553" height="225" /><!--[endif]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><!--[if gte vml 1]><v:shapetype  id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t"  path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:377.25pt;  height:146.25pt'> <v:imagedata src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image001.png" mce_src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image001.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span style="font-family: 宋体;">点击</span><span lang="EN-US">Berkeley DB 4.7.25.NC.zip，</span><span style="font-family: 宋体;">由于本文描述的是如何从源代码编译出</span><span lang="EN-US">Berkeley DB，</span><span style="font-family: 宋体;">故而不选择下载</span><span lang="EN-US">Windows</span><span style="font-family: 宋体;">安装程序</span><span lang="EN-US">。</span><span style="font-family: 宋体;">下载完成后</span><span lang="EN-US">，</span><span style="font-family: 宋体;">解压该文件</span><span lang="EN-US">，</span><span style="font-family: 宋体;">解压后进入</span><span lang="EN-US">db-4.7.25.NC， 我们</span><span style="font-family: 宋体;">可以发现该文件夹的内容</span><span lang="EN-US">：</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><img class="alignnone size-full wp-image-272" title="22" src="http://www.bdbchina.com/wp-content/uploads/2009/04/22.jpg" alt="22" width="491" height="517" /><br />
</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><!--[if gte vml 1]><v:shape  id="_x0000_i1026" type="#_x0000_t75" style='width:414.75pt;height:288.75pt'> <v:imagedata src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image003.png" mce_src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image003.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><!--[if !supportEmptyParas]--> <!--[endif]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left">
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US">3 </span><span style="font-family: 宋体;">编译</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span style="font-family: 宋体;">进入</span><span lang="EN-US">build_windows</span><span style="font-family: 宋体;">目录，</span><span style="font-family: 宋体;">我们可发现该目录下有一个工程文件</span><span lang="EN-US">(.dsw)</span><span style="font-family: 宋体;">和很多的项目文件</span><span lang="EN-US">(.dsp)，</span><span style="font-family: 宋体;">这里我们选择使用工程文件</span><span lang="EN-US">Berkeley_DB.dsw：</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><!--[if gte vml 1]><v:shape  id="_x0000_i1027" type="#_x0000_t75" style='width:414.75pt;height:276.75pt'> <v:imagedata src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image005.png" mce_src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image005.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span style="font-family: 宋体;">打开</span><span lang="EN-US">Microsoft Visual Studio 2005的IDE， </span><span style="font-family: 宋体;">选择菜单</span><span lang="EN-US">-&gt;File-&gt;Open-&gt;Project/Solution，</span><span style="font-family: 宋体;">打开</span><span lang="EN-US">build_windows</span><span style="font-family: 宋体;">目录下的</span><span lang="EN-US">Berkeley_DB.dsw</span><span style="font-family: 宋体;">文件</span><span lang="EN-US">：</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><img class="alignnone size-full wp-image-274" title="34" src="http://www.bdbchina.com/wp-content/uploads/2009/04/34.jpg" alt="34" width="561" height="453" /><br />
</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><!--[if gte vml 1]><v:shape  id="_x0000_i1028" type="#_x0000_t75" style='width:414.75pt;height:214.5pt'> <v:imagedata src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image007.png" mce_src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image007.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span style="font-family: 宋体;">打开后</span><span lang="EN-US">，</span><span style="font-family: 宋体;">会提示要求进行</span><span lang="EN-US">project</span><span style="font-family: 宋体;">文件的格式转换</span><span lang="EN-US">，</span><span style="font-family: 宋体;">选择</span><span lang="EN-US">”Yes To All”：</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><img class="alignnone size-full wp-image-257" title="41" src="http://www.bdbchina.com/wp-content/uploads/2009/04/41.jpg" alt="41" width="471" height="313" /></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><!--[if gte vml 1]><v:shape  id="_x0000_i1029" type="#_x0000_t75" style='width:385.5pt;height:221.25pt'> <v:imagedata src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image009.png" mce_src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image009.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><!--[endif]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span style="font-family: 宋体;">转换后</span><span lang="EN-US">， </span><span style="font-family: 宋体;">选择编译类型</span><span lang="EN-US">(</span><span style="font-family: 宋体;">本文是</span><span lang="EN-US">Debug x86 Win32)，</span><span style="font-family: 宋体;">鼠标右键单击</span><span lang="EN-US">build_all， </span><span style="font-family: 宋体;">选择</span><span lang="EN-US">build，</span><span style="font-family: 宋体;">就开始了编译过程</span><span lang="EN-US">：</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><img class="alignnone size-full wp-image-258" title="5" src="http://www.bdbchina.com/wp-content/uploads/2009/04/5.jpg" alt="5" width="551" height="600" /><br />
</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><!--[if !supportEmptyParas]--> <!--[endif]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US">build_all</span><span style="font-family: 宋体;">编译默认会编译</span><span lang="EN-US">Berkeley DB </span><span style="font-family: 宋体;">静态库</span><span lang="EN-US">、</span><span style="font-family: 宋体;">动态库以及一系列的工具程序和示例程序</span><span lang="EN-US">。</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span style="font-family: 宋体;">编译完成后</span><span lang="EN-US">，</span><span style="font-family: 宋体;">可以看到</span><span lang="EN-US">build_windows</span><span style="font-family: 宋体;">底下多了一个</span><span lang="EN-US">Debug</span><span style="font-family: 宋体;">目录</span><span lang="EN-US">，</span><span style="font-family: 宋体;">进入</span><span lang="EN-US">Debug</span><span style="font-family: 宋体;">目录，</span><span style="font-family: 宋体;">我们可以看到编译出来的文件</span><span lang="EN-US">：</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><!--[if gte vml 1]><v:shape  id="_x0000_i1031" type="#_x0000_t75" style='width:414.75pt;height:307.5pt'> <v:imagedata src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image013.png" mce_src="file:///C:/DOCUME~1/winter/LOCALS~1/Temp/msoclip1/05/clip_image013.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--></span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><img class="alignnone size-full wp-image-276" title="62" src="http://www.bdbchina.com/wp-content/uploads/2009/04/62.jpg" alt="62" width="582" height="478" /><br />
</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US">4 运行示例程序</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US">ex_access是Oracle Berkeley DB自带的一个示例程序， 该程序将用户输入的字符串作为关键字(key)，将字符串倒置作为数据(data)，而后将此键值对存入BerkeleyDB数据库。 当用户键入exit时，该程序将显示数据库的内容， 而后退出：</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><img class="alignnone size-full wp-image-278" title="71" src="http://www.bdbchina.com/wp-content/uploads/2009/04/71.jpg" alt="71" width="456" height="306" /><br />
</span></p>
<p class="MsoNormal" style="text-align: left;" align="left">
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US">5 总结<br />
</span></p>
<p class="MsoNormal" style="text-align: left;" align="left"><span lang="EN-US"><span> </span></span><span style="font-family: 宋体;">在</span><span lang="EN-US">Windows</span><span style="font-family: 宋体;">上</span><span style="font-family: 宋体;">用</span><span lang="EN-US">Visual C++2005</span><span style="font-family: 宋体;">编译</span><span lang="EN-US">Berkeley DB</span><span style="font-family: 宋体;">是比较容易的</span><span lang="EN-US">，</span><span style="font-family: 宋体;">读者如果出现了什么编译上的问题</span><span lang="EN-US">，</span><span style="font-family: 宋体;">可以与我交流</span><span lang="EN-US">。 </span><span style="font-family: 宋体;">在后续章节中</span><span lang="EN-US">，</span><span style="font-family: 宋体;">我还将介绍命令行的编译方法</span><span lang="EN-US">， </span><span style="font-family: 宋体;">以及使用现今流行的</span><span lang="EN-US">Code::Blocks</span><span style="font-family: 宋体;">编译</span><span lang="EN-US">Oracle Berkeley DB</span><span style="font-family: 宋体;">的方法</span><span lang="EN-US">。</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bdbchina.com/2009/04/%e4%bd%bf%e7%94%a8visual-c-2005%e7%bc%96%e8%af%91oracle-berkeley-db/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
	</channel>
</rss>
Դ