<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-983199997405710911</id><updated>2024-10-04T19:10:51.055-07:00</updated><category term="GCC"/><category term="MinGW"/><category term="wxWidgets"/><category term="Visual Studio"/><category term="MSys"/><category term="Windows/x86"/><category term="wxFormBuilder"/><category term="Inkscape"/><category term="Internet Explorer"/><category term="Linux/PowerPc"/><category term="Linux/x86"/><category term="Mac OS/PowerPC"/><category term="Mac OS/x86"/><category term="Mozilla Firefox"/><category term="ODBC"/><category term="OpenGL"/><category term="SQLite"/><category term="Visual C++ Express Edition"/><category term="Windows 2000"/><category term="charger"/><category term="configure"/><category term="make"/><category term="manual electricity generation"/><category term="personal electronic device"/><category term="plug-ins"/><category term="robotics"/><category term="soft robotics toolkit"/><category term="system crash"/><category term="system recovery"/><category term="system update"/><category term="wxAdditions"/><title type='text'>Tech Adventurer</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>9</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-6016927557451005191</id><published>2014-10-07T01:54:00.003-07:00</published><updated>2020-04-23T01:01:14.322-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="robotics"/><category scheme="http://www.blogger.com/atom/ns#" term="soft robotics toolkit"/><title type='text'>CNET&#39;s Tomorrow Daily Discussing My Ideas for Soft Robots</title><content type='html'>&lt;script type=&quot;text/javascript&quot;&gt; var gaJsHost = ((&quot;https:&quot; == document.location.protocol) ? &quot;https://ssl.&quot; : &quot;http://www.&quot;); document.write(unescape(&quot;%3Cscript src=&#39;&quot; + gaJsHost + &quot;google-analytics.com/ga.js&#39; type=&#39;text/javascript&#39;%3E%3C/script%3E&quot;)); &lt;/script&gt; &lt;script type=&quot;text/javascript&quot;&gt; try { var pageTracker = _gat._getTracker(&quot;UA-1829976-8&quot;); pageTracker._trackPageview(); } catch(err) {}&lt;/script&gt;&lt;br&gt;
&lt;span style=&quot;font-size: 130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;Last week, on CNET TV&#39;s Tomorrow Daily Show, they reported on Harvard open sourcing their soft robotics &quot;toolkit&quot;.&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;a href=&quot;http://www.seas.harvard.edu/news/2014/09/soft-robotics-toolkit-features-everything-robot-maker-needs&quot;&gt;http://www.seas.harvard.edu/news/2014/09/soft-robotics-toolkit-features-everything-robot-maker-needs&lt;/a&gt;&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;However, the show&#39;s hosts were having trouble coming up with applications for this new technology. &amp;nbsp;So I wrote them the following letter:&lt;/span&gt;&lt;/span&gt;&lt;br&gt;
&lt;span style=&quot;font-size: 130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;br&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Courier New, Courier, monospace;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;Hello,&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;Since you guys were having trouble coming up with applications of soft&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;robots, I started thinking and came up with this list so far:&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;1) Soft Robot Mattress that adjusts itself as you roll from laying on&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;your back to on your side or to on your stomach, and dumps you out of&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;bed when the alarm goes off.&amp;nbsp; For bedridden patient, rolls him/her&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;when timer goes off so that the patient doesn&#39;t get bed sore.&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;2) Soft Robot easy chair cushions for helping elderly get out of the chair.&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;3) Boyfriend pillow soft robot to cuddle you.&amp;nbsp; :-)&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;4) Soft robot stuffed animals for kids.&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;5) Soft robot gurney that would automatically adjust itself based on&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;the location of the patient&#39;s injury and require extra support.&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;br style=&quot;background-color: white; color: #222222;&quot;&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;6) Soft robot flotation device that automatically deploys (bounce&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #222222;&quot;&gt;towards a drowning victim) and stows itself when rescue is complete.&lt;/span&gt;&lt;/span&gt;&lt;br&gt;
&lt;span style=&quot;font-size: 130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;br&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-size: 130%;&quot;&gt;Yesterday, they discussed the ideas I sent them on their show (19:17 into the show) :&lt;/span&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=x54NmZOoNJs&amp;amp;t=19m15s&quot;&gt;http://www.youtube.com/watch?v=x54NmZOoNJs&amp;amp;t=19m15s&lt;/a&gt;&lt;br&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;Cool Beans!&lt;/span&gt;&lt;br&gt;&lt;br&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/6016927557451005191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/6016927557451005191' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/6016927557451005191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/6016927557451005191'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2014/10/cnets-tomorrow-daily-discussing-my.html' title='CNET&#39;s Tomorrow Daily Discussing My Ideas for Soft Robots'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-7599325410143312850</id><published>2009-09-17T22:12:00.000-07:00</published><updated>2014-10-07T01:49:32.597-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="plug-ins"/><category scheme="http://www.blogger.com/atom/ns#" term="wxAdditions"/><category scheme="http://www.blogger.com/atom/ns#" term="wxFormBuilder"/><category scheme="http://www.blogger.com/atom/ns#" term="wxWidgets"/><title type='text'>New Software Development Process, Part 6 - Installing wxFormBuilder, a Form Designing Tool for wxWidgets</title><content type='html'>&lt;script type=&quot;text/javascript&quot;&gt; var gaJsHost = ((&quot;https:&quot; == document.location.protocol) ? &quot;https://ssl.&quot; : &quot;http://www.&quot;); document.write(unescape(&quot;%3Cscript src=&#39;&quot; + gaJsHost + &quot;google-analytics.com/ga.js&#39; type=&#39;text/javascript&#39;%3E%3C/script%3E&quot;)); &lt;/script&gt; &lt;script type=&quot;text/javascript&quot;&gt; try { var pageTracker = _gat._getTracker(&quot;UA-1829976-8&quot;); pageTracker._trackPageview(); } catch(err) {}&lt;/script&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: 130%;&quot;&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;Next, I installed the latest version of wxFormBuilder (3.0.57) with the plug-ins for the latest supported controls (wxAdditions).  These steps are the ones that I took to install it.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;I created the sub-folder&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;C:\SWDevTools\wxFormBuilder&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;Then, I created the sub-folder&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;C:\SWDevTools\wxFormBuilder\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;I downloaded wxFormBuilder_v3.0.57.exe from&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;a href=&quot;http://wxformbuilder.org/?page_id=27&quot;&gt;http://wxformbuilder.org/?page_id=27&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;to&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;C:\SWDevTools\wxFormBuilder\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;I downloaded wxAdditions_Plugin_v2.8.7.02-win32.zip from&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;a href=&quot;http://wxformbuilder.org/?page_id=30&quot;&gt;http://wxformbuilder.org/?page_id=30&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;to&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;C:\SWDevTools\wxFormBuilder\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;Installing wxFormBuilder application is pretty straight forward, I just execute wxFormBuilder_v3.0.57.exe&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;(I didn&#39;t install the source code.)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;Installing the wxAdditions plug-ins, requires that you have software to unzip the file wxAdditions_Plugin_v2.8.7.02-win32.zip&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;I used jZip, which is a free WinZip alternative.  If you don&#39;t already have software to unzip files, you can get jZip from&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;a href=&quot;http://www.jzip.com/&quot;&gt;http://www.jzip.com/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;I opened wxAdditions_Plugin_v2.8.7.02-win32.zip using jZip.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;I dragged the wxAdditions folder from the jZip dialog to&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;C:\SWDevTools\wxFormBuilder\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;Then, I exited from the jZip application.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;I opened the &quot;wxAdditions&quot; folder that I dragged from the jZip dialog.&lt;br /&gt;&lt;br /&gt;I selected every file in&lt;br /&gt;C:\SWDevTools\wxFormBuilder\download\wxAdditions&lt;br /&gt;&lt;br /&gt;I cut everything that I selected and paste them in&lt;br /&gt;C:\SWDevTools\wxFormBuilder\plugins\wxAdditions&lt;/span&gt;&lt;span style=&quot;font-family: times new roman;&quot;&gt;&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/7599325410143312850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/7599325410143312850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/7599325410143312850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/7599325410143312850'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2009/09/new-software-development-process-part-6.html' title='New Software Development Process, Part 6 - Installing wxFormBuilder, a Form Designing Tool for wxWidgets'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-4669531080201114531</id><published>2009-09-16T23:17:00.000-07:00</published><updated>2009-10-07T10:09:27.150-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GCC"/><category scheme="http://www.blogger.com/atom/ns#" term="MinGW"/><category scheme="http://www.blogger.com/atom/ns#" term="Visual Studio"/><category scheme="http://www.blogger.com/atom/ns#" term="wxWidgets"/><title type='text'>New Software Development Process, Part 5 - Verifying the Installation of wxWidgets</title><content type='html'>&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To test the installation of wxWidgets, I built the &quot;Hello World&quot; program, from wxWidgets web site, using the Visual Studio 2005 and the MinGW C++ compiler.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I created the subfolder&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets\test&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I point my web browser to the URL&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.wxwidgets.org/docs/tutorials/hworld.txt&quot;&gt;http://www.wxwidgets.org/docs/tutorials/hworld.txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I copied the source code from this web page and paste it to&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets\test\hworld.cpp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I executed Visual Studio 2005 and created a new project.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;In the &quot;New Project&quot; dialog, I specified the project to be a Win32 project.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I specified the &quot;Name&quot; of the project to be&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;test&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I specified the &quot;Location&quot; to be&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I unchecked the &quot;Create directory for solution&quot; option.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Then, I clicked the &quot;Ok&quot; button.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;When the W32 Application Wizard&quot; dialog appeared, I clicked the &quot;Next &gt;&quot; button.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For Application Settings&quot;, I specified the &quot;Application type&quot; to be&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Windows application&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I specified for the &quot;Additional options&quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Empty project&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Then, I clicked the &quot;Finish&quot; button.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I clicked the &quot;Project&quot; menu item, from Visual Studio&#39;s top menu bar, to obtain its drop down menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;From the &quot;Project&quot; drop down menu, I clicked the &quot;Add Existing Item...&quot; menu item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;When the &quot;Add Existing Item&quot; dialog for specifying the item to be added popped up, I selected&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets\test\hworld.cpp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I clicked the &quot;Project&quot; menu item, from Visual Studio&#39;s top menu bar, to obtain its drop down menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;From the &quot;Project&quot; drop down menu, I clicked the &quot;test Properties...&quot; menu item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I selected the &quot;Configuration Properties&quot; &quot;General&quot; tree item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For the both the &quot;Debug&quot; and &quot;Release&quot; configurations&#39; &quot;Character Set&quot;, I specified&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&quot;Not Set&quot;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I selected the &quot;Configuration Properties&quot; &quot;C/C++&quot; &quot;General&quot; tree item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For the &quot;Debug&quot; configuration&#39;s &quot;Additional Include Directories&quot; I specified&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;$(SolutionDir),$(WXWIN)\include,$(WXWIN)\contrib\include,$(WXWIN)\lib\vc_lib\mswd&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For the &quot;Release&quot; configuration&#39;s &quot;Additional Include Directories&quot; I specified&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;$(SolutionDir),$(WXWIN)\include,$(WXWIN)\contrib\include,$(WXWIN)\lib\vc_lib\msw&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I selected the &quot;Configuration Properties&quot; &quot;C/C++&quot; &quot;Preprocessor&quot; tree item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For the &quot;Debug&quot; configuration&#39;s &quot;Preprocessor Definitions&quot; I specified&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;WIN32;_DEBUG;_WINDOWS;__WINDOWS__;__WXMSW__;__WXDEBUG__;WXDEBUG=1;__WIN95__;__WIN32__;WINVER=0x0400;STRICT&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For the &quot;Release&quot; configuration&#39;s &quot;Preprocessor Definitions&quot; I specified&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;WIN32;NDEBUG;_WINDOWS;__WINDOWS__;__WXMSW__;__WIN95__;__WIN32__;WINVER=0x0400;STRICT&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I selected the &quot;Configuration Properties&quot; &quot;Linker&quot; &quot;General&quot; tree item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For both the &quot;Debug&quot; and &quot;Release&quot; configurations&#39; &quot;Additional Library Directories&quot; I specified&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;$(WXWIN)\lib\vc_lib&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I selected the &quot;Configuration Properties&quot; &quot;Linker&quot; &quot;Input&quot; tree item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For the &quot;Debug&quot; configuration&#39;s &quot;Additional Dependencies&quot; I specified&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;comctl32.lib rpcrt4.lib wxmsw28d_core.lib wxbase28d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For the &quot;Release&quot; configuration&#39;s &quot;Additional Dependencies&quot; I specified&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;comctl32.lib rpcrt4.lib wxmsw28_core.lib wxbase28.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;At this point, I clicked the &quot;OK&quot; button on the &quot;Property Pages&quot; dialog.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Next, I clicked the &quot;File&quot; menu item, from Visual Studio&#39;s top menu bar, to obtain its drop down menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;From the &quot;File&quot; drop down menu, I clicked the &quot;Save All&quot; menu item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To generate the debug (default) build of the application, I clicked the &quot;Build&quot; menu item, from Visual Studio&#39;s top menu bar, to obtain its drop down menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;From the &quot;Build&quot; drop down menu, I clicked the &quot;Build Solution&quot; menu item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To generate the release build of the application, I clicked the &quot;Build&quot; menu item, from Visual Studio&#39;s top menu bar, to obtain its drop down menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;From the &quot;Build&quot; drop down menu, I clicked the &quot;Build Configuration Manager...&quot; menu item and specify the &quot;Active Solution Configuration&quot; to be &quot;Release&quot; and close the dialog.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Then, I clicked the &quot;Build&quot; menu item, from Visual Studio&#39;s top menu bar, to obtain its drop down menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;From the &quot;Build&quot; drop down menu, I clicked the &quot;Build Solution&quot; menu item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I found, in both the folders&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets\test\Debug&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;and&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets\test\Release&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;the file test.exe&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I ran both the test.exe in the &quot;Debug&quot; and in the &quot;Release&quot; folders to verify that the &quot;Hello World&quot; applications work.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Yeah! Both work.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I use the following command to build the executable using GCC MinGW. (all on one line)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;g++ -Wall -mwindows hworld.cpp -I%WXWIN%\include -I%WXWIN%\contrib\include -I%WXWIN%\lib\gcc_lib\msw %WXWIN%\lib\gcc_lib\libwxmsw28_core.a %WXWIN%\lib\gcc_lib\libwxbase28.a %WXWIN%\lib\gcc_lib\libwxtiff.a %WXWIN%\lib\gcc_lib\libwxjpeg.a %WXWIN%\lib\gcc_lib\libwxpng.a %WXWIN%\lib\gcc_lib\libwxzlib.a %WXWIN%\lib\gcc_lib\libwxregex.a %WXWIN%\lib\gcc_lib\libwxexpat.a %WXWIN%\lib\gcc_lib\libwxexpat.a %MINGW%\lib\libkernel32.a %MINGW%\lib\libuser32.a %MINGW%\lib\libgdi32.a %MINGW%\lib\libwinspool.a %MINGW%\lib\libcomdlg32.a %MINGW%\lib\libadvapi32.a %MINGW%\lib\libshell32.a %MINGW%\lib\libole32.a %MINGW%\lib\liboleaut32.a %MINGW%\lib\libuuid.a %MINGW%\lib\libcomctl32.a -otest.exe 2&gt;test.lis&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I ran the test.exe in&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets\test&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;to verify that the &quot;Hello World&quot; applications work.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Yeah! It works.&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/4669531080201114531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/4669531080201114531' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/4669531080201114531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/4669531080201114531'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2009/09/new-software-development-process-part-5.html' title='New Software Development Process, Part 5 - Verifying the Installation of wxWidgets'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-6157093803998757185</id><published>2009-09-16T01:31:00.000-07:00</published><updated>2009-10-06T21:19:19.839-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="configure"/><category scheme="http://www.blogger.com/atom/ns#" term="GCC"/><category scheme="http://www.blogger.com/atom/ns#" term="make"/><category scheme="http://www.blogger.com/atom/ns#" term="MinGW"/><category scheme="http://www.blogger.com/atom/ns#" term="Visual Studio"/><category scheme="http://www.blogger.com/atom/ns#" term="wxWidgets"/><title type='text'>New Software Development Process, Part 4 - Installing wxWidgets, the Cross-Platform Application Frameworks</title><content type='html'>&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Instead of installing the current stable release of wxWidgets, version 2.8.10, I took a risk and installed the latest development snapshot release, version 2.9.0.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;In version 2.9.0, the distinction between ANSI and Unicode builds were removed. Our legacy applications were written with strings using the ANSI/ASCII character set. This new feature, in version 2.9.0, would help us quickly transition our legacy application to Unicode.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Also, version 2.9.0 supports both the 32-bit and 32-bit/64-bit version of Cocoa in Mac OS X.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;These two new feature in version 2.9.0 are so critical for us that I was willing to take the risk and not wait (until next year) for the next stable version, with these features, (version 3.0.0) to be released.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;While the wxWidgets 2.9.0 build for Visual Studio/Visual C++ was successful, I was not able to build wxWidgets 2.9.0 for GCC MinGW. I was not able to get pass the configure step. In wxWidgets 2.9.0, they eliminated the &quot;contrib&quot; subdirectory but the script for building the WxWidgets library did not reflect the change.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I resorted to installing the current stable release, wxWidgets 2.8.10. These steps are the ones that I took to installed it.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I created the sub-folder&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Then, I created the sub-folder&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets\download&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;Using my web browser (Mozilla Firefox), I went to:&lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&lt;a href=&quot;http://www.wxwidgets.org/downloads/&quot;&gt;http://www.wxwidgets.org/downloads/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;and clicked on the link to the &quot;Current Stable Release: 2.8.10&quot;.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;Using the link to &quot;wxMSW - installer for Windows, with manual (other formats: zip)&quot;, &lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;I downloaded the file &quot;wxMSW-2.8.10-Setup.exe&quot; &lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;to C:\SWDevTools\wxWidgets\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I scanned the file &quot;wxMSW-2.8.10-Setup.exe&quot; for viruses and then executed it.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Specify that wxWidgits be installed in&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;After executing wxMSW-2.8.10-Setup.exe, I set the environment variable&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;WXWIN&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;to&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\wxWidgets&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To switch on wxGLCanvas support on Windows, I edited the setup.h files and set wxUSE_GLCANVAS to 1, before building wxWidgets.&lt;br /&gt;&lt;br /&gt;I edited the following files: &lt;br /&gt;C:\SWDevTools\wxWidgets\setup.h.in&lt;br /&gt;C:\SWDevTools\wxWidgets\include\wx\setup_inc.h&lt;br /&gt;C:\SWDevTools\wxWidgets\include\wx\msw\setup.h&lt;br /&gt;C:\SWDevTools\wxWidgets\include\wx\msw\setup0.h&lt;br /&gt;C:\SWDevTools\wxWidgets\include\wx\msw\wince\setup.h&lt;br /&gt;C:\SWDevTools\wxWidgets\include\wx\msw\setup_microwin.h&lt;br /&gt;&lt;br /&gt;Note: Make sure to look for all instances of&lt;br /&gt;&quot;#define wxUSE_GLCANVAS&quot;&lt;br /&gt;in each file.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To build wxWidgets for Visual Studio 2005, I opened the Visual Studio/Visual C++ 6.0 workspace file wx.dsw using Visual Studio 2005 and allowed it to convert the project files from Visual Studio/Visual C++ 6.0 format to the Visual Studio/Visual C++ 2005 format.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I selected the &quot;Build&quot; menu item from the Visual Studio menu bar to activate its drop down menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;From the drop down menu, I selected the &quot;Batch Build...&quot; menu item.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;When the &quot;Batch Build&quot; dialog appeared, I selected all the projects that are not DLL projects and are not &quot;Universal&quot; projects.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Then, I clicked the &quot;Build&quot; button.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Since this process will take a long time, I took a lunch break while Visual Studio is building wxWidgets.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: In the past, I&#39;ve deployed applications with DLLs and maintaining client&#39;s software by updating DLLs. However, more often than not, I&#39;ve ended up updating almost all the files. Also, these days, everyone has ridiculously huge amount of mass storage space so the amount of disk space saved by the use of DLLs is not really an issue. My cost benefit analysis of the use of DLLs led me to believe that they are more trouble than they are worth. If you disagree, select the DLL projects for the batch build.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: The &quot;Universal&quot; projects are for when the application GUI will look identical on all platforms. i.e., the GUI does not conform the default style of the operating system GUI &quot;look&quot;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: Theoretically, I do not need to generate the &quot;release&quot; build of wxWidgets for Visual Studio 2005 since we will be using Visual Studio 2005 only for debugging. We will be using the GCC tools for producing our final products across all the target platforms. However, I&#39;ve been in software development long enough to know that there will be a time in which we need to deploy a product before we can figure out why the source code can be compiled by Visual Studio 2005 and not be compiled by the GCC compiler. In such a case, we&#39;ll deploy the Windows version of the application generated by Visual Studio 2005 and deploy the versions for other platforms when we figure out how to compile the source code with the GCC compiler. So, I generated the &quot;release&quot; builds of wxWidgets for Visual Studio 2005.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To build wxWidgets for GCC MinGW, I executed MSYS from the MS Windows &quot;Start&quot; menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Start -&gt; MinGW -&gt; MSYS -&gt; MSYS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;When MSys&#39; text terminal window opened, I performed the builds using line commands.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For creating the release/ansi build, I used the following command.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /C/SWDevTools/wxWidgets/build&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;../configure --build=x86-winnt-mingw32 --with-msw --enable-release --enable-ansi --disable-precomp-headers --disable-shared --disable-monolithic -–disable-threads --disable-sockets --with-openGl&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /C/SWDevTools/wxWidgets/build/msw&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;mingw32-make -f makefile.gcc MONOLITHIC=0 SHARED=0 UNICODE=0 USE_OPENGL=1 BUILD=release&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Since &quot;configure&quot; and &quot;make&quot; take a very long time; I found other things to do while each ran.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: I built wxWidgets for GCC MinGW without the threads feature; it relies on mingwm10.dll and I don&#39;t want to add unnecessary burden to the deployment of our applications. We will employ threading using macros and inline functions defined in the set of c++ header (.h) files that compose the abstraction layer for making operating system calls.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: I built wxWidgets for GCC MinGW without the sockets feature; the wxWidgets classes for socket communication is too restrictive for the type of network communication uses in our applications. We will perform socket functions using macros and inline functions defined in the set of c++ header (.h) files that compose the abstraction layer for making operating system calls.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For creating the release/unicode build, I used the following command.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /C/SWDevTools/wxWidgets/build&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;../configure --build=x86-winnt-mingw32 --with-msw --enable-release --enable-unicode --disable-precomp-headers --disable-shared --disable-monolithic -–disable-threads --disable-sockets --with-openGl&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /C/SWDevTools/wxWidgets/build/msw&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;mingw32-make -f makefile.gcc MONOLITHIC=0 SHARED=0 UNICODE=1 USE_OPENGL=1 BUILD=release&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Since &quot;configure&quot; and &quot;make&quot; take a very long time; I found other things to do while each ran.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For creating the debug/ansi build, I used the following command.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /C/SWDevTools/wxWidgets/build&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;../configure --build=x86-winnt-mingw32 --with-msw --enable-debug --enable-ansi --disable-precomp-headers --disable-shared --disable-monolithic -–disable-threads --disable-sockets --with-openGl&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /C/SWDevTools/wxWidgets/build/msw&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;mingw32-make -f makefile.gcc MONOLITHIC=0 SHARED=0 UNICODE=0 USE_OPENGL=1 BUILD=debug&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Since &quot;configure&quot; and &quot;make&quot; take a very long time; I found other things to do while each ran.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For creating the debug/unicode build, I used the following command.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /C/SWDevTools/wxWidgets/build&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;../configure --build=x86-winnt-mingw32 --with-msw --enable-debug --enable-unicode --disable-precomp-headers --disable-shared --disable-monolithic -–disable-threads --disable-sockets --with-openGl&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /C/SWDevTools/wxWidgets/build/msw&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;mingw32-make -f makefile.gcc MONOLITHIC=0 SHARED=0 UNICODE=1 USE_OPENGL=1 BUILD=debug&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Since &quot;configure&quot; and &quot;make&quot; take a very long time; I found other things to do while each ran.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: Theoretically, I do not need to generate the &quot;debug&quot; build of wxWidgets for GCC MinGW since we will be using GCC MinGW only for producing our final products. We will be using the Visual Studio 2005 for debugging. However, I&#39;ve been in software development long enough to know that there will be a time in which we need to figure out why we are able to compile the source code using Visual Studio 2005 but not with GCC MinGW or why an executable generated by GCC MinGW does not perform the same as the executable generated by Visual Studio 2005 from the identical source code. So, I generated the &quot;debug&quot; builds of wxWidgets for &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;GCC MinGW&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/6157093803998757185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/6157093803998757185' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/6157093803998757185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/6157093803998757185'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2009/09/installing-wxwidgets-cross-platform.html' title='New Software Development Process, Part 4 - Installing wxWidgets, the Cross-Platform Application Frameworks'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-8655741469584492976</id><published>2009-09-13T21:49:00.001-07:00</published><updated>2009-10-06T14:08:48.512-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GCC"/><category scheme="http://www.blogger.com/atom/ns#" term="MSys"/><title type='text'>New Software Development Process, Part 3 - Installing the GCC Minimal System Utilities</title><content type='html'>&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;These steps are the ones I took to install the GCC MSys utilities on our Windows/x86 platform.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: I downloaded the MSys installer while I was installing the GCC compiler tools. (See previous blog entry. &lt;a href=&quot;http://techadventurer.blogspot.com/2009/09/installing-compiler-tools-for-new.html&quot;&gt;http://techadventurer.blogspot.com/2009/09/installing-compiler-tools-for-new.html&lt;/a&gt;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;First, I went to the following directory&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\MinGW\bin&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;and rename&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;mingw32-make.exe&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;to&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;make.exe&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: The post install batch command file will rename it back to the original name.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I scanned the file &quot;MSYS-1.0.11.exe&quot; for viruses and then executed it.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Specify the following &quot;Destination Directory&quot;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\MSys&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;and the following &quot;Start Menu Folder&quot;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;MinGW&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I continued with the post install.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;When it asked for the path where MinGW is installed, I specified the following&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;c:/SWDevTools/MinGW&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;NOTE: I used forward slash (under the &#39;?&#39;).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To test the GCC Minimal System Utilities, I executed MSys from the &quot;Start&quot; menu.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Start -&gt; MinGW -&gt; MSYS -&gt; MSYS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Its text terminal interface appeared.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;At the line command prompt I typed the following commands:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cd /c/SWDevTools/MinGW&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;ls&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;cat installed.ini&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;The &quot;ls&quot; command yielded contents of the directory&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;c:\SWDevTools/MinGW&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;The &quot;cat installed.ini&quot; command yielded the contents of the file&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;installed.ini&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;MSys was installed successfully.&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/8655741469584492976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/8655741469584492976' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/8655741469584492976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/8655741469584492976'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2009/09/installing-gcc-minimal-system-utilities.html' title='New Software Development Process, Part 3 - Installing the GCC Minimal System Utilities'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-4367715779558593133</id><published>2009-09-13T00:58:00.000-07:00</published><updated>2009-10-07T10:22:56.807-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GCC"/><category scheme="http://www.blogger.com/atom/ns#" term="MinGW"/><category scheme="http://www.blogger.com/atom/ns#" term="MSys"/><category scheme="http://www.blogger.com/atom/ns#" term="Visual C++ Express Edition"/><category scheme="http://www.blogger.com/atom/ns#" term="Windows/x86"/><title type='text'>New Software Development Process, Part 2 - Installing the Compiler Tools</title><content type='html'>&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;In my next set of blog entries, I will describe the steps I took to install the tools for the new software development process. The first set of tools that I installed are my compiler tools.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I already have Microsoft Visual Studio 2005. For those of you who want to employ the same software development process and don&#39;t have Microsoft Visual Studio 2005, you can download a free copy of Microsoft Visual C++ 2008 Express Edition at:&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&lt;a href=&quot;http://www.microsoft.com/express/vc/&quot;&gt;http://www.microsoft.com/express/vc/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;These steps are the ones I took to install the GCC MinGW compiler tools on our Windows/x86 platform. Be aware that I chose to use the 2-step installation process:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;1) download the software&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;2) install the software&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;In the most common installation process, downloading and installing the software is done in one (1) step.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I chose to the 2-step process because I was installing the software on more than one machine. The 2-step process allows me to download the software once for all the machines instead of once for each machine.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;First, I created the top-level folder&lt;br /&gt;C:\SWDevTools&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Then, I created the second-level folder&lt;br /&gt;C:\SWDevTools\MinGW&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I created the sub-folder&lt;br /&gt;C:\SWDevTools\MinGW\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I created the second-level folder&lt;br /&gt;C:\SWDevTools\MSys&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I created the sub-folder&lt;br /&gt;C:\SWDevTools\MSys\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Using my web browser (Mozilla Firefox), I went to&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&lt;a href=&quot;http://sourceforge.net/projects/mingw/files/&quot;&gt;http://sourceforge.net/projects/mingw/files/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I scrolled down to the item called &quot;Automated MinGW Installer&quot; which has the sub-item &quot;MinGW 5.1.6&quot;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I clicked the sub-item &quot;MinGW 5.1.6&quot; to reveal the sub-items &quot;MinGW-5.1.6.exe&quot;&lt;/span&gt; and &quot;MinGW-5.1.6.exe-src.tar.lzma&quot;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I downloaded MinGW-5.1.6.exe (installer app) to&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\MinGW\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I went back to&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&lt;a href=&quot;http://sourceforge.net/projects/mingw/files/&quot;&gt;http://sourceforge.net/projects/mingw/files/&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I scrolled farther down to the item called &quot;MSYS Base System&quot; and clicked on it to reveal the several sub-items. I clicked on the sub-item &quot;Current Release_MSYS-1.0.11&quot; to reveal several sub-items.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I downloaded MSYS-1.0.11.exe to&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\MSys\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I scanned the file &quot;MinGW-5.1.6.exe&quot; for viruses and then executed it.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Select &quot;Download only&quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Select &quot;Current&quot; MinGW package&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Select the following components to download:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;MinGW base tools&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;g++ compiler&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Java Compiler&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Objective C Compiler&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;MinGW Make&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I scanned the downloaded files for viruses and then copied them to each PC, that I want to install the development environment, using the same directory structure&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\MinGW\download&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;On each PC, I execute MinGW-5.1.6.exe, again.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Select &quot;Download and install&quot;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Select &quot;Current&quot; MinGW package&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Select the following components to download:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;MinGW base tools&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;g++ compiler&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Java Compiler&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Objective C Compiler&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;MinGW Make&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Specify the following &quot;Destination Folder&quot;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\MinGW&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;After installing MinGW, I set the environment variable&lt;br /&gt;&lt;br /&gt;MINGW&lt;br /&gt;&lt;br /&gt;to&lt;br /&gt;&lt;br /&gt;C:\SWDevTools\MinGW&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Then, I added, to the environment variable, &quot;path&quot;, the following:&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;C:\SWDevTools\MinGW\bin&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To test the installation of MinGW, I built the following &quot;Hello World&quot; program using the MinGW C++ compiler.&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;#include &lt;stdio.h&gt;&lt;br /&gt;int main ( int argc , char* argv [] ) {&lt;br /&gt; int inputkey ;&lt;br /&gt; printf ( &quot;Hello World!\n\n&quot; ) ;&lt;br /&gt; printf ( &quot;&lt;press&gt;&quot; ) ;&lt;br /&gt; inputkey = getchar () ;&lt;br /&gt; return 0 ;&lt;br /&gt;} ;&lt;br /&gt;&lt;/press&gt;&lt;/STDIO.H&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I use the following commands to create the source file.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;mkdir C:\SWDevTools\MinGW\test&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;notepad C:\SWDevTools\MinGW\test\HelloWorld.cpp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I use the following command to build the executable. (all on one line)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;g++ C:\SWDevTools\MinGW\test\HelloWorld.cpp -oC:\SWDevTools\MinGW\test\HelloWorld.exe&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Double clicking on HelloWorld.exe results in the following output:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Hello World!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;&lt;press&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;MinGW was installed successfully.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/4367715779558593133/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/4367715779558593133' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/4367715779558593133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/4367715779558593133'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2009/09/installing-compiler-tools-for-new.html' title='New Software Development Process, Part 2 - Installing the Compiler Tools'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-6422887391390855424</id><published>2009-09-13T00:30:00.000-07:00</published><updated>2012-02-12T01:50:42.589-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GCC"/><category scheme="http://www.blogger.com/atom/ns#" term="Inkscape"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux/PowerPc"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux/x86"/><category scheme="http://www.blogger.com/atom/ns#" term="Mac OS/PowerPC"/><category scheme="http://www.blogger.com/atom/ns#" term="Mac OS/x86"/><category scheme="http://www.blogger.com/atom/ns#" term="MinGW"/><category scheme="http://www.blogger.com/atom/ns#" term="ODBC"/><category scheme="http://www.blogger.com/atom/ns#" term="OpenGL"/><category scheme="http://www.blogger.com/atom/ns#" term="SQLite"/><category scheme="http://www.blogger.com/atom/ns#" term="Visual Studio"/><category scheme="http://www.blogger.com/atom/ns#" term="Windows/x86"/><category scheme="http://www.blogger.com/atom/ns#" term="wxFormBuilder"/><category scheme="http://www.blogger.com/atom/ns#" term="wxWidgets"/><title type='text'>New Software Development Process, Part 1 - Introduction, What, and Why</title><content type='html'>&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--&lt;br /&gt;google_ad_client = &quot;ca-pub-1761469438560045&quot;;&lt;br /&gt;/* techadventure */&lt;br /&gt;google_ad_slot = &quot;3475425897&quot;;&lt;br /&gt;google_ad_width = 728;&lt;br /&gt;google_ad_height = 90;&lt;br /&gt;//--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&lt;br /&gt;src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;&lt;br /&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt; var gaJsHost = ((&quot;https:&quot; == document.location.protocol) ? &quot;https://ssl.&quot; : &quot;http://www.&quot;); document.write(unescape(&quot;%3Cscript src=&#39;&quot; + gaJsHost + &quot;google-analytics.com/ga.js&#39; type=&#39;text/javascript&#39;%3E%3C/script%3E&quot;)); &lt;/script&gt; &lt;script type=&quot;text/javascript&quot;&gt; try { var pageTracker = _gat._getTracker(&quot;UA-1829976-8&quot;); pageTracker._trackPageview(); } catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Today, we start developing software using a new development process.  In the past, we&#39;ve maintained, for each application, multiple code bases, one for each target platform.  With the new development process, we will maintain, for each application, only one code base, one for all target platforms.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;To do so, we will use one set of cross-platform open source software development tools.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For diagramming our application architecture and data structure, we will use Inkscape.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;We will use one common set of compiling/linking tools on all our platforms.  We will use the tools in the GNU Compiler Collection (GCC).  On the Windows/x86 platform, we will use the MinGW version of the GCC tools.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;All operating system calls will be made through an abstraction layer composed of a set of c++ header (.h) files that define macros and inline functions with common names across all platforms.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;We will also abandon the use of native application frameworks like Microsoft Foundation Class (MFC) and Apple&#39;s Cocoa for Mac OS X.  Instead, we will use wxWidgets, the cross-platform application framework.  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;We will use wxFormBuilder to design the graphic user interface (GUI) for our applications.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For rendering graphics, we will abandon use of native graphics APIs like Microsoft DirectX and, instead, use OpenGL, the cross-platform graphics engine.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For accessing data in client/server relational database management systems (RDBMSs), we will use the Open Database Connectivity (ODBC) API.  If the customer does not specify a particular RDBMS, we will use MySql.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;For simple local databases, we will use SQLite.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;There is one exception to the use of open source cross-platform tools.  Because all of us are already familiar with Microsoft Visual Studio 2005, we will use it to write and debug our applications on the Windows/x86 platform.  Once the debugging is complete, we will build the final product using the GCC compilers on the target platforms (including the Windows/x86 platform).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Here is our software development process:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;1) On the Windows/x86 platform, create a project folder for the new application.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;2) Create a sub-folder named &quot;Design&quot; for containing the design documents.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;3) Design and diagram the application&#39;s architecture and data structure using Inkscape and save the diagrams in the &quot;Design&quot; subfolder.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;4) Create a sub-folder named &quot;Forms&quot; for containing the design for the application&#39;s GUI.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;5) Design the application&#39;s GUI using wxFormBuilder and save the output in the &quot;Forms&quot; sub-folder.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;6) Use wxFormBuilder to generate C++ source code for application&#39;s interface with wxWidgets and save them into the &quot;Forms&quot; sub-folder.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;7) Copy the wxFormBuilder generated the source code to the top-level project folder.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;8) Create the Microsoft Visual Studio project files for the new application in the top-level project folder and set up the newly created project for building a wxWidgets application.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;9) Add the WxFormBuilder generated the source code to the newly created Microsoft Visual Studio project.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;10) Edit/Build/Debug the code for the new application.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;11) When the Microsoft Visual Studio generated executable code works, build the application using the GCC MinGW compiler.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;12) When the GCC MinGW generated executable code works on the Windows platform, build the application using the GCC compiler on the target platforms.&lt;br /&gt;&lt;br /&gt;We will build applications for the following platforms:&lt;br /&gt;&lt;br /&gt;Windows/x86&lt;br /&gt;Linux/x86&lt;br /&gt;Linux/PowerPC&lt;br /&gt;MacOS/x86&lt;br /&gt;MacOS/PowerPC&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/6422887391390855424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/6422887391390855424' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/6422887391390855424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/6422887391390855424'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2009/09/new-software-development-process.html' title='New Software Development Process, Part 1 - Introduction, What, and Why'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-7457790150820994653</id><published>2009-09-12T15:39:00.000-07:00</published><updated>2012-02-12T01:50:24.895-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="charger"/><category scheme="http://www.blogger.com/atom/ns#" term="manual electricity generation"/><category scheme="http://www.blogger.com/atom/ns#" term="personal electronic device"/><title type='text'>Crazy Tech Idea: Personal Electronic Device Charging Pants / Shoes</title><content type='html'>&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--&lt;br /&gt;google_ad_client = &quot;ca-pub-1761469438560045&quot;;&lt;br /&gt;/* techadventure */&lt;br /&gt;google_ad_slot = &quot;3475425897&quot;;&lt;br /&gt;google_ad_width = 728;&lt;br /&gt;google_ad_height = 90;&lt;br /&gt;//--&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&lt;br /&gt;src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt; var gaJsHost = ((&quot;https:&quot; == document.location.protocol) ? &quot;https://ssl.&quot; : &quot;http://www.&quot;); document.write(unescape(&quot;%3Cscript src=&#39;&quot; + gaJsHost + &quot;google-analytics.com/ga.js&#39; type=&#39;text/javascript&#39;%3E%3C/script%3E&quot;)); &lt;/script&gt; &lt;script type=&quot;text/javascript&quot;&gt; try { var pageTracker = _gat._getTracker(&quot;UA-1829976-8&quot;); pageTracker._trackPageview(); } catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;We waste a lot of kinetic energy when we walk from place to place throughout the day.  Some of that kinetic energy can be harnessed and used to charge personal electronic devices such as mobile phones, personal game consoles, music players, etc..&lt;br /&gt;&lt;br /&gt;The motion of the legs and feet can be used to move a conductor across a magnetic field to generate electricity.  The generated electricity can be stored in batteries.  The batteries are connected to inductors in the pockets of the pants.&lt;br /&gt;&lt;br /&gt;The personal electronic devices, that have inductors connected to their power supply, can receive the energy, transmitted by the inductors in the pants pocket, and charge their battery with the received energy, when one of these personal devices is placed in the charging pocket of the pants.&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/7457790150820994653/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/7457790150820994653' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/7457790150820994653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/7457790150820994653'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2009/09/crazy-tech-idea-personal-electronic.html' title='Crazy Tech Idea: Personal Electronic Device Charging Pants / Shoes'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-983199997405710911.post-4164126644394939166</id><published>2009-08-07T02:53:00.000-07:00</published><updated>2012-02-12T01:48:05.519-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Internet Explorer"/><category scheme="http://www.blogger.com/atom/ns#" term="Mozilla Firefox"/><category scheme="http://www.blogger.com/atom/ns#" term="system crash"/><category scheme="http://www.blogger.com/atom/ns#" term="system recovery"/><category scheme="http://www.blogger.com/atom/ns#" term="system update"/><category scheme="http://www.blogger.com/atom/ns#" term="Windows 2000"/><title type='text'>Recovering from the crash of my Windows 2000 PC&#39;s Hard Disk</title><content type='html'>&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--&lt;br /&gt;google_ad_client = &quot;ca-pub-1761469438560045&quot;;&lt;br /&gt;/* techadventure */&lt;br /&gt;google_ad_slot = &quot;3475425897&quot;;&lt;br /&gt;google_ad_width = 728;&lt;br /&gt;google_ad_height = 90;&lt;br /&gt;//--&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&lt;br /&gt;src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;&lt;/script&gt;&lt;script type=&quot;text/javascript&quot;&gt; var gaJsHost = ((&quot;https:&quot; == document.location.protocol) ? &quot;https://ssl.&quot; : &quot;http://www.&quot;); document.write(unescape(&quot;%3Cscript src=&#39;&quot; + gaJsHost + &quot;google-analytics.com/ga.js&#39; type=&#39;text/javascript&#39;%3E%3C/script%3E&quot;)); &lt;/script&gt; &lt;script type=&quot;text/javascript&quot;&gt; try { var pageTracker = _gat._getTracker(&quot;UA-1829976-8&quot;); pageTracker._trackPageview(); } catch(err) {}&lt;/script&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I recently added an one terabyte NAS to my network.  As soon as I hooked it up and configured it, I transferred all my data files to the NAS.  Then I deleted the data from my hard drive.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Before the move, my hard disk was so full that I was not able to do a decent disk defragmentation.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Now with a lot of free disk space, it was time to do the disk defragmentation that my disk needed.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;After doing so, my system crash on the first reboot.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;After a lot of time diagnosing the problem, I discovered that there were bad sectors on the disk drive and the defragmentation moved some of system files into the bad sector.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I reformatted the disk and re-installed the operating system.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Unfortunately, the operating system on the installation disk does not have almost 10 years of updates.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I pointed my Internet Explorer to the Microsoft Windows update web site.  Unfortunately, the Internet Explorer on the Windows 2000 installation disk does not support the features on the web site.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;Auuuuuugh!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;I had to download and install the latest version of Mozilla Firefox (the browser that I normally use) and use it to download the updated Internet Explorer that&#39;s compatible with the latest Microsoft Windows update web site.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family:times new roman;&quot;&gt;After installing the latest version of Internet Explorer for Windows 2000, I was finally able to update my Windows 2000 O/S with the latest patches.&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://techadventurer.blogspot.com/feeds/4164126644394939166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/983199997405710911/4164126644394939166' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/4164126644394939166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/983199997405710911/posts/default/4164126644394939166'/><link rel='alternate' type='text/html' href='http://techadventurer.blogspot.com/2009/08/recovering-from-crash-of-my-windows.html' title='Recovering from the crash of my Windows 2000 PC&#39;s Hard Disk'/><author><name>Pin H. Chen</name><uri>http://www.blogger.com/profile/17822579058250865859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>