<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://devwiki.neosys.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Anecada</id>
	<title>NEOSYS Dev Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://devwiki.neosys.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Anecada"/>
	<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php/Special:Contributions/Anecada"/>
	<updated>2026-04-07T01:03:33Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_MingW_C%2B%2B&amp;diff=1003</id>
		<title>Installing MingW C++</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_MingW_C%2B%2B&amp;diff=1003"/>
		<updated>2010-11-24T02:11:35Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[http://osobageqys.co.cc UNDER COSTRUCTION, PLEASE SEE THIS POST IN RESERVE COPY]=&lt;br /&gt;
http://sourceforge.net/project/showfiles.php?group_id=2435&amp;amp;amp;package_id=240780&lt;br /&gt;
&lt;br /&gt;
#base tools&lt;br /&gt;
#g++ compiler&lt;br /&gt;
&lt;br /&gt;
Install in default directories but on the same drive as your projects otherwise you will have to edit project&#039;s folder locations&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Template:Postgres_function_installation&amp;diff=1002</id>
		<title>Template:Postgres function installation</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Template:Postgres_function_installation&amp;diff=1002"/>
		<updated>2010-11-24T02:10:49Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[http://aduratutuz.co.cc Under Construction! Please Visit Reserve Page. Page Will Be Available Shortly]=&lt;br /&gt;
&lt;br /&gt;
-- cut and paste the following SQL to register the functions into postgres --&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION exodus_call(bytea, bytea, bytea, bytea, bytea, int4, int4) RETURNS bytea&lt;br /&gt;
AS &#039;pgexodus&#039;, &#039;exodus_call&#039; LANGUAGE C IMMUTABLE;&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION exodus_extract_bytea(bytea, int4, int4, int4)&lt;br /&gt;
RETURNS bytea AS &#039;pgexodus&#039;, &#039;exodus_extract_bytea&#039; LANGUAGE C IMMUTABLE;&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION exodus_extract_text(bytea, int4, int4, int4) RETURNS text&lt;br /&gt;
AS &#039;pgexodus&#039;, &#039;exodus_extract_text&#039; LANGUAGE C IMMUTABLE;&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION exodus_extract_sort(bytea, int4, int4, int4) RETURNS text&lt;br /&gt;
AS &#039;pgexodus&#039;, &#039;exodus_extract_sort&#039; LANGUAGE C IMMUTABLE;&lt;br /&gt;
&lt;br /&gt;
-- Remaining functions are STRICT therefore never get called with NULLS&lt;br /&gt;
-- also return NULL if passed zero length strings&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION exodus_extract_text2(bytea, int4, int4, int4) RETURNS text&lt;br /&gt;
AS &#039;pgexodus&#039;, &#039;exodus_extract_text2&#039; LANGUAGE C IMMUTABLE STRICT;&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION exodus_extract_date(bytea, int4, int4, int4) RETURNS date&lt;br /&gt;
AS &#039;pgexodus&#039;, &#039;exodus_extract_date&#039; LANGUAGE C IMMUTABLE STRICT;&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION exodus_extract_time(bytea, int4, int4, int4) RETURNS time&lt;br /&gt;
AS &#039;pgexodus&#039;, &#039;exodus_extract_time&#039; LANGUAGE C IMMUTABLE STRICT;&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION exodus_extract_datetime(bytea, int4, int4, int4) RETURNS timestamp&lt;br /&gt;
AS &#039;pgexodus&#039;, &#039;exodus_extract_datetime&#039; LANGUAGE C IMMUTABLE STRICT;&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_WinRAR&amp;diff=1001</id>
		<title>Installing WinRAR</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_WinRAR&amp;diff=1001"/>
		<updated>2010-11-24T02:10:39Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[http://odygobyciqi.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
# Go to www.download.com.&lt;br /&gt;
# In the the search engine, type WinRAR.&lt;br /&gt;
# Look for WinRAR 3.7, its would normally be first of the download list.&lt;br /&gt;
# Click on the big button saying Download WinRAR.&lt;br /&gt;
# You come to another web page, wait for a moment, and a little window pop up asking whether to save or run. It would be advisable to save it in a folder called Downloads.&amp;amp;lt;br&amp;amp;gt; (If you haven&#039;t already done so).&lt;br /&gt;
# There should be a few moments of downloading, depending on your internet connection. Then click Run, then click Run again.&lt;br /&gt;
# Click Install.&lt;br /&gt;
# A window should pop up called WinRAR set-up, click Ok.&lt;br /&gt;
# Done.&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Template_talk:Postgres_function_installation&amp;diff=1000</id>
		<title>Template talk:Postgres function installation</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Template_talk:Postgres_function_installation&amp;diff=1000"/>
		<updated>2010-11-24T02:10:29Z</updated>

		<summary type="html">&lt;p&gt;Anecada: Created page with &amp;#039;---- &amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height…&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://aduratutuz.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://aduratutuz.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_Tortoise_Subversion&amp;diff=999</id>
		<title>Installing Tortoise Subversion</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_Tortoise_Subversion&amp;diff=999"/>
		<updated>2010-11-24T02:10:27Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://evicijum.co.cc Under Construction! Please Visit Reserve Page. Page Will Be Available Shortly]=&lt;br /&gt;
----&lt;br /&gt;
=[http://evicijum.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==Downloading &amp;amp;amp; Installing Tortoise SVN (32bit):==&lt;br /&gt;
&lt;br /&gt;
=== New instructions ===&lt;br /&gt;
&lt;br /&gt;
http://tortoisesvn.tigris.org/&lt;br /&gt;
&lt;br /&gt;
http://tortoisesvn.net/downloads&lt;br /&gt;
&lt;br /&gt;
http://downloads.sourceforge.net/tortoisesvn/TortoiseSVN-1.6.7.18415-win32-svn-1.6.9.msi?download&lt;br /&gt;
&lt;br /&gt;
=== Old instructions ===&lt;br /&gt;
&lt;br /&gt;
# Go to your browser, copy and paste the web address into your URL &amp;amp;quot;http://subversion.tigris.org/project_packages.html&amp;amp;quot;.&lt;br /&gt;
&lt;br /&gt;
# The web page should have a title of &amp;amp;quot;Subversion packets&amp;amp;quot;, and have a dark green theme.&lt;br /&gt;
# Scroll down the page, and look for Windows NT, 2000, XP and 2003.&lt;br /&gt;
# Look through the text for &amp;amp;quot;If you want a pretty Win32 GUI, TortoiseSVN integrates nicely with the Window Explorer.&amp;amp;quot;, near the bottom. Click on the link highlight in blue (tortoiseSVN).&lt;br /&gt;
# Look for &amp;amp;quot;Latest Version&amp;amp;quot; in a green bar and underneath that, in the text look for &amp;amp;quot;download page&amp;amp;quot; and click it.&lt;br /&gt;
# You should be looking at a web page with a blue tortoise. The title should also be &amp;amp;quot;TortoiseSVN&amp;amp;quot;.&lt;br /&gt;
# Look for the subheading &amp;amp;quot;Download Application&amp;amp;quot;&lt;br /&gt;
# Click on &amp;amp;quot;TortoiseSVN-1.4.5.10425-win32-svn-1.4.5.msi 32 bit.&lt;br /&gt;
# You come to a web page with a URL starting with &amp;amp;quot;http://sourceforge.net/............./&amp;amp;quot;,either a window automatically pops up asking whether to save or run, or you right click on a beige horizontal bar at the top of the web browser window, and select &amp;amp;quot;Download file&amp;amp;quot;.&lt;br /&gt;
# Click Save, and save the file into your download folder. (make a folder named download, if you haven&#039;t already done so) then click Run, and click Run again.&lt;br /&gt;
# When the TortoiseSVN window set-up pops up, click next. &lt;br /&gt;
# Accept the terms, and click next.&lt;br /&gt;
# Click next again, then click Install.&lt;br /&gt;
# Then installation program will ask you to restart.&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_%26_Building_all_Components_for_Project_Exodus&amp;diff=998</id>
		<title>Installing &amp; Building all Components for Project Exodus</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_%26_Building_all_Components_for_Project_Exodus&amp;diff=998"/>
		<updated>2010-11-24T02:10:25Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://acisabukody.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://acisabukody.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==Software to install:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# WinRAR.&lt;br /&gt;
# PostgresSQL.&lt;br /&gt;
# TortoiseSVN 9(32 bit).&lt;br /&gt;
# Boost c++ libraries 1.34.0 .&lt;br /&gt;
# Visual Studio C++ Express Edition.&lt;br /&gt;
# Downloading &amp;amp;amp; Installing Platform SDK.&lt;br /&gt;
&lt;br /&gt;
==Downloading &amp;amp;amp; Installing WinRAR:==&lt;br /&gt;
&lt;br /&gt;
# Go to www.download.com.&lt;br /&gt;
# In the the search engine, type WinRAR.&lt;br /&gt;
# Look for WinRAR 3.7, its would normally be first of the download list.&lt;br /&gt;
# Click on the big button saying Download WinRAR.&lt;br /&gt;
# You come to another web page, wait for a moment, and a little window pop up asking whether to save or run. It would be advisable to save it in a folder called Downloads.&amp;amp;lt;br&amp;amp;gt; (If you haven&#039;t already done so).&lt;br /&gt;
# There should be a few moments of downloading, depending on your internet connection. Then click Run, then click Run again.&lt;br /&gt;
# Click Install.&lt;br /&gt;
# A window should pop up called WinRAR set-up, click Ok.&lt;br /&gt;
# Done.&lt;br /&gt;
&lt;br /&gt;
==Downloading and Installing PostgresSQL:==&lt;br /&gt;
&lt;br /&gt;
===Part 1: Downloading &amp;amp;amp; Installing PostgresSQL===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.postgresql.org/&lt;br /&gt;
# In the search engine at the top right hand corner copy &amp;amp;amp; paste &amp;amp;lt;B&amp;amp;gt;postgresql-8.1.9-1.zip&amp;amp;lt;/b&amp;amp;gt; and press enter.&lt;br /&gt;
# Click the one pointed to you by the red arrow&amp;amp;lt;br&amp;amp;gt;[[Image:getpgSQL1.jpg]]&amp;amp;lt;br&amp;amp;gt;if not included, look for something similar, keeping in mind you need the &amp;amp;lt;B&amp;amp;gt;postgresql-8.1.9-1.zip&amp;amp;lt;/b&amp;amp;gt;)&lt;br /&gt;
# Click on the link shown to you by the red arrow &amp;amp;lt;br&amp;amp;gt;[[Image:FTPbrowser.JPG]]&lt;br /&gt;
# Click the link &amp;amp;quot;Win32&amp;amp;quot;&lt;br /&gt;
# Click the link &amp;amp;quot;postgresql-8.2.5-1.zip&amp;amp;quot;&lt;br /&gt;
# Now a window will pop up asking whether you want to save or run the installation program. Save it in your download folder, if you haven&#039;t created one do so. The purpose of having a Download file is that every time you download a big file you save it so that you don&#039;t have to waste your time downloading it again. However with small files, there is no point in saving them because of the small amount of time they take to download. &lt;br /&gt;
# Look in your download folder for postgresql-8.1.9-1.zip&lt;br /&gt;
# Right click on postgresql-8.1.9-1.zip click Extract to postgresql-v8.1.9-1.zip\  &lt;br /&gt;
# Go to the folder you just extracted to in your download folder.&lt;br /&gt;
# Double click on the file postgresql-8.1.msi, and to check whether you have the right version, look at the size, is it 134Kb.&lt;br /&gt;
# A window should have popped up, saying what language you want to use in the installation. Select your preferred language. (if you have any other windows close them down and SAVE your work)&lt;br /&gt;
# This window is important, so don&#039;t miss any thing out. Scroll down to Database drivers, and click on the small triangle pointing downwards, a small list of options will appear click &amp;amp;quot;Entire feature will be unavailable&amp;amp;quot;.&lt;br /&gt;
# Scroll to the very bottom to Development, now just like the other one click on the small triangle pointing downwards and again the options will appear, this time click &amp;amp;quot;Entire feature will be installed on your local driver&amp;amp;quot;. Click Next.&lt;br /&gt;
# In the next window type into the User name field any random name, as you will not have to remember it. Then click Next. Click Yes. Click Ok.&lt;br /&gt;
# In the current window there are some drop down menus you MUST change: &lt;br /&gt;
#* The field next to Encoding, use the drop down menu to find UTF-8.&lt;br /&gt;
#* The field next to Locale, use the drop down menu to find your language.&lt;br /&gt;
# Type in a password and take a note of it and click Next.&lt;br /&gt;
# Then you come to a window called Enable contrib modules, tick Tsearch2 near the right hand side and click Next.&lt;br /&gt;
# Then to start the Installation click Next.&lt;br /&gt;
&lt;br /&gt;
===Part 2: Set-up &amp;amp;amp; Configuration===&lt;br /&gt;
&lt;br /&gt;
# Go to your start menu, all programs, PostgreSQL 8.1, pgadmin III. Click the close button for the tips.&lt;br /&gt;
# Double click on PostgreSQL database server 8.1 (Localhost:5432), and it will ask you for the password you took note of in Part1 of the exercise. Type it in.&lt;br /&gt;
# On the right hand side of the window there are the files of the SQL Server. To make a new database right click on Database(1)and click the New Database option. Type in NEOSYS into the name field and click Ok.&lt;br /&gt;
# On the right hand side of the window look for Login Roles (1), at the bottom of the list.&lt;br /&gt;
# Right click it and click the New Login Role.&lt;br /&gt;
# Type in NEOSYS into the name field&amp;amp;lt;br&amp;amp;gt;[[Image:loginrole.JPG]]&amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
# Type in a pass and make a note of it.&lt;br /&gt;
&lt;br /&gt;
==Downloading &amp;amp;amp; Installing Tortoise SVN (32bit):==&lt;br /&gt;
&lt;br /&gt;
# Go to your browser, copy and paste the web address into your URL &amp;amp;quot;http://subversion.tigris.org/project_packages.html&amp;amp;quot;.&lt;br /&gt;
&lt;br /&gt;
# The web page should have a title of &amp;amp;quot;Subversion packets&amp;amp;quot;, and have a dark green theme.&lt;br /&gt;
# Scroll down the page, and look for Windows NT, 2000, XP and 2003.&lt;br /&gt;
# Look through the text for &amp;amp;quot;If you want a pretty Win32 GUI, TortoiseSVN integrates nicely with the Window Explorer.&amp;amp;quot;, near the bottom. Click on the link highlight in blue (tortoiseSVN).&lt;br /&gt;
# Look for &amp;amp;quot;Latest Version&amp;amp;quot; in a green bar and underneath that, in the text look for &amp;amp;quot;download page&amp;amp;quot; and click it.&lt;br /&gt;
# You should be looking at a web page with a blue tortoise. The title should also be &amp;amp;quot;TortoiseSVN&amp;amp;quot;.&lt;br /&gt;
# Look for the subheading &amp;amp;quot;Download Application&amp;amp;quot;&lt;br /&gt;
# Click on &amp;amp;quot;TortoiseSVN-1.4.5.10425-win32-svn-1.4.5.msi 32 bit.&lt;br /&gt;
# You come to a web page with a URL starting with &amp;amp;quot;http://sourseforge.net/ bla bla bla bla&amp;amp;quot;, either a window automatically pops up asking whether to save or run, or you right click on a beige horizontal bar at the top of the web browser window, and select &amp;amp;quot;Download file&amp;amp;quot;.&lt;br /&gt;
# Click Save, and save the file into your download folder. (make a folder named download, if you haven&#039;t already done so) then click Run, and click Run again.&lt;br /&gt;
# When the TortoiseSVN window set-up pops up, click next. &lt;br /&gt;
# Accept the terms, and click next.&lt;br /&gt;
# Click next again, then click Install.&lt;br /&gt;
# Then installation program will ask you to restart.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Getting Project Exodus onto your Computer:===&lt;br /&gt;
&lt;br /&gt;
# Go to your desktop, and create a new folder.&lt;br /&gt;
# Right click on the folder, and got to TortoiseSVN, export.&lt;br /&gt;
# This window should pop up:&amp;amp;lt;br&amp;amp;gt;[[Image:tortoiseSVN.JPG]]&amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
# In the URL field type in (or copy and paste) http://svn.neosys.com/svn/trunk and click Ok.&lt;br /&gt;
# Another window will pop up, and start listing the files you are importing onto your pc.&lt;br /&gt;
# Click Ok, once loading is finished.&lt;br /&gt;
&lt;br /&gt;
For help on how to use: http://devwiki.neosys.com/index.php/Installing_and_Using_Tortoise_Subversion&lt;br /&gt;
&lt;br /&gt;
==Boost C++ Libraries 1.34.0==&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.boost-consulting.com/products/free&lt;br /&gt;
# Click the 2nd download, Boost 1.34.0 Installer.&lt;br /&gt;
# Click Run and again.&lt;br /&gt;
# Agree to the licenses.&lt;br /&gt;
# Click Next.&lt;br /&gt;
# Tick the Visual C++ 8.0 (Visual studio 2005).&lt;br /&gt;
# Tick the first two Variants.&lt;br /&gt;
# Now untick every box except:&lt;br /&gt;
#* BoostRegex&amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
#* Boost DateTime&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost FileSystem&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost IOstream&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost Thread&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost ProgramOptions&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost header files&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Start menu shortcut&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Source and Documentation&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Tools.&lt;br /&gt;
[[Image:choosingcomp.jpg]] &amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
9. Click Next, Install. (take note of where you saved boost).&lt;br /&gt;
&lt;br /&gt;
==Downloading &amp;amp;amp; Installing Visual Studio C++ Express Edition:==&lt;br /&gt;
&lt;br /&gt;
# Go to http://msdn2.microsoft.com/en-gb/express/aa700735.aspx&lt;br /&gt;
# Click on the download button near the top right hand of your screen.&lt;br /&gt;
# Scroll down the web page till you see 6 different downloads e.g. Visual Basic, SQL Server and Visual C++.&lt;br /&gt;
# Select your language for Visual C++ 2005 Express Edition, as soon as you select your language a &amp;amp;quot;File download&amp;amp;quot; window will pop up, click Run.&lt;br /&gt;
# There should be a bit of loading, once finished click Run and again.&lt;br /&gt;
# There should be a minute or two of loading, click Next in the Visual Studio C++ set-up.&lt;br /&gt;
# Accept the terms and click Yes.&lt;br /&gt;
# Tick the Graphical IDE if it hasn&#039;t been ticked already and click Next.&lt;br /&gt;
# Browse for a location in where you would like Visual Studio C++ (although, it would be best to keep the default location in case something need to find the Visual Studio C++ folder and cannot find it in its default location) then click Next.&lt;br /&gt;
# If you have any minor jobs to do, I suggest you do so now as it will take a while, but keep checking on how the installation is coming.&lt;br /&gt;
# Then reboot your computer.&lt;br /&gt;
# Once your pc is ready look for Visual Studio C++ on icon your desktop, if its not there go to start, all programs in the start menu and look for Visual Studio C++ Edition as show below: &amp;amp;lt;br&amp;amp;gt;[[Image:whereVSC++.jpg]]&lt;br /&gt;
# The window below will pop up, telling you that you need to register your copy of Visual Studio C++ Express Edition.&lt;br /&gt;
[[Image:registerVSC++.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Downloading &amp;amp;amp; Installing Platform SDK:==&lt;br /&gt;
&lt;br /&gt;
===Part 1===&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.microsoft.com/downloads/details.aspx?familyid=0baf2b35-c656-4969-ace8-e4c0c0716adb&amp;amp;amp;displaylang=en.&lt;br /&gt;
# Click on the &amp;amp;lt;b&amp;amp;gt;Continue&amp;amp;lt;/b&amp;amp;gt; button.&lt;br /&gt;
# Depending on your internet browser, you might have to install a plug-in. IF not, scroll down the web page and click on the &amp;amp;lt;B&amp;amp;gt;Continue&amp;amp;lt;/B&amp;amp;gt; button.&lt;br /&gt;
# Click on the link called &amp;amp;quot;Download Files Below&amp;amp;quot; or you can just find the subheading &amp;amp;lt;b&amp;amp;gt;Files in this Download&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
# There will be list of different types of files, depending on your processor to download. &amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* If you have a Intel processor download &amp;amp;lt;b&amp;amp;gt;PSDK-ia64.exe&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
#* If you have a AMD processor download &amp;amp;lt;b&amp;amp;gt;PSDK-amd64.exe&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
#* If you have another processor type, and it&#039;s listed on the web site but not here chose that Download.&lt;br /&gt;
#* If you have another processor type which is not included in the list on the web page download &amp;amp;lt;b&amp;amp;gt;PSDK-x86.exe&amp;amp;lt;/b&amp;amp;gt;&amp;amp;lt;br&amp;amp;gt;&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
# Save the file into your download folder.&lt;br /&gt;
# Then click Run, Then click Run again.&lt;br /&gt;
# After a second or two, you come to a rectangular window, with two button, click Cancel.&lt;br /&gt;
# Click Next.&lt;br /&gt;
# Agree to the terms, and click Next.&lt;br /&gt;
# Do a custom installation, and click Next.&lt;br /&gt;
# You come to a stage in the set-up where it asks &amp;amp;quot;In which driver do you want to save you files to?&amp;amp;quot;. Pick the drive you prefer. To change from drive to drive you change the beginning of the location. So if you want to save SDK in the C drive, leave it as it is and if you want to save SDK to the D drive, change C to D. Or click browse. Then click Next.&lt;br /&gt;
# Click Next again, and wait a second for the loading.&lt;br /&gt;
# Then continue the download, till the end.&lt;br /&gt;
&lt;br /&gt;
===Part 2===&lt;br /&gt;
&lt;br /&gt;
# Run Microsoft Visual Studio C++ Express Edition.&lt;br /&gt;
# On your screen you should see:&amp;amp;lt;br&amp;amp;gt;[[Image:VSC++EE.JPG]]&amp;amp;lt;br&amp;amp;gt; click on agency, and on the left hand column you should see:&amp;amp;lt;br&amp;amp;gt;[[Image:solutionexplorer-mv.JPG]]&lt;br /&gt;
# Go to Tools, Options and open Project and Solutions.&lt;br /&gt;
# Your window should look like this:&amp;amp;lt;br&amp;amp;gt;[[Image:VSC++EEoptions.JPG]]&lt;br /&gt;
# Click the button that looks like a yellow folder, and in the field where your cursor should be blinking, copy and paste the following path Executable files path, and press Enter: C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin. &lt;br /&gt;
# Click the drop down menu for Show directories for: and click Include Files, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include. &lt;br /&gt;
# Click the drop down menu for Show directories for: and click Library files, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib&lt;br /&gt;
Compile by pressing F5.&lt;br /&gt;
&lt;br /&gt;
==Helpful Websites==&lt;br /&gt;
&lt;br /&gt;
# http://msdn2.microsoft.com/en-gb/express/aa700755.aspx for help on Microsoft Visual Studio C++ Express Edition.&lt;br /&gt;
# http://www.boost.org/ for help on Boost&lt;br /&gt;
# http://www.postgresql.org/ for help on PostgeSQL&lt;br /&gt;
# http://www.win-rar.com/winrarsupport.html for help with WinRAR.&lt;br /&gt;
# http://tortoisesvn.tigris.org/ help on tortoiseSVN.&lt;br /&gt;
# http://devwiki.neosys.com/index.php/Installing_and_Using_Tortoise_Subversion on how to use tortoise subversion&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_Postgres&amp;diff=997</id>
		<title>Installing Postgres</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_Postgres&amp;diff=997"/>
		<updated>2010-11-24T02:10:25Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://utugijynure.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://utugijynure.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==Downloading and Installing PostgresSQL:==&lt;br /&gt;
&lt;br /&gt;
=== Postgres 8.3 ===&lt;br /&gt;
&lt;br /&gt;
http://www.postgresql.org/ftp/binary/&lt;br /&gt;
http://www.enterprisedb.com/products/pgdownload.do&lt;br /&gt;
&lt;br /&gt;
X: drive below should be the same as the drive you build exodus otherwise the include files will not be found.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|QUESTION&lt;br /&gt;
|RESPONSE&lt;br /&gt;
|COMMENT&lt;br /&gt;
|-&lt;br /&gt;
|Installation Directory&lt;br /&gt;
|X:\Program Files\PostgreSQL\8.3&lt;br /&gt;
|NB Keep the directory structure even if you change the drive otherwise will have to modify build project folder settings.&lt;br /&gt;
|-&lt;br /&gt;
|Data Directory&lt;br /&gt;
|X:\Program Files\PostgreSQL\8.3\data&lt;br /&gt;
|Put this whereever you like&lt;br /&gt;
|-&lt;br /&gt;
|password for superuser &amp;amp;quot;postgres&amp;amp;quot;&amp;amp;lt;br&amp;amp;gt;AND windows service&lt;br /&gt;
|yourpasshere&lt;br /&gt;
|Invent your own and TAKE A RECORD BECAUSE YOU WILL BE NEEDING IT LATER. If reinstalling enter the existing postgress user pass or delete the user and let it be recreated&lt;br /&gt;
|-&lt;br /&gt;
|Port number the server should listen on&lt;br /&gt;
|5432&lt;br /&gt;
|Exodus uses the default by default&lt;br /&gt;
|-&lt;br /&gt;
|Locale:&lt;br /&gt;
|Default&lt;br /&gt;
|-&lt;br /&gt;
|Charset:&lt;br /&gt;
|UTF8 for server and client&lt;br /&gt;
|-&lt;br /&gt;
|Run StackBuilder:&lt;br /&gt;
|uncheck&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Postgres 8.1 ===&lt;br /&gt;
&lt;br /&gt;
[[Postgres 8.1]]&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Log_of_an_installation_of_libexodus_on_Ubuntu_8.04.1_LTS&amp;diff=996</id>
		<title>Log of an installation of libexodus on Ubuntu 8.04.1 LTS</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Log_of_an_installation_of_libexodus_on_Ubuntu_8.04.1_LTS&amp;diff=996"/>
		<updated>2010-11-24T02:10:18Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://ocilufic.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://ocilufic.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
=== Preparation ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get update&lt;br /&gt;
 sudo apt-get upgrade&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install postgresql postgresql-server-dev* libpq-dev  build-essential subversion \&lt;br /&gt;
 libboost-dev libboost-date-time-dev libboost-filesystem-dev libboost-regex-dev libboost-thread-dev&lt;br /&gt;
&lt;br /&gt;
The rest is almost identical to [[Log_of_an_installation_of_libexodus_on_Centos_5.3]]&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=What_is_Exodus&amp;diff=995</id>
		<title>What is Exodus</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=What_is_Exodus&amp;diff=995"/>
		<updated>2010-11-24T02:10:05Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://ynejynezex.co.cc UNDER COSTRUCTION, PLEASE SEE THIS POST IN RESERVE COPY]=&lt;br /&gt;
----&lt;br /&gt;
=[http://ynejynezex.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
=[http://ogetehuvo.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
== What is Exodus? ==&lt;br /&gt;
&lt;br /&gt;
Exodus is a way to do traditional pick-basic programming in C++.&lt;br /&gt;
&lt;br /&gt;
It was conceived and created by Steve Bush of NEOSYS Software as a way to move classic pick/multivalue basic into a classic industry standard environment with the minimum of upheaval.&lt;br /&gt;
&lt;br /&gt;
Many people would like to migrate their classic pick/mv based applications into industry standard environments however they have so much code that relies on the nuances of pick/mv, or their programmers are so used to pick-basic, that it is virtually impossible to move.&lt;br /&gt;
&lt;br /&gt;
Exodus is released under the MIT licence so you can use it in closed source projects without fee.&lt;br /&gt;
&lt;br /&gt;
== It is a Database or a Language? ==&lt;br /&gt;
&lt;br /&gt;
EITHER OR BOTH!&lt;br /&gt;
&lt;br /&gt;
You can use Exodus for:&lt;br /&gt;
&lt;br /&gt;
Pick-style Programming (requires a C++ compiler)&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
Pick-style Database Use/Management (requires a Postgres Database)&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
Both together&lt;br /&gt;
&lt;br /&gt;
You can do Exodus Pick-style Programming WITHOUT having or using a database and you can use Exodus command line utilities to do have a Pick-style Database without having a C++ compiler.&lt;br /&gt;
&lt;br /&gt;
== Twin Issues ==&lt;br /&gt;
&lt;br /&gt;
Exodus provides replacements for both language and storage but each part could be very valuable to add sql storage to an existing pick language or a language to an existing pick database.&lt;br /&gt;
&lt;br /&gt;
=== Language Replacement ===&lt;br /&gt;
&lt;br /&gt;
Use C++&#039;s operator overloading feature to make C++ behave almost like, if not exactly look like, pick-basic programmers expect and be usable for classic pick-basic style application programming.&lt;br /&gt;
&lt;br /&gt;
=== Database Replacement ===&lt;br /&gt;
&lt;br /&gt;
Use standard SQL databases (currently Postgres) transparently as a pick style storage mechanism ensuring full SORT/SELECT functionality including dictionary items (columns) that invoke routines written in the pick-basic style CC++ environment.&lt;br /&gt;
&lt;br /&gt;
== Twin syntaxes ==&lt;br /&gt;
&lt;br /&gt;
=== Classic Pick &amp;amp;amp;quot;Global function&amp;amp;amp;quot; style syntax ===&lt;br /&gt;
&lt;br /&gt;
 print(oconv(extract(xyz,1,2,3),&amp;amp;amp;quot;MD20&amp;amp;amp;quot;)));&lt;br /&gt;
&lt;br /&gt;
This is standard Exodus C++ syntax. Only the representation of print as function &amp;amp;amp;quot;print()&amp;amp;amp;quot; instead of a command &amp;amp;amp;quot;print x&amp;amp;amp;quot;, - and the trailing ; gives it away as C++.&lt;br /&gt;
&lt;br /&gt;
Pick programmers are used to this syntax and many will want to stay with this style for whatever reason.&lt;br /&gt;
&lt;br /&gt;
It is a pity that C++ syntax doesnt allow the easy-to-write and easy-to-read pick-like array extract/replace like xxx&amp;amp;amp;lt;1,2,3&amp;amp;amp;gt; or    x&amp;amp;amp;lt;3&amp;amp;amp;gt;=&amp;amp;amp;quot;x&amp;amp;amp;quot;. A great shame but not a killer.&lt;br /&gt;
&lt;br /&gt;
=== Classic OO  &amp;amp;amp;quot;Method Chaining&amp;amp;amp;quot; syntax  ===&lt;br /&gt;
&lt;br /&gt;
 xyz(1,2,3).oconv(&amp;amp;amp;quot;MD20&amp;amp;amp;quot;).print();&lt;br /&gt;
&lt;br /&gt;
or if you prefer ...&lt;br /&gt;
&lt;br /&gt;
 xyz.extract(1,2,3).oconv(&amp;amp;amp;quot;MD20&amp;amp;amp;quot;).print();&lt;br /&gt;
&lt;br /&gt;
This is standard Exodus C++ code.&lt;br /&gt;
&lt;br /&gt;
Variable xyz is one of Exodus&#039; &amp;amp;amp;quot;var&amp;amp;amp;quot; objects and xyz(1,2,3) does an &amp;amp;amp;quot;extract&amp;amp;amp;quot; ... which just produces another var object which is then processed by the oconv method and then printed.&lt;br /&gt;
&lt;br /&gt;
What this actually does is: From variable xyz, extract field 1, multivalue 2, subvalue 3 then oconv it, then print it.&lt;br /&gt;
&lt;br /&gt;
More C++ish style is also acceptable:&lt;br /&gt;
&lt;br /&gt;
 cout&amp;amp;amp;lt;&amp;amp;amp;lt;xyz(1,2,3).oconv(&amp;amp;amp;quot;MD20&amp;amp;amp;quot;);&lt;br /&gt;
&lt;br /&gt;
So a &amp;amp;amp;quot;pick variable&amp;amp;amp;quot; object (or class) Mv has all the various pick functions as methods. This means that you can use OO-like method chaining syntax. This is often the way people think in OO languages. In OO it is considered easier to understand code if you can simply read from left to right and it gives you the operations in the order that they are performed. As much as some people may not like OO method syntax, the many more people today are more comfortable with it than global function style.&lt;br /&gt;
&lt;br /&gt;
== Why not just Python or PHP? ==&lt;br /&gt;
&lt;br /&gt;
Both of these are great languages to start new projects and many people using Pick language will have looked at the possibilities of porting to them.&lt;br /&gt;
&lt;br /&gt;
However there are many subtle differences between the languages and, if you have thousands of lines of old code you dont have time to sort out all the subtle bugs without a complete rewrite with a programmer familiar with the intricacies of both languages.&lt;br /&gt;
&lt;br /&gt;
Generally the objective is to convert often hundreds of thousands of lines of pick basic fairly accurately into another language. Changing syntax is laborious - but doesnt require highly skilled programmers.  However any subtle changes in semantics (how operators and functions work exactly) means that ports are unreliable which is far more costly.&lt;br /&gt;
&lt;br /&gt;
This means that the syntax can be changed when porting as long as not too bad then we will all get used to the new syntax. It also means that the sematics must remain almost identical otherwise people will be hunting down bugs forever. Anybody who has looked at replacing pick will have come to the same conclusion. porting needs meticulous rewriting into the new language mentality due to nuances in how the basic principles of how variables behave.&lt;br /&gt;
&lt;br /&gt;
Python and PHP operators and variables just dont BEHAVE like pick operators and variables in too many cases.&lt;br /&gt;
&lt;br /&gt;
=== Unpredictable overloading ===&lt;br /&gt;
Most modern dynamically typed languages suffer from the catastrophically inappropriate carry over of the concept of operator overload from statically typed languages. This means that you cannot trust what operators like + and * will actually do. Pick-basic, although dynamically typed, does not suffer from this. Pick&#039;s + will always do an arithmetic plus and fail if non-numeric strings are presented to it. Pick&#039;s * will always do an arithmetic multiply and fail if non-numeric strings are presented to it.&lt;br /&gt;
&lt;br /&gt;
You just cannot trust dynamically typed languages that do operator overloading based on dynamic type. Accidents waiting to happen and frequently do.&lt;br /&gt;
&lt;br /&gt;
=== Example PHP problems ===&lt;br /&gt;
&lt;br /&gt;
This is a very tiny list of all the problems that exist. By problem we mean difference in way of processing, not that one way is wrong or right.&lt;br /&gt;
&lt;br /&gt;
==== PHP * operator ====&lt;br /&gt;
&lt;br /&gt;
If you give it a variable that happens to contain a string then, instead of converting it to a number to multiply numerically, it will repeat the string n times! This is fine for php people who are used to it ... but cause chaos when converting and maintaining pick code in php.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;amp;quot;100&amp;amp;amp;quot;*10 in php is &amp;amp;amp;quot;100100100100100100100100100100&amp;amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
of course it isnt written as &amp;amp;amp;quot;100&amp;amp;amp;quot;*10 in code .. it is written as mynumber*10 ... BUT what happens depends on what data type happens to be in mynumber during execution&lt;br /&gt;
&lt;br /&gt;
==== PHP . operator (concatenation) ====&lt;br /&gt;
&lt;br /&gt;
It is very astute of PHP to have a special concat operator even if it does seem almost impossible to read to pickies used to a : for concat. Most other languages dont have proper concat operator at all. But then from the point of view of Pick-basic it has the wrong precedence.&lt;br /&gt;
&lt;br /&gt;
php&#039;s concat operator (the dot) has the same precedence as + and - whereas in Pick, concat has a lower precendence than the arithmetic operators. This subtle difference introduces endless opportunity for hard to track down bugs if you try to simply translate large amounts of code from pick-basic to php.&lt;br /&gt;
&lt;br /&gt;
==== Lack of GOTO ====&lt;br /&gt;
&lt;br /&gt;
This makes porting of some existing pick-style programs very difficult (requiring refactoring with consequent risk of bugs). C++ has the GOTO statement.&lt;br /&gt;
&lt;br /&gt;
== Concat operator ==&lt;br /&gt;
&lt;br /&gt;
The ability to concat variables in precisely the same way as pick does is very important if you are going to move pick applications into any other language.&lt;br /&gt;
&lt;br /&gt;
eg in pick if you concat two variables that happen to be numbers - using the pick &amp;amp;amp;quot;:&amp;amp;amp;quot; operator you will still get a string out. ie concat in pick means concat. it DOESNT means add if the arguments happen to be numeric. the concat operator missing in c++ because it is strongly typed and it (and you) can tell from arguments whether it will add or concat&lt;br /&gt;
&lt;br /&gt;
in exodus, &amp;amp;amp;quot;variables&amp;amp;amp;quot; are a c++ class that behaves like a pick variable very very closely so you can port pick basic without being nervous of subtle bugs due to differences in mentality of the other language designers.&lt;br /&gt;
&lt;br /&gt;
== Why Postgres? ==&lt;br /&gt;
&lt;br /&gt;
Open source and technically very open and easy to extend with new datatypes etc.&lt;br /&gt;
&lt;br /&gt;
Postgres is widely available and well supported on all major platform. There has been very strong interest in and development of Postgres since Oracle bought up the MySQL&#039;s underlying database.&lt;br /&gt;
&lt;br /&gt;
Postgres licence in BSD so can be used in anyway you like whatsoever including using bits of the source code in your own code without GPL restrictions.&lt;br /&gt;
&lt;br /&gt;
There is a draft driver to use OpenQM instead of Postgres.&lt;br /&gt;
&lt;br /&gt;
== Why Boost? ==&lt;br /&gt;
&lt;br /&gt;
Best of breed and is the prime place that C++ standards are worked out.&lt;br /&gt;
&lt;br /&gt;
== Portability ==&lt;br /&gt;
&lt;br /&gt;
Written in standard C++. Currently builds with GNU gcc and MSVC 2005+&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_Boost&amp;diff=994</id>
		<title>Installing Boost</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_Boost&amp;diff=994"/>
		<updated>2010-11-24T02:10:03Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://erihybomex.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://erihybomex.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==Boost C++ Libraries 1.38.0==&lt;br /&gt;
&lt;br /&gt;
Exodus builds with boost 1.35 onwards in Linux but that is untested in Windows.&lt;br /&gt;
&lt;br /&gt;
Note: if you have Visual Studio 2010 installed, you should download and install Boost 1.43 or later version. Previous versions (like 1.38) are not compatible with VS2010.&lt;br /&gt;
&lt;br /&gt;
Below shows installation for Visual Studio 2008. Choose slightly different options for Visual Studio 2005.&lt;br /&gt;
&lt;br /&gt;
# Click on http://www.boostpro.com/download/boost_1_38_setup.exe or click on http://www.boostpro.com/download then find and click Boost 1.38.0 Installer.&lt;br /&gt;
# Click Run and again.&lt;br /&gt;
# Agree to the licenses.&lt;br /&gt;
# Click Next.&lt;br /&gt;
# Compilers: Visual C++ 9.0 (Visual studio 2008).&lt;br /&gt;
# Variants: (1) Multithread (2) Multithread Debug&lt;br /&gt;
[[Image:boost3.png]]&lt;br /&gt;
&lt;br /&gt;
#Click Next&lt;br /&gt;
# Now untick every box except:&lt;br /&gt;
#* Boost Header files (you dont need to do this every time you add more libraries)&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost Start menu shortcut&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Tools&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost DateTime&amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
#* Boost FileSystem&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost Regex&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost System&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost Thread&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Actually the above options seem to load libs for all compilers and you can cut down the download volume as follows if you wish.&lt;br /&gt;
&lt;br /&gt;
[[Image:boost4.png]]&lt;br /&gt;
&lt;br /&gt;
Make sure you install to the same drive as you are going to build exodus on otherwise you will have to modify the visual studio include folders in the visual studio solution and this will mess up other developers setups if you submit a modified VS solution.&lt;br /&gt;
&lt;br /&gt;
[[Image:boost5.png]]&lt;br /&gt;
&lt;br /&gt;
Click Next, Install&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Talk:Installing_WinRAR&amp;diff=993</id>
		<title>Talk:Installing WinRAR</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Talk:Installing_WinRAR&amp;diff=993"/>
		<updated>2010-11-24T02:10:02Z</updated>

		<summary type="html">&lt;p&gt;Anecada: Created page with &amp;#039;---- &amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height…&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://odygobyciqi.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://odygobyciqi.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Talk:Installing_MingW_C%2B%2B&amp;diff=992</id>
		<title>Talk:Installing MingW C++</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Talk:Installing_MingW_C%2B%2B&amp;diff=992"/>
		<updated>2010-11-24T02:09:59Z</updated>

		<summary type="html">&lt;p&gt;Anecada: Created page with &amp;#039;---- &amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height…&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://osobageqys.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://osobageqys.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Manual_Building_with_g%2B%2B&amp;diff=991</id>
		<title>Manual Building with g++</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Manual_Building_with_g%2B%2B&amp;diff=991"/>
		<updated>2010-11-24T02:09:55Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://exowufo.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://exowufo.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
To give some insight into the automatic procedure.&lt;br /&gt;
&lt;br /&gt;
=== Building ===&lt;br /&gt;
&lt;br /&gt;
get into the source code&lt;br /&gt;
&lt;br /&gt;
 cd ~/exodus/trunk/exodus/exodus/exodus&lt;br /&gt;
&lt;br /&gt;
Copy the headers to a standard include path&lt;br /&gt;
&lt;br /&gt;
 #include files&lt;br /&gt;
 sudo cp exo*.h /usr/include&lt;br /&gt;
 sudo cp mv*.h /usr/include&lt;br /&gt;
&lt;br /&gt;
Compile (Ignore three warnings in /boost/thread/tss.hpp included from mvdbpostgres.cpp)&lt;br /&gt;
&lt;br /&gt;
 g++ -fPIC -c *.cpp&lt;br /&gt;
 gcc -fPIC -c *.c&lt;br /&gt;
&lt;br /&gt;
Link and output the library file&lt;br /&gt;
&lt;br /&gt;
 g++ -shared -o libexodus.so.1.0 *.o -lc -lpq -lboost_filesystem-gcc41-mt -lboost_regex-gcc41-mt\&lt;br /&gt;
  -lboost_thread-gcc41-mt -Wl,-soname,libexodus.so.1&lt;br /&gt;
&lt;br /&gt;
=== Installing ===&lt;br /&gt;
&lt;br /&gt;
This will place the libraries so that you can compile from anywhere on the system&lt;br /&gt;
&lt;br /&gt;
 #copy to a standard library folder&lt;br /&gt;
 sudo cp libexodus.so.1.0 /usr/lib&lt;br /&gt;
 #register the library file with the linux library cache&lt;br /&gt;
 sudo ldconfig -v&lt;br /&gt;
 #create the pointer to version 1&lt;br /&gt;
 sudo ln -sf /usr/lib/libexodus.so.1 /usr/lib/libexodus.so&lt;br /&gt;
&lt;br /&gt;
=== Checking the Build ===&lt;br /&gt;
&lt;br /&gt;
http://www.ibm.com/developerworks/library/l-shobj/&lt;br /&gt;
&lt;br /&gt;
 ldd libexodus.so.1.0|grep &amp;amp;quot;not found&amp;amp;quot;&lt;br /&gt;
 ldd -u libexodus.so.1.0&lt;br /&gt;
&lt;br /&gt;
=== Testing libexodus ===&lt;br /&gt;
&lt;br /&gt;
 g++ test.cpp -lexodus&lt;br /&gt;
 ./a.out&lt;br /&gt;
 ldd -u a.out&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Windows&amp;diff=990</id>
		<title>Windows</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Windows&amp;diff=990"/>
		<updated>2010-11-24T02:09:51Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[http://ojiqovam.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
== Downloading and Installing Exodus ==&lt;br /&gt;
&lt;br /&gt;
http://code.google.com/p/exodusdb/downloads&lt;br /&gt;
&lt;br /&gt;
== C++ Compiler ==&lt;br /&gt;
&lt;br /&gt;
If you want to write or compile Exodus programs on Windows you need a Microsoft C++ compiler. You don&#039;t need a C++ compiler to just used the Exodus command line to access the database or run prepackaged Exodus programs.&lt;br /&gt;
&lt;br /&gt;
=== MSVC ===&lt;br /&gt;
&lt;br /&gt;
*Visual Studio 2003 Professional&lt;br /&gt;
*Visual Studio 2005 Professional&lt;br /&gt;
*Visual Studio 2005 Express (Requires Platform SDK)&lt;br /&gt;
*Visual Studio 2008 Express&lt;br /&gt;
*Visual Studio 2010 Express&lt;br /&gt;
&lt;br /&gt;
A standard install of the free VS Express C++ preferably in the default location on C: or parallel default location but on the same drive as Exodus. No need for any SQL or options.&lt;br /&gt;
&lt;br /&gt;
http://www.microsoft.com/Express/vc/&lt;br /&gt;
&lt;br /&gt;
== Postgresql ==&lt;br /&gt;
&lt;br /&gt;
If you want to use Exodus to provide multivalue database functionality then you must already have or install a PostgreSQL database.&lt;br /&gt;
&lt;br /&gt;
http://www.postgresql.org/download/windows&lt;br /&gt;
&lt;br /&gt;
Postgres does not have to be on the same server as Exodus, however, if it is not, dictionary entries cannot call Exodus subroutines.&lt;br /&gt;
&lt;br /&gt;
=== Windows Postgres plugin ===&lt;br /&gt;
&lt;br /&gt;
At the time of writing, the Windows installer does not install the postgres plugin automatically so you need to do something like the following.&lt;br /&gt;
&lt;br /&gt;
 copy &amp;amp;quot;C:\Program Files\Exodus\10.10\lib\pgexodus-8.dll&amp;amp;quot; &amp;amp;quot;C:\Program Files\PostgreSQL\8.4\lib\pgexodus.dll&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
 copy &amp;amp;quot;C:\Program Files\Exodus\10.10\lib\pgexodus-9.dll&amp;amp;quot; &amp;amp;quot;C:\Program Files\PostgreSQL\9.0\lib\pgexodus.dll&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Postgres configuration ===&lt;br /&gt;
&lt;br /&gt;
By default, Exodus assumes the following postgres configuration. This is very convenient for quick setups but of course is not secure.&lt;br /&gt;
&lt;br /&gt;
 host=127.0.0.1 port=5432 dbname=exodus user=exodus password=somesillysecret connect_timeout=10&lt;br /&gt;
&lt;br /&gt;
The following Exodus command creates the default database and password. It prompts for a postgres admin user and password to do so.&lt;br /&gt;
&lt;br /&gt;
 configexodus&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can use any available Postgres utility to create an initial database and user yourself. If you wish Exodus to be able to create databases, and drop any databases it creates, the user you create should have database creation rights. The user you create does not need admin rights.&lt;br /&gt;
&lt;br /&gt;
Storing the configuration&lt;br /&gt;
&lt;br /&gt;
 notepad %USERPROFILE%\.exodus&lt;br /&gt;
&lt;br /&gt;
 host=127.0.0.1 port=5432 dbname=exodus user=exodus password=somesillysecret connect_timeout=10&lt;br /&gt;
&lt;br /&gt;
The following environment variables can override default and .exodus parameters on a one by one basis.&lt;br /&gt;
&lt;br /&gt;
 set EXODUS_HOST=127.0.0.1&lt;br /&gt;
 set EXODUS_PORT=5432&lt;br /&gt;
 set EXODUS_DBNAME=exodus&lt;br /&gt;
 set EXODUS_USER=exodus&lt;br /&gt;
 set EXODUS_PASSWORD=somesillysecret&lt;br /&gt;
 set EXODUS_TIMEOUT=10&lt;br /&gt;
&lt;br /&gt;
== Using Exodus ==&lt;br /&gt;
&lt;br /&gt;
Start, All Programs, Exodus, Exodus Console&lt;br /&gt;
&lt;br /&gt;
{{exodus console first steps}}&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Building_on_Mac&amp;diff=989</id>
		<title>Building on Mac</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Building_on_Mac&amp;diff=989"/>
		<updated>2010-11-24T02:09:49Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[http://esinyqynyso.co.cc UNDER COSTRUCTION, PLEASE SEE THIS POST IN RESERVE COPY]=&lt;br /&gt;
[[OSX 10.5.5 (Leopard)]]&lt;br /&gt;
&lt;br /&gt;
[[OSX 10.6.4 (Snow Leopard)]]&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Template:Exodus_console_first_steps&amp;diff=988</id>
		<title>Template:Exodus console first steps</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Template:Exodus_console_first_steps&amp;diff=988"/>
		<updated>2010-11-24T02:09:39Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[http://ebytery.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
Try the following commands.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!Command 		!!Comment&lt;br /&gt;
|-&lt;br /&gt;
|&amp;amp;lt;U&amp;amp;gt;EDITING AND COMPILING&amp;amp;lt;/U&amp;amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|edic hello 		||edic=edit+compile+catalog. Creates a skeleton hello.cpp file using nano editor. edic will only compile on exit if saved, so make some change before you exit.&lt;br /&gt;
|-&lt;br /&gt;
|hello			||Run it&lt;br /&gt;
|-&lt;br /&gt;
|compile hello		||compile without editing&lt;br /&gt;
|-&lt;br /&gt;
|edic testsort		||Browse a sample exodus program showing all fundamental database operations including dictionaries and list.&lt;br /&gt;
|-&lt;br /&gt;
|&amp;amp;lt;U&amp;amp;gt;DATABASE OPERATIONS&amp;amp;lt;/U&amp;amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|compile testsort	||compile the preinstalled test program&lt;br /&gt;
|-&lt;br /&gt;
|testsort		||Run it to generate some data and inspect the output&lt;br /&gt;
|-&lt;br /&gt;
|listfiles		||quick tool avoiding need to use any database client&lt;br /&gt;
|-&lt;br /&gt;
|list myclients	        ||text output - no page/column headers just yet sorry&lt;br /&gt;
|-&lt;br /&gt;
|list myclients (H) 	||html output (port of a fully blown LIST replacement in heavy production use since 2000)&lt;br /&gt;
|-&lt;br /&gt;
|list dict_myclients	||NB the underscore after &amp;amp;quot;dict&amp;amp;quot; is *required*. &amp;amp;quot;dict(SPACE)myclients&amp;amp;quot; wont work&lt;br /&gt;
|-&lt;br /&gt;
|list dict_voc		||if you understand this then you understand your pick&lt;br /&gt;
|-&lt;br /&gt;
|edir myclients SB001	||you can edit data or dictionaries directly. edir=&amp;amp;quot;edit record&amp;amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|delete myclients SB001	||useful command line tool&lt;br /&gt;
|-&lt;br /&gt;
|createfile tempfile	||ditto&lt;br /&gt;
|-&lt;br /&gt;
|deletefile tempfile	||ditto&lt;br /&gt;
|-&lt;br /&gt;
|createindex myclients CLIENT_TYPE	||speeds up select commands on the indexed fields in the traditional way&lt;br /&gt;
|-&lt;br /&gt;
|deleteindex myclients CLIENT_TYPE	||filenames are case insensitive, keys and fieldnames are CASE SENSITIVE&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If you get the following error then you have not completed the installation of the Exodus plugin for Postgres.&lt;br /&gt;
&lt;br /&gt;
PGRES_FATAL_ERROR: ERROR:  function exodus_extract_text(bytea, integer, integer, integer) does not exist&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=What_is_Exodus&amp;diff=987</id>
		<title>What is Exodus</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=What_is_Exodus&amp;diff=987"/>
		<updated>2010-11-24T02:09:37Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[http://ogetehuvo.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
== What is Exodus? ==&lt;br /&gt;
&lt;br /&gt;
Exodus is a way to do traditional pick-basic programming in C++.&lt;br /&gt;
&lt;br /&gt;
It was conceived and created by Steve Bush of NEOSYS Software as a way to move classic pick/multivalue basic into a classic industry standard environment with the minimum of upheaval.&lt;br /&gt;
&lt;br /&gt;
Many people would like to migrate their classic pick/mv based applications into industry standard environments however they have so much code that relies on the nuances of pick/mv, or their programmers are so used to pick-basic, that it is virtually impossible to move.&lt;br /&gt;
&lt;br /&gt;
Exodus is released under the MIT licence so you can use it in closed source projects without fee.&lt;br /&gt;
&lt;br /&gt;
== It is a Database or a Language? ==&lt;br /&gt;
&lt;br /&gt;
EITHER OR BOTH!&lt;br /&gt;
&lt;br /&gt;
You can use Exodus for:&lt;br /&gt;
&lt;br /&gt;
Pick-style Programming (requires a C++ compiler)&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
Pick-style Database Use/Management (requires a Postgres Database)&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
Both together&lt;br /&gt;
&lt;br /&gt;
You can do Exodus Pick-style Programming WITHOUT having or using a database and you can use Exodus command line utilities to do have a Pick-style Database without having a C++ compiler.&lt;br /&gt;
&lt;br /&gt;
== Twin Issues ==&lt;br /&gt;
&lt;br /&gt;
Exodus provides replacements for both language and storage but each part could be very valuable to add sql storage to an existing pick language or a language to an existing pick database.&lt;br /&gt;
&lt;br /&gt;
=== Language Replacement ===&lt;br /&gt;
&lt;br /&gt;
Use C++&#039;s operator overloading feature to make C++ behave almost like, if not exactly look like, pick-basic programmers expect and be usable for classic pick-basic style application programming.&lt;br /&gt;
&lt;br /&gt;
=== Database Replacement ===&lt;br /&gt;
&lt;br /&gt;
Use standard SQL databases (currently Postgres) transparently as a pick style storage mechanism ensuring full SORT/SELECT functionality including dictionary items (columns) that invoke routines written in the pick-basic style CC++ environment.&lt;br /&gt;
&lt;br /&gt;
== Twin syntaxes ==&lt;br /&gt;
&lt;br /&gt;
=== Classic Pick &amp;amp;quot;Global function&amp;amp;quot; style syntax ===&lt;br /&gt;
&lt;br /&gt;
 print(oconv(extract(xyz,1,2,3),&amp;amp;quot;MD20&amp;amp;quot;)));&lt;br /&gt;
&lt;br /&gt;
This is standard Exodus C++ syntax. Only the representation of print as function &amp;amp;quot;print()&amp;amp;quot; instead of a command &amp;amp;quot;print x&amp;amp;quot;, - and the trailing ; gives it away as C++.&lt;br /&gt;
&lt;br /&gt;
Pick programmers are used to this syntax and many will want to stay with this style for whatever reason.&lt;br /&gt;
&lt;br /&gt;
It is a pity that C++ syntax doesnt allow the easy-to-write and easy-to-read pick-like array extract/replace like xxx&amp;amp;lt;1,2,3&amp;amp;gt; or    x&amp;amp;lt;3&amp;amp;gt;=&amp;amp;quot;x&amp;amp;quot;. A great shame but not a killer.&lt;br /&gt;
&lt;br /&gt;
=== Classic OO  &amp;amp;quot;Method Chaining&amp;amp;quot; syntax  ===&lt;br /&gt;
&lt;br /&gt;
 xyz(1,2,3).oconv(&amp;amp;quot;MD20&amp;amp;quot;).print();&lt;br /&gt;
&lt;br /&gt;
or if you prefer ...&lt;br /&gt;
&lt;br /&gt;
 xyz.extract(1,2,3).oconv(&amp;amp;quot;MD20&amp;amp;quot;).print();&lt;br /&gt;
&lt;br /&gt;
This is standard Exodus C++ code.&lt;br /&gt;
&lt;br /&gt;
Variable xyz is one of Exodus&#039; &amp;amp;quot;var&amp;amp;quot; objects and xyz(1,2,3) does an &amp;amp;quot;extract&amp;amp;quot; ... which just produces another var object which is then processed by the oconv method and then printed.&lt;br /&gt;
&lt;br /&gt;
What this actually does is: From variable xyz, extract field 1, multivalue 2, subvalue 3 then oconv it, then print it.&lt;br /&gt;
&lt;br /&gt;
More C++ish style is also acceptable:&lt;br /&gt;
&lt;br /&gt;
 cout&amp;amp;lt;&amp;amp;lt;xyz(1,2,3).oconv(&amp;amp;quot;MD20&amp;amp;quot;);&lt;br /&gt;
&lt;br /&gt;
So a &amp;amp;quot;pick variable&amp;amp;quot; object (or class) Mv has all the various pick functions as methods. This means that you can use OO-like method chaining syntax. This is often the way people think in OO languages. In OO it is considered easier to understand code if you can simply read from left to right and it gives you the operations in the order that they are performed. As much as some people may not like OO method syntax, the many more people today are more comfortable with it than global function style.&lt;br /&gt;
&lt;br /&gt;
== Why not just Python or PHP? ==&lt;br /&gt;
&lt;br /&gt;
Both of these are great languages to start new projects and many people using Pick language will have looked at the possibilities of porting to them.&lt;br /&gt;
&lt;br /&gt;
However there are many subtle differences between the languages and, if you have thousands of lines of old code you dont have time to sort out all the subtle bugs without a complete rewrite with a programmer familiar with the intricacies of both languages.&lt;br /&gt;
&lt;br /&gt;
Generally the objective is to convert often hundreds of thousands of lines of pick basic fairly accurately into another language. Changing syntax is laborious - but doesnt require highly skilled programmers.  However any subtle changes in semantics (how operators and functions work exactly) means that ports are unreliable which is far more costly.&lt;br /&gt;
&lt;br /&gt;
This means that the syntax can be changed when porting as long as not too bad then we will all get used to the new syntax. It also means that the sematics must remain almost identical otherwise people will be hunting down bugs forever. Anybody who has looked at replacing pick will have come to the same conclusion. porting needs meticulous rewriting into the new language mentality due to nuances in how the basic principles of how variables behave.&lt;br /&gt;
&lt;br /&gt;
Python and PHP operators and variables just dont BEHAVE like pick operators and variables in too many cases.&lt;br /&gt;
&lt;br /&gt;
=== Unpredictable overloading ===&lt;br /&gt;
Most modern dynamically typed languages suffer from the catastrophically inappropriate carry over of the concept of operator overload from statically typed languages. This means that you cannot trust what operators like + and * will actually do. Pick-basic, although dynamically typed, does not suffer from this. Pick&#039;s + will always do an arithmetic plus and fail if non-numeric strings are presented to it. Pick&#039;s * will always do an arithmetic multiply and fail if non-numeric strings are presented to it.&lt;br /&gt;
&lt;br /&gt;
You just cannot trust dynamically typed languages that do operator overloading based on dynamic type. Accidents waiting to happen and frequently do.&lt;br /&gt;
&lt;br /&gt;
=== Example PHP problems ===&lt;br /&gt;
&lt;br /&gt;
This is a very tiny list of all the problems that exist. By problem we mean difference in way of processing, not that one way is wrong or right.&lt;br /&gt;
&lt;br /&gt;
==== PHP * operator ====&lt;br /&gt;
&lt;br /&gt;
If you give it a variable that happens to contain a string then, instead of converting it to a number to multiply numerically, it will repeat the string n times! This is fine for php people who are used to it ... but cause chaos when converting and maintaining pick code in php.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;quot;100&amp;amp;quot;*10 in php is &amp;amp;quot;100100100100100100100100100100&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
of course it isnt written as &amp;amp;quot;100&amp;amp;quot;*10 in code .. it is written as mynumber*10 ... BUT what happens depends on what data type happens to be in mynumber during execution&lt;br /&gt;
&lt;br /&gt;
==== PHP . operator (concatenation) ====&lt;br /&gt;
&lt;br /&gt;
It is very astute of PHP to have a special concat operator even if it does seem almost impossible to read to pickies used to a : for concat. Most other languages dont have proper concat operator at all. But then from the point of view of Pick-basic it has the wrong precedence.&lt;br /&gt;
&lt;br /&gt;
php&#039;s concat operator (the dot) has the same precedence as + and - whereas in Pick, concat has a lower precendence than the arithmetic operators. This subtle difference introduces endless opportunity for hard to track down bugs if you try to simply translate large amounts of code from pick-basic to php.&lt;br /&gt;
&lt;br /&gt;
==== Lack of GOTO ====&lt;br /&gt;
&lt;br /&gt;
This makes porting of some existing pick-style programs very difficult (requiring refactoring with consequent risk of bugs). C++ has the GOTO statement.&lt;br /&gt;
&lt;br /&gt;
== Concat operator ==&lt;br /&gt;
&lt;br /&gt;
The ability to concat variables in precisely the same way as pick does is very important if you are going to move pick applications into any other language.&lt;br /&gt;
&lt;br /&gt;
eg in pick if you concat two variables that happen to be numbers - using the pick &amp;amp;quot;:&amp;amp;quot; operator you will still get a string out. ie concat in pick means concat. it DOESNT means add if the arguments happen to be numeric. the concat operator missing in c++ because it is strongly typed and it (and you) can tell from arguments whether it will add or concat&lt;br /&gt;
&lt;br /&gt;
in exodus, &amp;amp;quot;variables&amp;amp;quot; are a c++ class that behaves like a pick variable very very closely so you can port pick basic without being nervous of subtle bugs due to differences in mentality of the other language designers.&lt;br /&gt;
&lt;br /&gt;
== Why Postgres? ==&lt;br /&gt;
&lt;br /&gt;
Open source and technically very open and easy to extend with new datatypes etc.&lt;br /&gt;
&lt;br /&gt;
Postgres is widely available and well supported on all major platform. There has been very strong interest in and development of Postgres since Oracle bought up the MySQL&#039;s underlying database.&lt;br /&gt;
&lt;br /&gt;
Postgres licence in BSD so can be used in anyway you like whatsoever including using bits of the source code in your own code without GPL restrictions.&lt;br /&gt;
&lt;br /&gt;
There is a draft driver to use OpenQM instead of Postgres.&lt;br /&gt;
&lt;br /&gt;
== Why Boost? ==&lt;br /&gt;
&lt;br /&gt;
Best of breed and is the prime place that C++ standards are worked out.&lt;br /&gt;
&lt;br /&gt;
== Portability ==&lt;br /&gt;
&lt;br /&gt;
Written in standard C++. Currently builds with GNU gcc and MSVC 2005+&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Building_on_Windows&amp;diff=986</id>
		<title>Building on Windows</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Building_on_Windows&amp;diff=986"/>
		<updated>2010-11-24T02:09:35Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://asuxoqonyb.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://asuxoqonyb.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==Software to install==&lt;br /&gt;
&lt;br /&gt;
Boost library binaries installer can be obtained from http://code.google.com/p/exodusdb/downloads or boost.org.&lt;br /&gt;
&lt;br /&gt;
# PostgresSQL 8.3&lt;br /&gt;
# TortoiseSVN 1.6.10 (but any version should do)&lt;br /&gt;
# Boost C++ libraries 1.38.0&lt;br /&gt;
# MSVC2005 or MSVS C++ Express Edition 2005 or 2008&lt;br /&gt;
# Windows Platform SDK (only if using Express 2005).&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
# PostgresSQL 9.0&lt;br /&gt;
# TortoiseSVN 1.6&lt;br /&gt;
# Boost C++ libraries 1.43.0&lt;br /&gt;
# MSVC 2010 Express&lt;br /&gt;
&lt;br /&gt;
== Installation Locations ==&lt;br /&gt;
&lt;br /&gt;
If not installing on C: drive, keep everything on the same drive (and with the exception of the exodus source/build folder) in the standard directory tree otherwise you will have to modify the project settings to point to the right include and lib folders.&lt;br /&gt;
&lt;br /&gt;
 D:\Program Files\boost\boost_1_38_0&lt;br /&gt;
 D:\Program Files\PostgreSQL\8.3&lt;br /&gt;
 D:\exodusdb&lt;br /&gt;
&lt;br /&gt;
D:\exodusdb could be in your desktop (D:\Documents and settings\steve\Desktop\exodusdb) but harder to operate some console command building commands if put there&lt;br /&gt;
&lt;br /&gt;
[[Installing Postgres]]&lt;br /&gt;
&lt;br /&gt;
[[Installing Tortoise Subversion]]&lt;br /&gt;
&lt;br /&gt;
[[Installing Boost]]&lt;br /&gt;
&lt;br /&gt;
[[Installing Visual Studio Express C++]]&lt;br /&gt;
&lt;br /&gt;
==Getting Project Exodus onto your Computer:==&lt;br /&gt;
&lt;br /&gt;
Using the command console&lt;br /&gt;
&lt;br /&gt;
# Get a command console&lt;br /&gt;
# c:&lt;br /&gt;
# cd \&lt;br /&gt;
# EITHER: FOR COMMITTER: &amp;amp;quot;svn checkout https://exodusdb.googlecode.com/svn/trunk/ exodusdb&amp;amp;quot;&lt;br /&gt;
# OR: FOR NONE-COMITTER: &amp;amp;quot;svn checkout https://exodusdb.googlecode.com/svn/trunk/ exodusdb --username YOURCOMMITTERACCOUNT@gmail.com&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
Using Windows&lt;br /&gt;
&lt;br /&gt;
Use https and you will be asked for your google account only if and when you commit anything.&lt;br /&gt;
&lt;br /&gt;
# Go to your C: (or other drive) root folder desktop, and create a new folder.&lt;br /&gt;
# Right click on the folder, and click TortoiseSVN, checkout.&lt;br /&gt;
# In the URL field put https://exodusdb.googlecode.com/svn/trunk and click Ok.&lt;br /&gt;
# Another window will pop up, and start listing the files you are importing onto your pc.&lt;br /&gt;
# Click Ok, once loading is finished.&lt;br /&gt;
&lt;br /&gt;
For help on how to use: http://devwiki.neosys.com/index.php/Installing_and_Using_Tortoise_Subversion&lt;br /&gt;
&lt;br /&gt;
==Building Exodus - All==&lt;br /&gt;
&lt;br /&gt;
#Open the exodus_all.sln file in the new folder that you created.&lt;br /&gt;
#In the solution view, right click &amp;amp;quot;Solution exodus_all&amp;amp;quot; and select &amp;amp;quot;Build&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Possible Problems During Building ==&lt;br /&gt;
&lt;br /&gt;
=== error: postgres.h not found ===&lt;br /&gt;
&lt;br /&gt;
Your include folders are not pointing to the postgresql include folder.&lt;br /&gt;
&lt;br /&gt;
=== error: &amp;amp;quot;errcode redefinition ... &amp;amp;quot; in elog.h ===&lt;br /&gt;
&lt;br /&gt;
 Error	1	error C2365: &#039;errcode&#039; : redefinition; previous definition was &#039;typedef&#039;	d:\program files\postgresql\8.3\include\server\utils\elog.h	105&lt;br /&gt;
&lt;br /&gt;
then double click the error to open the offending file and comment out the offending line as follows:&lt;br /&gt;
&lt;br /&gt;
 //extern int	errcode(int sqlerrcode);&lt;br /&gt;
&lt;br /&gt;
=== error: Cannot open include file: &#039;libintl.h&#039; ===&lt;br /&gt;
&lt;br /&gt;
 Compiling...&lt;br /&gt;
 pgexodus.c&lt;br /&gt;
 c:\program files\postgresql\8.3\include\server\c.h(96) : fatal error C1083: Cannot open include file: &#039;libintl.h&#039;: No such file or directory&lt;br /&gt;
&lt;br /&gt;
just make an empty file called libintl.h as follows: (substitute the postgres version that you are using (see postgres.vsprops)&lt;br /&gt;
&lt;br /&gt;
 \Program Files\PostgreSQL\8.3\include\server\port\win32\libintl.h&lt;br /&gt;
&lt;br /&gt;
=== cannot open file libboost... ===&lt;br /&gt;
&lt;br /&gt;
 LINK : fatal error LNK1104: cannot open file &#039;libboost_date_time-vc90-mt-gd-1_38.lib&#039;&lt;br /&gt;
 LINK : fatal error LNK1104: cannot open file &#039;libboost_thread-vc90-mt-gd-1_38.lib&#039;&lt;br /&gt;
 LINK : fatal error LNK1104: cannot open file &#039;libboost_regex-vc90-mt-gd-1_38.lib&#039;&lt;br /&gt;
 LINK : fatal error LNK1104: cannot open file &#039;libboost_filesystem-vc90-mt-gd-1_38.lib&#039;&lt;br /&gt;
 LINK : fatal error LNK1104: cannot open file &#039;libboost_system-vc90-mt-gd-1_38.lib&#039;&lt;br /&gt;
&lt;br /&gt;
Make sure that you have installed the right boost libraries for your version of Visual Studio.&lt;br /&gt;
&lt;br /&gt;
1.43 works with all VS versions&lt;br /&gt;
&lt;br /&gt;
up to 1.42 only works with up to VS2008&lt;br /&gt;
&lt;br /&gt;
*Compiler: Visual C++ 9.0 (Visual Studio 2008) or &lt;br /&gt;
*Variants: Multithread and Multithread Debug&lt;br /&gt;
*Components: (1)Date and Time (2)Filesystem (3)Regex (4)System (5)Thread&lt;br /&gt;
&lt;br /&gt;
=== Declaring the dll in Postgres ===&lt;br /&gt;
&lt;br /&gt;
After copying the pgexodus.dll to the postgres library folder you can run configexodus to configure postgres automatically, or perform the following procedure.&lt;br /&gt;
&lt;br /&gt;
You must login as a postgres superuser to do the following since the C language is not trusted.&lt;br /&gt;
&lt;br /&gt;
In pgadmin or some other tool, select the &amp;amp;quot;POSTGRES&amp;amp;quot; database&lt;br /&gt;
&lt;br /&gt;
Run the following as an sql command to create the necessary special functions that exodus requires to perform dictionary extractions for sort/select etc.&lt;br /&gt;
&lt;br /&gt;
For more info, see Dynamic loading at http://www.postgresql.org/docs/current/static/xfunc-c.html&lt;br /&gt;
&lt;br /&gt;
{{postgres function installation}}&lt;br /&gt;
&lt;br /&gt;
== Granting Exodus access to Postgres ==&lt;br /&gt;
&lt;br /&gt;
Use pgadmin to create a user role with whichever role privileges you wish and a database.&lt;br /&gt;
&lt;br /&gt;
Any roles that you do not grant exodus will have to be performed using pgadmin or other postgres management tools.&lt;br /&gt;
&lt;br /&gt;
 CREATE ROLE exodus LOGIN&lt;br /&gt;
  PASSWORD &#039;somesillysecret&#039;&lt;br /&gt;
  CREATEDB CREATEROLE;&lt;br /&gt;
&lt;br /&gt;
 CREATE DATABASE exodus&lt;br /&gt;
  WITH ENCODING=&#039;UTF8&#039;&lt;br /&gt;
       OWNER=exodus;&lt;br /&gt;
&lt;br /&gt;
== Running Exodus ==&lt;br /&gt;
&lt;br /&gt;
#In the solution explorer view, right click &amp;amp;quot;exodus_cli&amp;amp;quot;&lt;br /&gt;
#Set as startup project.&lt;br /&gt;
#Run Exodus CLI from the menu ... Debug, Start Debugging.&lt;br /&gt;
&lt;br /&gt;
== Possible Problems During Execution ==&lt;br /&gt;
&lt;br /&gt;
=== libpq.dll ===&lt;br /&gt;
&lt;br /&gt;
[[Image:errormessage.JPG]]&lt;br /&gt;
# Check whether libpq.dll is in C:\Program Files\PostgreSQL\8.3\lib\????, if not there then change project properties to reflect version on location in where you installed postgreSQL.&lt;br /&gt;
# Right click on My computer, properties, advanced, environment variables, system variables, scroll down and find Path, double click it. variable value, go to the end of the path and type a semi-colon, then copy and paste the following path after the semi-colon:&amp;amp;lt;br&amp;amp;gt;&amp;amp;lt;b&amp;amp;gt;C:\Program Files\PostgreSQL\8.3\lib\ms&amp;amp;lt;/b&amp;amp;gt; and close Visual Studio C++ Express Edition, and then open again.&lt;br /&gt;
[[Image:PCconfig.JPG]]&lt;br /&gt;
&lt;br /&gt;
=== ssleay32.dll ===&lt;br /&gt;
&lt;br /&gt;
There are dozens of versions of this open source secure sockets library which are widely used by many vendors some of whom very wrongly install them in the windows\system32 folder which has precedence after the local folder but before the path is searched. postgres requires them and will use the wrong version.&lt;br /&gt;
&lt;br /&gt;
The simplest solution is often to delete them.&lt;br /&gt;
&lt;br /&gt;
del c:\Windows\system32\ssleay32.dll&lt;br /&gt;
del c:\Windows\system32\libeay32.dll&lt;br /&gt;
&lt;br /&gt;
If you cannot delete them then try rebooting. If that doesnt work then find out which program has them open using some dll search facility like sysinternals procexplorer.&lt;br /&gt;
&lt;br /&gt;
Another solution is simply to upgrade them to the latest version of the files that you can find on your computer or on the web or from the postgres bin folder. See properties not the file date.&lt;br /&gt;
&lt;br /&gt;
INITIAL VERSION BY GREG BUSH 19/10/2007&lt;br /&gt;
&lt;br /&gt;
==Helpful Websites==&lt;br /&gt;
&lt;br /&gt;
# For help on Microsoft Visual Studio C++ Express Edition go to http://msdn2.microsoft.com/en-gb/express/aa700755.aspx&lt;br /&gt;
# For help on Boost go to http://www.boost.org&lt;br /&gt;
# For help on PostgeSQL go to http://www.postgresql.org/&lt;br /&gt;
# For help on WinRAR go to http://www.win-rar.com/winrarsupport.html&lt;br /&gt;
# For help on TortoiseSVN go to http://tortoisesvn.tigris.org/&lt;br /&gt;
# For how to use tortoiseSVN go to [[Installing_and_Using_Tortoise_Subversion]]&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_Visual_Studio_Express_C%2B%2B&amp;diff=985</id>
		<title>Installing Visual Studio Express C++</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_Visual_Studio_Express_C%2B%2B&amp;diff=985"/>
		<updated>2010-11-24T02:09:27Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://ebytery.co.cc Under Construction! Please Visit Reserve Page. Page Will Be Available Shortly]=&lt;br /&gt;
----&lt;br /&gt;
=[http://ebytery.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
===Downloading &amp;amp;amp; Installing Visual Studio C++ Express Edition:===&lt;br /&gt;
&lt;br /&gt;
NB Platform SDK is required only for MSVC EXPRESS 2005 ... not Express 2008 or Express 2010&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.microsoft.com/express/download/&lt;br /&gt;
# Scroll down the web page till you see 6 different downloads e.g. Visual Basic, SQL Server and Visual C++.&lt;br /&gt;
# Select your language for Visual C++ Express Edition, as soon as you select your language a &amp;amp;quot;File download&amp;amp;quot; window will pop up, click Run.&lt;br /&gt;
# There should be a bit of loading, once finished click Run and again.&lt;br /&gt;
# There should be a minute or two of loading, click Next in the Visual Studio C++ set-up.&lt;br /&gt;
# Accept the terms and click Yes.&lt;br /&gt;
# Tick the Graphical IDE if it hasn&#039;t been ticked already and click Next.&lt;br /&gt;
# Browse for a location in where you would like Visual Studio C++ (although, it would be best to keep the default location in case something need to find the Visual Studio C++ folder and cannot find it in its default location) then click Next.&lt;br /&gt;
# If you have any minor jobs to do, I suggest you do so now as it will take a while, but keep checking on how the installation is coming.&lt;br /&gt;
# Then reboot your computer.&lt;br /&gt;
# Once your pc is ready look for Visual Studio C++ on icon your desktop, if its not there go to start, all programs in the start menu and look for Visual Studio C++ Edition as shown in the example: &amp;amp;lt;br&amp;amp;gt;[[Image:whereVSC++.jpg]]&lt;br /&gt;
# The window below will pop up, telling you that you need to register your copy of Visual Studio C++ Express Edition.&lt;br /&gt;
[[Image:registerVSC++.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Downloading &amp;amp;amp; Installing Platform SDK:===&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.microsoft.com/downloads/details.aspx?familyid=0baf2b35-c656-4969-ace8-e4c0c0716adb&amp;amp;amp;displaylang=en. The page is titled: &amp;amp;quot;Microsoft ® Windows Server® 2003 R2 Platform SDK Web Install&amp;amp;quot;&lt;br /&gt;
# Click on the &amp;amp;lt;b&amp;amp;gt;Continue&amp;amp;lt;/b&amp;amp;gt; button.&lt;br /&gt;
# Depending on your internet browser, you might have to install a plug-in. IF not, scroll down the web page and click on the &amp;amp;lt;B&amp;amp;gt;Continue&amp;amp;lt;/B&amp;amp;gt; button.&lt;br /&gt;
# Click on the link called &amp;amp;quot;Download Files Below&amp;amp;quot; or you can just find the subheading &amp;amp;lt;b&amp;amp;gt;Files in this Download&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
# There will be list of different types of files, depending on your processor to download. &amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* If you have a 64 bit Intel processor download &amp;amp;lt;b&amp;amp;gt;PSDK-ia64.exe&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
#* If you have a 64 bit AMD processor download &amp;amp;lt;b&amp;amp;gt;PSDK-amd64.exe&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
#* If you have another processor type, and it&#039;s listed on the web site but not here choose that Download.&lt;br /&gt;
#* If you have another processor type which is not included in the list on the web page download &amp;amp;lt;b&amp;amp;gt;PSDK-x86.exe&amp;amp;lt;/b&amp;amp;gt;&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* &lt;br /&gt;
Extra: If your on a virtual computer, then check the version on windows you are using.&lt;br /&gt;
# Save the file into your download folder.&lt;br /&gt;
# Then click Run, Then click Run again.&lt;br /&gt;
# At the next window, with two button, click Cancel.&lt;br /&gt;
# Click Next.&lt;br /&gt;
# Agree to the terms, and click Next.&lt;br /&gt;
# Do a custom installation, and click Next.&lt;br /&gt;
&lt;br /&gt;
# You come to a stage in the set-up where it asks &amp;amp;quot;In which driver do you want to save you files to?&amp;amp;quot;. Pick the drive you prefer. To change from drive to drive you change the beginning of the location. So if you want to save SDK in the C drive, leave it as it is and if you want to save SDK to the D drive, change C to D. Or click browse. Then click Next.&lt;br /&gt;
# Click Next again, and wait for the loading.&lt;br /&gt;
# Then continue the download, till the end.&lt;br /&gt;
&lt;br /&gt;
===Update the corewin_express.vsprops file.===&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;One more step is needed to make the Win32 template work in Visual C++ Express. You need to edit the corewin_express.vsprops file - *NOT* the CoreWin.vsprops file (found in C:\Program Files\Microsoft Visual Studio 8\VC\VCProjectDefaults) - and&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
Change the string that reads:&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;AdditionalDependencies=&amp;amp;lt;b&amp;amp;gt;&amp;amp;quot;kernel32.lib&amp;amp;quot;&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;to&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;AdditionalDependencies=&amp;amp;lt;b&amp;amp;gt;&amp;amp;quot;kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib&amp;amp;quot;&amp;amp;lt;/b&amp;amp;gt;&amp;amp;lt;br&amp;amp;gt;&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update Paths in VS prior to VS2010 ===&lt;br /&gt;
&lt;br /&gt;
# Go to Tools, Options, open Project and Solutions and go to VC++ Directoies&lt;br /&gt;
# Your window should look like this:&amp;amp;lt;br&amp;amp;gt;[[Image:VSC++EEoptions.JPG]]&lt;br /&gt;
# Do the following:&lt;br /&gt;
#* Click the drop down menu for Show directories for: and click Include Files, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: &amp;amp;lt;b&amp;amp;gt;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin&amp;amp;lt;/b&amp;amp;gt;  &lt;br /&gt;
#* Click the drop down menu for Show directories for: and click Include Files, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: &amp;amp;lt;b&amp;amp;gt;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include&amp;amp;lt;/b&amp;amp;gt; &lt;br /&gt;
#* Click the drop down menu for Show directories for: and click Library files, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: &amp;amp;lt;b&amp;amp;gt;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
#* Click the drop down menu for Show directories for: and click Include Files, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy and paste the path to the &amp;amp;lt;b&amp;amp;gt;boost_1_34_0&amp;amp;lt;/b&amp;amp;gt; folder you created earlier when installing the Boost libraries.&lt;br /&gt;
#* Click the drop down menu for Show directories for: and click Library Files, now click the button that looks like a yellow folder in the field were the cursor is blinking copy and paste the path to the &amp;amp;lt;b&amp;amp;gt;boost_1_34_0\lib&amp;amp;lt;/b&amp;amp;gt; folder you created earlier when installing the Boost libraries.&lt;br /&gt;
&lt;br /&gt;
== Update Paths in VS2010 ==&lt;br /&gt;
&#039;&#039;TODO:as Platform SDK is not used, clean following from unnessesary paths&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
VC++ Directories are no longer supported in VS2010 through Tools-&amp;amp;gt;Options page. Instead, VS2010 introduces the user settings file (Microsoft.cpp.&amp;amp;lt;Platform&amp;amp;gt;.users.props) to control global settings including Global search path. These files are located at $(USERPROFILE)\appdata\local\microsoft\msbuild\v4.0 directory. Upon migration to VS2010, the custom settings of VC++ Directories from VS2005 or VS2008 are migrated to these user files. These global settings files are imported into all the converted and newly created projects.&lt;br /&gt;
&lt;br /&gt;
#* Switch VS2010 IDE to &amp;amp;quot;Expert&amp;amp;quot; setting (default is &amp;amp;quot;Basic&amp;amp;quot; after the installation): &#039;&#039;&#039;Tools -&amp;amp;gt; Settings -&amp;amp;gt; Expert Settings&#039;&#039;&#039;&lt;br /&gt;
#* Load any project or solution&lt;br /&gt;
#* Open &amp;amp;quot;Properties Manager&amp;amp;quot; dialog: &#039;&#039;&#039;View -&amp;amp;gt; Property Manager&#039;&#039;&#039;&lt;br /&gt;
#* Expand all branches, you should see &#039;&#039;&#039;Microsoft.Cpp.Win32.user&#039;&#039;&#039; leaves&lt;br /&gt;
#* Double Click &amp;amp;quot;Microsoft.Cpp.Win32.user&amp;amp;quot; leaf, and &#039;&#039;&#039;Microsoft.Cpp.Win32.user Property Page Dialog&#039;&#039;&#039; is opened&lt;br /&gt;
#* Do the following:&lt;br /&gt;
#** Click the value of Executable Directories, then small Down button to the right, &amp;amp;lt;Edit...&amp;amp;gt;, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: &amp;amp;lt;b&amp;amp;gt;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin&amp;amp;lt;/b&amp;amp;gt;  &lt;br /&gt;
#** Click the value of Include Directories, then small Down button to the right, &amp;amp;lt;Edit...&amp;amp;gt;, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: &amp;amp;lt;b&amp;amp;gt;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include&amp;amp;lt;/b&amp;amp;gt; &lt;br /&gt;
#** Click the value of Library Directories, then small Down button to the right, &amp;amp;lt;Edit...&amp;amp;gt;, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: &amp;amp;lt;b&amp;amp;gt;C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib&amp;amp;lt;/b&amp;amp;gt;&lt;br /&gt;
#** Click the value of Include Directories, then small Down button to the right, &amp;amp;lt;Edit...&amp;amp;gt;, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy and paste the path to the &amp;amp;lt;b&amp;amp;gt;boost_1_38_0&amp;amp;lt;/b&amp;amp;gt; folder you created earlier when installing the Boost libraries.&lt;br /&gt;
#** Click the value of Include Directories, then small Down button to the right, &amp;amp;lt;Edit...&amp;amp;gt;, now click the button that looks like a yellow folder in the field were the cursor is blinking copy and paste the path to the &amp;amp;lt;b&amp;amp;gt;boost_1_38_0\lib&amp;amp;lt;/b&amp;amp;gt; folder you created earlier when installing the Boost libraries.&lt;br /&gt;
#* Your window should look like this:&amp;amp;lt;br&amp;amp;gt;[[Image:MVS2010ExpressDirs.png]]&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
All the paths updated will be saved in &amp;amp;quot;C:\Documents and Settings\&amp;amp;lt;user&amp;amp;gt;\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.Win32.user.props&amp;amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Generate and build a Win32 application to test your paths.===&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;In Visual C++ Express, the Win32 Windows Application type is disabled in the Win32 Application Wizard. To enable that type, you need to edit the file AppSettings.htm file located in the folder %ProgramFiles%\Microsoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application\html\1033\&amp;amp;quot;.&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;In a text editor comment out lines 441 - 444 by putting a // in front of them as shown here:&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;// WIN_APP.disabled = true;&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;// WIN_APP_LABEL.disabled = true;&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;// DLL_APP.disabled = true;&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt;// DLL_APP_LABEL.disabled = true;&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&amp;amp;lt;br&amp;amp;gt; Save and close the file and open Visual C++ Express. &amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
From the File menu, click New Project. In the New Project dialog box, expand the Visual C++ node in the Product Types tree and then click Win32. Click on the Win32 Console Application template and then give your project a name and click OK. In the Win32 Application Wizard dialog box, make sure that Windows application is selected as the Application type and the ATL is not selected. Click the Finish button to generate the project.&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
Compile by pressing F5.&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
Win32 application should build and run.&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Log_of_an_installation_of_libexodus_on_Centos_5.3&amp;diff=984</id>
		<title>Log of an installation of libexodus on Centos 5.3</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Log_of_an_installation_of_libexodus_on_Centos_5.3&amp;diff=984"/>
		<updated>2010-11-24T02:09:23Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://enececufo.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://enececufo.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
=== Preparation ===&lt;br /&gt;
&lt;br /&gt;
 sudo yum update&lt;br /&gt;
&lt;br /&gt;
 sudo yum install gcc-c++ boost-devel postgresql-devel postgresql-server&lt;br /&gt;
&lt;br /&gt;
Centos needs you to start the database manually. Ubuntu doesnt.&lt;br /&gt;
&lt;br /&gt;
 sudo /etc/init.d/postgresql start&lt;br /&gt;
&lt;br /&gt;
=== Exodus ===&lt;br /&gt;
&lt;br /&gt;
 wget http://exodusdb.googlecode.com/files/exodus-10.10.5.tar.gz&lt;br /&gt;
 tar xvfz exodus-10.10.5.tar.gz&lt;br /&gt;
 cd exodus-10.10.5&lt;br /&gt;
&lt;br /&gt;
 ./configure&lt;br /&gt;
 make &amp;amp;amp;&amp;amp;amp; sudo make install&lt;br /&gt;
&lt;br /&gt;
=== Setting up Postgres for Exodus ===&lt;br /&gt;
&lt;br /&gt;
==== Register the pgexodus plugin ====&lt;br /&gt;
&lt;br /&gt;
Assume identity of a postgres superuser&lt;br /&gt;
&lt;br /&gt;
 sudo su - postgres&lt;br /&gt;
&lt;br /&gt;
On Mac OSX only, ensure postgres can be found. Change 8.3 to your version) and check pg_config can run)&lt;br /&gt;
&lt;br /&gt;
 PATH=/Library/PostgreSQL/8.3/bin/:$PATH&lt;br /&gt;
 pg_config&lt;br /&gt;
&lt;br /&gt;
Log in to postgres as a postgres superuser and connect to database template1&lt;br /&gt;
&lt;br /&gt;
 psql -U postgres -d template1&lt;br /&gt;
 \connect template1&lt;br /&gt;
&lt;br /&gt;
{{postgres function installation}}&lt;br /&gt;
&lt;br /&gt;
Check the functions loaded properly (count them)&lt;br /&gt;
&lt;br /&gt;
 \df exodus*&lt;br /&gt;
&lt;br /&gt;
&amp;amp;lt;pre&amp;amp;gt;&lt;br /&gt;
                                                  List of functions&lt;br /&gt;
 Schema |          Name           |      Result data type       |                 Argument data types&lt;br /&gt;
--------+-------------------------+-----------------------------+-----------------------------------------------------&lt;br /&gt;
 public | exodus_call             | bytea                       | bytea, bytea, bytea, bytea, bytea, integer, integer&lt;br /&gt;
 public | exodus_extract_bytea    | bytea                       | bytea, integer, integer, integer&lt;br /&gt;
 public | exodus_extract_date     | date                        | bytea, integer, integer, integer&lt;br /&gt;
 public | exodus_extract_datetime | timestamp without time zone | bytea, integer, integer, integer&lt;br /&gt;
 public | exodus_extract_sort     | text                        | bytea, integer, integer, integer&lt;br /&gt;
 public | exodus_extract_text     | text                        | bytea, integer, integer, integer&lt;br /&gt;
 public | exodus_extract_text2    | text                        | bytea, integer, integer, integer&lt;br /&gt;
 public | exodus_extract_time     | time without time zone      | bytea, integer, integer, integer&lt;br /&gt;
(8 rows)&lt;br /&gt;
&amp;amp;lt;/pre&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
For more information see http://www.postgresql.org/docs/8.1/static/app-psql.html&lt;br /&gt;
&lt;br /&gt;
==== Create a user and database for exodus ====&lt;br /&gt;
&lt;br /&gt;
Use the example password for now to avoid further configuration in exodus.&lt;br /&gt;
&lt;br /&gt;
 CREATE ROLE exodus LOGIN&lt;br /&gt;
  PASSWORD &#039;somesillysecret&#039;&lt;br /&gt;
  CREATEDB CREATEROLE;&lt;br /&gt;
 CREATE DATABASE exodus&lt;br /&gt;
  WITH ENCODING=&#039;UTF8&#039;&lt;br /&gt;
    OWNER=exodus;&lt;br /&gt;
&lt;br /&gt;
Quit postgres command prompt&lt;br /&gt;
&lt;br /&gt;
 \q&lt;br /&gt;
&lt;br /&gt;
==== Ensure Exodus can logon to postgres ====&lt;br /&gt;
&lt;br /&gt;
===== Edit pg_hba.conf =====&lt;br /&gt;
&lt;br /&gt;
Unless you are only going to run Exodus as user &amp;amp;quot;exodus&amp;amp;quot; from the local machine, grant login from 127.0.0.1 using username/encrypted password (instead of only &amp;amp;quot;ident sameuser&amp;amp;quot; which means the logged-in username without password) For more info see http://developer.postgresql.org/pgdocs/postgres/auth-pg-hba-conf.html&lt;br /&gt;
&lt;br /&gt;
Redhat/Centos/MacOSX&lt;br /&gt;
 nano ~/data/pg_hba.conf&lt;br /&gt;
or for Ubuntu&lt;br /&gt;
 nano /etc/postgresql/8.3/main/pg_hba.conf&lt;br /&gt;
&lt;br /&gt;
Allow any postgres user to login with a password via interprocess tcp/ip.&lt;br /&gt;
&lt;br /&gt;
comment out the following line.&lt;br /&gt;
&lt;br /&gt;
 #host    all         all         127.0.0.1/32          ident sameuser&lt;br /&gt;
&lt;br /&gt;
and add the following:&lt;br /&gt;
&lt;br /&gt;
 host    all         all         127.0.0.1/32           md5&lt;br /&gt;
&lt;br /&gt;
quit postgres user&lt;br /&gt;
&lt;br /&gt;
 exit&lt;br /&gt;
&lt;br /&gt;
Reload Postgres&lt;br /&gt;
&lt;br /&gt;
Redhat/Centos&lt;br /&gt;
 sudo /etc/init.d/postgresql reload&lt;br /&gt;
or Ubuntu&lt;br /&gt;
 sudo /etc/init.d/postgresql-8.3 reload&lt;br /&gt;
or MacOSX&lt;br /&gt;
 sudo su postgres&lt;br /&gt;
 /Library/PostgreSQL/8.3/bin/pg_ctl reload -D /Library/PostgreSQL/8.3/data&lt;br /&gt;
 exit&lt;br /&gt;
&lt;br /&gt;
=== Testing ===&lt;br /&gt;
&lt;br /&gt;
{{exodus console first steps}}&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Why_is_Exodus_dependent_on_Boost_and_not_Qt%3F&amp;diff=983</id>
		<title>Why is Exodus dependent on Boost and not Qt?</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Why_is_Exodus_dependent_on_Boost_and_not_Qt%3F&amp;diff=983"/>
		<updated>2010-11-24T02:09:13Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://akekuqegify.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://akekuqegify.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
=== Why is Exodus dependent on Boost and not Qt ===&lt;br /&gt;
&lt;br /&gt;
Exodus uses the Boost libraries because they offer the least restrictive and most standard C++ environment while still promising excellent portability.&lt;br /&gt;
&lt;br /&gt;
Exodus can be both developed and used on almost any platform including the Qt creator cross platform C++ IDE. It is not necessary that Exodus uses Qt in order that Exodus can be used in the Qt environment.&lt;br /&gt;
&lt;br /&gt;
There is a frozen Qt version of Exodus in the subversion tree but it was decided that what Qt offers Exodus can be obtained better from Boost.&lt;br /&gt;
&lt;br /&gt;
Unicode: Exodus does proper Unicode without requiring the ICU library just like Qt does – by calling native operating system functions for the key collation and character conversions.&lt;br /&gt;
&lt;br /&gt;
Standards: Implementing Exodus with the standard C++ wide character string instead of the qt string should make Exodus more portable in the long term.&lt;br /&gt;
&lt;br /&gt;
Portability:  It is very difficult to forecast where Exodus needs to go in the future but we can look at some interesting platforms coming up. It appears that Boost can be built on Nokia and Windows CE sufficient for Exodus. Nokia is delivering the boost libraries ready-made on its latest s60 version.&lt;br /&gt;
&lt;br /&gt;
Flexibility: Boost provides what Exodus needs with almost no restrictions. QtCore likes to exist as a separate runtime library/dll. Boost is just as happy being statically linked into Exodus. This means that Exodus can itself be statically linked into programs and therefore totally disappear into the background.&lt;br /&gt;
&lt;br /&gt;
General comparison: Qt’s unique appeal is its portable UI and its cross platform development tools. Boost is more the ground zero of developing C++ standards and is therefore more broadly (not numerically) important than Qt which is can be viewed as just a very successful tool rooted in the Linux desktop.&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_and_Using_Tortoise_Subversion&amp;diff=982</id>
		<title>Installing and Using Tortoise Subversion</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_and_Using_Tortoise_Subversion&amp;diff=982"/>
		<updated>2010-11-24T02:09:10Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://ecoquvejoz.co.cc Under Construction! Please Visit Reserve Page. Page Will Be Available Shortly]=&lt;br /&gt;
----&lt;br /&gt;
=[http://ecoquvejoz.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
On windows download and install the superb tortoise svn client from http://tortoisesvn.tigris.org/&lt;br /&gt;
 &lt;br /&gt;
=== Getting the initial files ===&lt;br /&gt;
 &lt;br /&gt;
#create a folder&lt;br /&gt;
#open it&lt;br /&gt;
#right click empty space and choose SVN Checkout&lt;br /&gt;
#in &amp;amp;quot;url of repository&amp;amp;quot; enter http://svn.neosys.com/svn/ to get all projects, branches and versions&lt;br /&gt;
&lt;br /&gt;
You can use your browser to browse the subversion url too but that isnt the objective here.&lt;br /&gt;
&lt;br /&gt;
=== Committing ===&lt;br /&gt;
 &lt;br /&gt;
*after making any changes right click on your new folder and choose Commit&lt;br /&gt;
*files you delete are not deleted on the repository - you have to use repo browser below to do that&lt;br /&gt;
*new files you want to add to the repo have to be ticked.&lt;br /&gt;
*You cannot commit files that other people have updated since you got them - use Update to resolve before&lt;br /&gt;
 &lt;br /&gt;
=== Getting other peoples commits ===&lt;br /&gt;
 &lt;br /&gt;
#right click on your folder and choose Update - you will get diffs to resolve any conflicts with changes you made&lt;br /&gt;
 &lt;br /&gt;
=== To manage the repository ===&lt;br /&gt;
 &lt;br /&gt;
#Right click anywhere and choose Subversion, Repo browser.&lt;br /&gt;
#You can cut and paste files, folder etc. (all smoke and mirrors they are not actually copied) Branches and versions are just copied folders&lt;br /&gt;
 &lt;br /&gt;
=== Documentation ===&lt;br /&gt;
 &lt;br /&gt;
*right click desktop, tortoisesvn, help&lt;br /&gt;
*http://svnbook.red-bean.com/ - includes a reorientation appendix for CVS users&lt;br /&gt;
*this is the very basics, there are many many many useful features&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Why_does_Exodus_use_autotools_and_not_Cmake%3F&amp;diff=981</id>
		<title>Why does Exodus use autotools and not Cmake?</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Why_does_Exodus_use_autotools_and_not_Cmake%3F&amp;diff=981"/>
		<updated>2010-11-24T02:09:06Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://ocilufic.co.cc Under Construction! Please Visit Reserve Page. Page Will Be Available Shortly]=&lt;br /&gt;
----&lt;br /&gt;
=[http://ocilufic.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
=== Why does Exodus use autotools and not cmake ===&lt;br /&gt;
&lt;br /&gt;
Primarily because it almost completely solves all the issues of building, packaging and installing on any Linux/Unix/Mingw system whereas Cmake only does building. If all you want is a simple portable build system then Cmake is probably  simpler than autotools - but then you are still left with the far larger problem of creating packages for installation on the huge variety of target operating systems.&lt;br /&gt;
&lt;br /&gt;
Building and packaging on Windows can either be done using autotools under cygwin and/or mingw or it can also be done using MS tools like Visual Studio. Packaging and installing on Windows is much less of an issue on Windows due to its long term binary stability and an NSIS package will be developed shortly since the free version of VS cannot run Exodus’ VS deployment project.&lt;br /&gt;
&lt;br /&gt;
The well known steep learning curve for autotools is only required to setup the initial configure.ac and Makefile.am files and this has already been accomplished.&lt;br /&gt;
&lt;br /&gt;
The strategy of installing from source instead of binaries is more suited to projects in their early stages since it favours developers of Exodus instead of users of Exodus. In the future, Exodus may produce binary packages targeting specific popular operating systems in the usual way. Building from source requires running a set of classic commands at a console with root privileges and can be done by anybody with basic IT skills. The process does not automatically install the required dependencies (c++ compiler and acceptable versions of the boost and postgres libraries) and will not proceed until they are installed.&lt;br /&gt;
&lt;br /&gt;
 wget http://www.neosys.com/support/exodus_all-9.6.tar.gz&lt;br /&gt;
 tar xvfz exodus_all-9.6.tar.gz&lt;br /&gt;
 cd exodus_all-9.6&lt;br /&gt;
&lt;br /&gt;
 ./configure&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
If you feel like patching any of the source code files then you can easily recompile and reinstall by repeating the last two steps.&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
 sudo make install&lt;br /&gt;
&lt;br /&gt;
Perhaps best of all you can trivially package up your new version into a installable gz file. This provides a fundamental freedom to modify and propagate software.&lt;br /&gt;
&lt;br /&gt;
 make dist&lt;br /&gt;
&lt;br /&gt;
... and send your new .tar.gz file to your appreciative fans!&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Template_talk:Exodus_console_first_steps&amp;diff=980</id>
		<title>Template talk:Exodus console first steps</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Template_talk:Exodus_console_first_steps&amp;diff=980"/>
		<updated>2010-11-24T02:09:01Z</updated>

		<summary type="html">&lt;p&gt;Anecada: Created page with &amp;#039;---- &amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height…&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://ebytery.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://ebytery.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Unorganised_notes_about_programming_in_Exodus&amp;diff=979</id>
		<title>Unorganised notes about programming in Exodus</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Unorganised_notes_about_programming_in_Exodus&amp;diff=979"/>
		<updated>2010-11-24T02:08:59Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://awuhodynaro.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://awuhodynaro.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
The following is just a scrap pad of ideas to be incorporated in documentation&lt;br /&gt;
&lt;br /&gt;
== new syntax possibility ==&lt;br /&gt;
&lt;br /&gt;
Some will hate this. Some will love it.&lt;br /&gt;
&lt;br /&gt;
 //mass declaration and mass initialisation.&lt;br /&gt;
 var abc,xyz,qwe;&lt;br /&gt;
 abc=xyz=qwe=&amp;amp;quot;&amp;amp;quot;;&lt;br /&gt;
&lt;br /&gt;
== C++ exodus ==&lt;br /&gt;
&lt;br /&gt;
#Just because you can write C in C++ doesnt mean you should! Dont include C libraries and you wont be able to.&lt;br /&gt;
#Just because you can write C++ in Exodus programs doesnt mean you should! Dont include C++ libraries and you wont be able to.&lt;br /&gt;
&lt;br /&gt;
if you are only familiar with c then c++ has some improvements for examples like you can declare your variables at the point they are used (and not at the top of the routine like c)&lt;br /&gt;
&lt;br /&gt;
unlike many modern languages c++ retains the infamous goto statement making porting from pick basic much easier. you have to avoid declaring new variables (var xyz) within the scope of the jump but this is easily accomplished by moving the declaration just above the jump zone.&lt;br /&gt;
&lt;br /&gt;
better to put print(a, &amp;amp;quot; &amp;amp;quot;, b) than print(a ^ &amp;amp;quot; &amp;amp;quot; ^ b) because it is faster to do three outputs instead of two concatenations and one output&lt;br /&gt;
&lt;br /&gt;
The following will compile but give throw &amp;amp;quot;unassigned variable&amp;amp;quot; on execution.&lt;br /&gt;
&lt;br /&gt;
var foo=foo.sum();&lt;br /&gt;
&lt;br /&gt;
strings must all be wrapped in &amp;amp;quot; double quotes and single quoted strings are not allowed - except for single character strings. To puta double quote character within a string you must prefix them with \ to be like \&amp;amp;quot;.&lt;br /&gt;
&lt;br /&gt;
swap, match and index have an additional argument that can contain r for regular expression and ri for case insensitive regular expression. i by itself doesnt work at the moment.&lt;br /&gt;
&lt;br /&gt;
note the double backslashes in regular expression strings (until we get the R string prefix for &amp;amp;quot;raw strings&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
 if (word.match(&amp;amp;quot;\\d+&amp;amp;quot;,&amp;amp;quot;ri&amp;amp;quot;)) ...&lt;br /&gt;
&lt;br /&gt;
using the results or comparisons as 1 or 0 is not supported so &amp;amp;quot;xxx+(a eq b)&amp;amp;quot; wont compile.&lt;br /&gt;
&lt;br /&gt;
you could put the ugly &amp;amp;quot;xxx+(a eq b?1:0)&amp;amp;quot; but recoding is probably better ...eg &amp;amp;quot;if (a eq b) xxx+=1;&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
== better than pick basic ==&lt;br /&gt;
&lt;br /&gt;
there are a series of compromises in exodus design which are forced by the limitations of c++ syntax. with time you get used to these.&lt;br /&gt;
&lt;br /&gt;
offset against the disadvantages are many advantages at multiple levels:&lt;br /&gt;
&lt;br /&gt;
=== local subroutines have a) parameters and b) local variables ===&lt;br /&gt;
&lt;br /&gt;
gosub/return style local subroutines can have parameters and their variables are private by nature. this allows monolithic programming with many subroutines in one file/compilation unit without all variables being global.&lt;br /&gt;
&lt;br /&gt;
one way of looking at this is that you can now put all your associated external routines in the main program text and are not required to use separate edit/compile to get parameterisation and private variables.&lt;br /&gt;
&lt;br /&gt;
another way of looking at this is that what used to be your external functions and subroutines (but are now are implemented as internal functions) now have access to the global variables of your main program without requiring setup of common variables.&lt;br /&gt;
&lt;br /&gt;
=== many functions and subroutines per file ===&lt;br /&gt;
&lt;br /&gt;
pick only allows one function or subroutine per file. c++ is happy with many.&lt;br /&gt;
&lt;br /&gt;
in some cases, editing and compiling groups of associated subroutines and functions in a single file makes it easier to manage your source code base.&lt;br /&gt;
&lt;br /&gt;
=== faster conditional expressions ===&lt;br /&gt;
&lt;br /&gt;
the AND and OR operators &amp;amp;quot;short circuit&amp;amp;quot; ie do not evaluate the right hand side if the evaluation of the left hand side predetermines the final result. For example, in the evaluation of &amp;amp;quot;aa() and bb()&amp;amp;quot;, if aa() returns false then bb() will never be evaluated.&lt;br /&gt;
&lt;br /&gt;
=== multiple programming paradigms ===&lt;br /&gt;
&lt;br /&gt;
object orientated programming - if you want. functional programming - if you want. procedural programming - if you want.&lt;br /&gt;
&lt;br /&gt;
for application level programming you can follow a standard of only allowing the exodus header file to be included. not including any of the traditional c++ headers like &amp;amp;lt;iostream&amp;amp;gt;, &amp;amp;lt;string&amp;amp;gt;, &amp;amp;lt;vector&amp;amp;gt; etc. will prevent programmers getting out of their control. If you want to merge pick with traditional c++ programming you are free to include and header files you like. Just make sure to include the exodus.h AFTER all the other headers.&lt;br /&gt;
&lt;br /&gt;
=== low level programming and interfacing with other languages ===&lt;br /&gt;
&lt;br /&gt;
many operating system utilities can be programmed directly in c++ allowing you to do system programming in pick basic syntax&lt;br /&gt;
&lt;br /&gt;
most languages allow interfacing at the C/C++ level so exodus can be used for this directly without depending on any interfaces.&lt;br /&gt;
&lt;br /&gt;
== fieldstorer ==&lt;br /&gt;
&lt;br /&gt;
fieldstorer (but not fieldstore) is an “statement-like” or “mutator” function which modifies the existing string instead of creating a new one. It can be implemented internally to be MUCH faster than xx=fieldstore(xx,”*”,2,2,”ii”) which first produces a new string and destroys the old one.&lt;br /&gt;
&lt;br /&gt;
Actually I havent implemented this optimisation internally for all the mutator functions so a performance test might not reveal any difference YET. See a tiny discussion of this issue in on the OO syntax page on code.google wiki.&lt;br /&gt;
&lt;br /&gt;
Pick&lt;br /&gt;
&lt;br /&gt;
XX=’aa*bb*cc*dd’&lt;br /&gt;
XX=fieldstorer(XX,’*’,2,2,’gg’)&lt;br /&gt;
PRINT XX&lt;br /&gt;
&lt;br /&gt;
aa*gg**dd&lt;br /&gt;
&lt;br /&gt;
Exodus&lt;br /&gt;
&lt;br /&gt;
var xx=&amp;amp;quot;aa*bb*cc*dd&amp;amp;quot;;&lt;br /&gt;
fieldstorer(xx,&amp;amp;quot;*&amp;amp;quot;,2,2,”gg”);&lt;br /&gt;
printl(xx);&lt;br /&gt;
&lt;br /&gt;
aa*gg**dd&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== substr and splice ==&lt;br /&gt;
&lt;br /&gt;
It is with great sadness that I announce the death of multivalue/pick basic&#039;s beautifully concise square bracket syntax [x,y] since it is not available with two parameters in the family of c-like languages.&lt;br /&gt;
&lt;br /&gt;
There is some ugly (and possibly even poor) design in the solutions I have come up with so until the api is frozen .. now is the time for eulogies and pulpit admonishments to the next generation.&lt;br /&gt;
&lt;br /&gt;
[]is replaced by the ugly sisters substr and splice and their mutator cousins substrer and splicer.&lt;br /&gt;
&lt;br /&gt;
substr/substrer is generally the replacement for [] found on the right of the assign like “xx=yy[start,len]” since it extracts a section of characters&lt;br /&gt;
&lt;br /&gt;
splice/splicer is generally the replacement for [] found on the left of the assign like “xx[start,len]=yy” since it replaces a section of characters&lt;br /&gt;
&lt;br /&gt;
The name substr was chosen similar to many other languages c++, javascript, php, perl, basic etc&lt;br /&gt;
&lt;br /&gt;
The name splice was chosen because the obvious name &amp;amp;quot;replace&amp;amp;quot;, which is in use in some other languages to replace characters, is already a classic dynamic array function – and splice has a similar function in arrays in many languages.&lt;br /&gt;
&lt;br /&gt;
SUBSTRER is a “statement like” or “mutator” function designed to replace pick xx[start,len]=’’ and perhaps a bit more.&lt;br /&gt;
&lt;br /&gt;
One way of thinking about it is that it cuts off some of the beginning … or some of the ending … or some of both … FAST!&lt;br /&gt;
&lt;br /&gt;
substrer with two parameters example&lt;br /&gt;
&lt;br /&gt;
var xx=”abcde”;&lt;br /&gt;
substrer(xx,3,2);&lt;br /&gt;
printl(xx);&lt;br /&gt;
&lt;br /&gt;
cd&lt;br /&gt;
&lt;br /&gt;
substrer with one parameter example&lt;br /&gt;
&lt;br /&gt;
var xx=”abcde”;&lt;br /&gt;
substrer(xx,3);&lt;br /&gt;
printl(xx);&lt;br /&gt;
&lt;br /&gt;
cde&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== OS level command shell ==&lt;br /&gt;
&lt;br /&gt;
the bash command line shell treats various characters specially including &amp;amp;quot; &#039; ( ) &amp;amp;lt; &amp;amp;gt; $ ! and others. You must escape/prefix them by \ to stop bash from messing with them.&lt;br /&gt;
&lt;br /&gt;
so&lt;br /&gt;
&lt;br /&gt;
list file with field = &amp;amp;quot;xxx&amp;amp;quot; (S)&lt;br /&gt;
&lt;br /&gt;
becomes&lt;br /&gt;
&lt;br /&gt;
list file with field = \&amp;amp;quot;xxx\&amp;amp;quot; \(S\)&lt;br /&gt;
&lt;br /&gt;
or you can quote everything after the first word of the command. Single quotes allows all special characters to be used. Double quotes allows bash to continue to mess around with special cdoing macro expansion etc.&lt;br /&gt;
&lt;br /&gt;
list &#039;file with field = &amp;amp;quot;xxx&amp;amp;quot; (S)&#039;&lt;br /&gt;
&lt;br /&gt;
list &amp;amp;quot;file with field = &#039;xxx&#039; (S)&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
exodus allows the use {} can be used for () brackets if at the end of the command&lt;br /&gt;
&lt;br /&gt;
== Space no longer means OCONV ==&lt;br /&gt;
&lt;br /&gt;
in classic multivalue basic two strings separated by space mean use the second as an oconv format to convert the first&lt;br /&gt;
&lt;br /&gt;
 print &#039;12345&#039; &#039;D&#039;&lt;br /&gt;
&lt;br /&gt;
gives&lt;br /&gt;
&lt;br /&gt;
 18 OCT 2001&lt;br /&gt;
&lt;br /&gt;
but in exodus, c++ quoted strings are concatenated&lt;br /&gt;
&lt;br /&gt;
 print(&amp;amp;quot;12345&amp;amp;quot; &amp;amp;quot;D2&amp;amp;quot;);&lt;br /&gt;
&lt;br /&gt;
gives&lt;br /&gt;
&lt;br /&gt;
 12345D2&lt;br /&gt;
&lt;br /&gt;
Usually the first bit is a variable&lt;br /&gt;
&lt;br /&gt;
 date1=12345&lt;br /&gt;
 print date1 &amp;amp;quot;D2&amp;amp;quot;&lt;br /&gt;
&lt;br /&gt;
but the equivalent in Exodus will not compile because Exodus doesnt understand the space&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 var date1=123345;&lt;br /&gt;
 print(datex &amp;amp;quot;D&amp;amp;quot;); &amp;amp;lt;- compilation error&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You need to explicitly call oconv&lt;br /&gt;
&lt;br /&gt;
 var date1=123345;&lt;br /&gt;
 print(oconv(datex,&amp;amp;quot;D&amp;amp;quot;));&lt;br /&gt;
&lt;br /&gt;
== Massive String Text ==&lt;br /&gt;
&lt;br /&gt;
Spaces between quoted strings in Exodus result in string concatenation at compile time. This is inherited from C++.&lt;br /&gt;
&lt;br /&gt;
 var xx=&amp;amp;quot;word1&amp;amp;quot; &amp;amp;quot;word2&amp;amp;quot; &amp;amp;quot;word3&amp;amp;quot;;&lt;br /&gt;
&lt;br /&gt;
Compile-time string concatenation is useful since long text can be created on multiple lines without requiring any concatenation operator&lt;br /&gt;
&lt;br /&gt;
&amp;amp;lt;pre&amp;amp;gt;&lt;br /&gt;
 var xx=  &amp;amp;quot;line1 line1 line1 line1&amp;amp;quot;&lt;br /&gt;
	&amp;amp;quot;\nline2 line2 line2 line2&amp;amp;quot;&lt;br /&gt;
	&amp;amp;quot;\nline3 line3 line3 line3&amp;amp;quot;&lt;br /&gt;
	&amp;amp;quot;\nline4 line4 line4 line4&amp;amp;quot;&lt;br /&gt;
	&amp;amp;quot;\nline5 line5 line5 line5&amp;amp;quot;;&lt;br /&gt;
&amp;amp;lt;/pre&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can only use Exodus ^ concatenation operator when either the left or the right bit is an Exodus variable (or the result of an operation on an Exodus variable)&lt;br /&gt;
&lt;br /&gt;
the following will not compile because neither the left or right operand of ^ is an Exodus var&lt;br /&gt;
&lt;br /&gt;
 var xx=&amp;amp;quot;word2&amp;amp;quot;^&amp;amp;quot;word2&amp;amp;quot;;  //compilation error&lt;br /&gt;
&lt;br /&gt;
the following will compile&lt;br /&gt;
&lt;br /&gt;
 var yy=&amp;amp;quot;word1&amp;amp;quot;;&lt;br /&gt;
 var zz=word1^&amp;amp;quot;word2&amp;amp;quot;;&lt;br /&gt;
&lt;br /&gt;
 var xx=var(&amp;amp;quot;word1&amp;amp;quot;)^&amp;amp;quot;word2&amp;amp;quot;;&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Talk:Building_on_Mac&amp;diff=978</id>
		<title>Talk:Building on Mac</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Talk:Building_on_Mac&amp;diff=978"/>
		<updated>2010-11-24T02:08:59Z</updated>

		<summary type="html">&lt;p&gt;Anecada: Created page with &amp;#039;---- &amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height…&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://esinyqynyso.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://esinyqynyso.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Wishlist&amp;diff=977</id>
		<title>Wishlist</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Wishlist&amp;diff=977"/>
		<updated>2010-11-24T02:08:51Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://awibuky.co.cc UNDER COSTRUCTION, PLEASE SEE THIS POST IN RESERVE COPY]=&lt;br /&gt;
----&lt;br /&gt;
=[http://awibuky.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==Basic Pick==&lt;br /&gt;
*Sort/Select to work on multivalues&lt;br /&gt;
&lt;br /&gt;
==Development Tools==&lt;br /&gt;
*Exodus&#039;s &amp;amp;quot;edit&amp;amp;quot; and &amp;amp;quot;compile&amp;amp;quot; commands to automatically generate and use .h files so that pick&#039;s external subroutines are simulated with minimal technical knowledge. #include in this case will be like the equivalent &amp;amp;quot;using xyz&amp;amp;quot; in other languages eg automatically include a tree of headers.&lt;br /&gt;
*Dynamic loading/unloading of subroutines&lt;br /&gt;
&lt;br /&gt;
test&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=How_does_Exodus_handle_Unicode&amp;diff=975</id>
		<title>How does Exodus handle Unicode</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=How_does_Exodus_handle_Unicode&amp;diff=975"/>
		<updated>2010-11-24T02:08:38Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://axufizyfe.co.cc UNDER COSTRUCTION, PLEASE SEE THIS POST IN RESERVE COPY]=&lt;br /&gt;
----&lt;br /&gt;
=[http://axufizyfe.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
All text in Exodus is treated as unicode. This results in culturally correct sorting in all languages and scripts. Ordering is a,A,b,B and not A,B,a,b. Exodus&#039; case conversion also works in all scripts that have the concept of case. Exodus doesnt have any case insensitive versions of its functions at the present time since this is not traditional Pick. These might be added at a later date.&lt;br /&gt;
&lt;br /&gt;
To compare strings and convert case in cultural way, Exodus uses whatever operating system unicode aware functions are available. Qt uses the same strategy so Exodus is in good company. Postgres is probably the same. This is probably more portable in the long run than depending on a library such as ICU which may not be available.&lt;br /&gt;
&lt;br /&gt;
Exodus uses standard C++ STL wchar/wstring strings internally to achieve maximal portability. This means that it is UTF-16 on windows and UTF-32 on Unix/Linux platforms including OSX. If necessary, Exodus could be converted to use UTF-16 on those *nix platforms which have a C++ compiler (eg gcc4) that supports a 16 bit wchar.&lt;br /&gt;
&lt;br /&gt;
Why the focus on UTF-16? From the programming language point of view, Windows, Java, ICU, and QT all use UTF-16 for Unicode while only Unix OS remainly firmly UTF-8 at heart. Even Unix is increasingly supporting UTF-16 eg in gcc4. In the end, Exodus is trying to ease application level programming, which UTF-16 does much better than UTF-8, while minimising inter-UTF type conversions at program interfaces, even though such conversions are very fast and mechanical. UTF-8 looks like remaining the encoding of choice for inter-system data transfer (despite its excessive storage requirements for indo-oriental scripts) probably due to its backward compatibility with ASCII but also since, unlike UTF-16 and UTF-32, it has no &amp;amp;quot;endian&amp;amp;quot; issue.&lt;br /&gt;
&lt;br /&gt;
Most databases, including postgres, are UTF8 with the exception of MSSQL which is UTF16.&lt;br /&gt;
&lt;br /&gt;
Character indexing: Jbase&#039;s JBASIC language&#039;s in-memory representation of strings is UTF8 - which means that indexing&lt;br /&gt;
characters requires a slow count from the beginning of the string unless it&lt;br /&gt;
has some very clever programming. Exodus, and I think Qt, have a dirty rotten cheat regarding accessing&lt;br /&gt;
characters in a string by numerical position in that we both ignore the rare&lt;br /&gt;
Unicode &amp;amp;quot;surrogate characters&amp;amp;quot; which occupy four bytes. Many people don’t&lt;br /&gt;
realise that UTF16 characters are either 2 or 4 bytes long. Both&lt;br /&gt;
Exodus, and I think Qt treats these four byte &amp;amp;quot;surrogate pairs&amp;amp;quot; as if they&lt;br /&gt;
were two separate 2 byte characters although this not allowed by the definition&lt;br /&gt;
of UTF16. The massive benefit though is the ability to continue to treat&lt;br /&gt;
text strings as randomly accessible arrays of characters using [] or .at()&lt;br /&gt;
and substr() and their ilk. Theoretically text strings should never be&lt;br /&gt;
accessed randomly but converting all the old software to use iterators that treat strings as streams would be a pain.&lt;br /&gt;
&lt;br /&gt;
SAP got a lot of flak for standardising on UTF32 for all in-memory structures at one point. SAP clients were complaining about having to upgrade servers everywhere due to memory issues. It might have been an Oracle &amp;amp;quot;negative PR&amp;amp;quot; campaign but there is generally a lot of resistance to UTF32 despite the fact that it resolve the character indexing issue perfectly. UTF32 is said to typically double memory throughput compared to UTF16 and triple it compared to UTF8. It is speculated that this defeats CPU memory caching and causes a noticably serious impact on CPU speed.&lt;br /&gt;
&lt;br /&gt;
== Some interesting information from the ICU project ==&lt;br /&gt;
&lt;br /&gt;
http://userguide.icu-project.org/icufaq&lt;br /&gt;
&lt;br /&gt;
=== How do I index into a UTF-16 string? ===&lt;br /&gt;
&lt;br /&gt;
Typically, indexes and offsets in strings count string units, not characters (although in c and java they have a char type).&lt;br /&gt;
&lt;br /&gt;
For example, in old-fashioned MBCS strings, you would count indexes and offsets by bytes, not by the variable-width character count. In UTF-16, you do the same, just count 16-bit units (in ICU: UChar).&lt;br /&gt;
&lt;br /&gt;
=== What is the performance difference between UTF-8 and UTF-16? ===&lt;br /&gt;
&lt;br /&gt;
Most of the time, the memory throughput of the hard drive and RAM is the main performance constraint. UTF-8 is 50% smaller than UTF-16 for US-ASCII, but UTF-8 is 50% larger than UTF-16 for East and South Asian scripts. There is no memory difference for Latin extensions, Greek, Cyrillic, Hebrew, and Arabic.&lt;br /&gt;
&lt;br /&gt;
For processing Unicode data, UTF-16 is much easier to handle. You get a choice between either one or two units per character, not a choice among four lengths. UTF-16 also does not have illegal 16-bit unit values, while you might want to check for illegal bytes in UTF-8. Incomplete character sequences in UTF-16 are less important and more benign. If you want to quickly convert small strings between the different UTF encodings or get a UChar32 value, you can use the macros provided in utf.h and its siblings utf8.h and utf16.h. For larger or partial strings, please use the conversion API.&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Installing_all_components_for_project_Exodus&amp;diff=974</id>
		<title>Installing all components for project Exodus</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Installing_all_components_for_project_Exodus&amp;diff=974"/>
		<updated>2010-11-24T02:08:33Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://acisabukody.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://acisabukody.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
==Software to install:==&lt;br /&gt;
&lt;br /&gt;
# Visual Studio C++ Express Edition.&lt;br /&gt;
# WinRAR (If you don&#039;t have).&lt;br /&gt;
# PostgresSQL.&lt;br /&gt;
# TortoiseSVN 9(32 bit).&lt;br /&gt;
# Boost c++ libraries 1.34.0 .&lt;br /&gt;
&lt;br /&gt;
==Downloading &amp;amp;amp; Installing Visual studio C++ Express Edition:==&lt;br /&gt;
&lt;br /&gt;
# Go to http://msdn2.microsoft.com/en-gb/express/aa700735.aspx&lt;br /&gt;
# Now click on the download button near the top right hand of your screen.&lt;br /&gt;
# Scroll down the web page till you see 6 different downloads e.g. Visual Basic, SQL Server and Visual C++.&lt;br /&gt;
# Select your language for Visual C++ 2005 Express Edition, as soon as you select your language a &amp;amp;quot;File download&amp;amp;quot; window will pop up, click Run.&lt;br /&gt;
# There should be a bit of loading, once finished click Run and again.&lt;br /&gt;
# There should be a minute or two of loading, click Next in the Visual Studio C++ set-up.&lt;br /&gt;
# Accept the terms and click Yes.&lt;br /&gt;
# Tick the Graphical IDE if it hasn&#039;t been ticked already and click Next.&lt;br /&gt;
# Browse for a location in where you would like Visual Studio C++ (although, it would be best to keep the default location in case something need to find the Visual Studio C++ folder and cannot find it in its default location) then click Next.&lt;br /&gt;
# If you have any minor jobs to do, I suggest you do so now as it will take a while, but keep checking on how the installation is coming.&lt;br /&gt;
# Then reboot your computer.&lt;br /&gt;
# Once your pc is ready look for Visual Studio C++ on icon your desktop, if its not there go to start, all programs in the start menu.&lt;br /&gt;
&lt;br /&gt;
==Downloading &amp;amp;amp; Installing WinRAR:==&lt;br /&gt;
&lt;br /&gt;
# Go to www.download.com.&lt;br /&gt;
# In the the search engine, type WinRAR.&lt;br /&gt;
# Now look for WinRAR 3.7, its would normally be first of the download list.&lt;br /&gt;
# Now click on the big button saying Download WinRAR.&lt;br /&gt;
# Now you come to another web page, wait for a moment, and a little window pop up asking whether to save or run. It would be advisable to save it in a folder called Downloads.&amp;amp;lt;br&amp;amp;gt; (If you haven&#039;t already done so).&lt;br /&gt;
# There should be a few moments of downloading, depending on your internet connection. Then click Run, then click Run again.&lt;br /&gt;
# Click Install.&lt;br /&gt;
# Now a window should pop up called WinRAR set-up, click Ok.&lt;br /&gt;
# Done.&lt;br /&gt;
&lt;br /&gt;
==Downloading and Installing PostgresSQL:==&lt;br /&gt;
&lt;br /&gt;
===Part 1===&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.master.postgresql.org/download/mirrors-ftp?file=%2Fsource%2Fv8.1.9%2Fpostgresql-base-8.1.9.tar.gz&lt;br /&gt;
# Select find your national flag and click on the http link.&lt;br /&gt;
#Now a window will pop up asking whether you want to save or run the installation program. Save it in your download folder, if you haven&#039;t created one do so. The purpose of having a Download file is that every time you download a big file you save it so that you don&#039;t have to waste your time downloading it again. However with small files, there is no point in saving them because of the small amount of time they take to download. &lt;br /&gt;
# Now look in your download folder for postgresql-8.1.9-1.zip &amp;amp;amp; postgresql-base-8.1.9.tar.gz&lt;br /&gt;
# Right click on postgresql-8.1.9-1.zip click Extract to postgresql-v8.1.9-1.zip\  &lt;br /&gt;
# Now go to the folder you just extracted to in your download folder.&lt;br /&gt;
# Double click on the file postgresql-8.1.msi, and to check whether you have the right version, look at the size, is it 134Kb.&lt;br /&gt;
# A window should have popped up, saying what language you want to use in the installation. Select your preferred language. (if you have any other windows close them down and SAVE your work)&lt;br /&gt;
# Now this window is important, so don&#039;t miss any thing out. Scroll down to Database drivers, and click on the small triangle pointing downwards, a small list of options will appear click &amp;amp;quot;Entire feature will be unavailable&amp;amp;quot;.&lt;br /&gt;
# Now scroll to the very bottom to Development, now just like the other one click on the small triangle pointing downwards and again the options will appear, this time click &amp;amp;quot;Entire feature will be installed on your local driver&amp;amp;quot;. Click Next.&lt;br /&gt;
# In the next window type into the User name field any random name, as you will not have to remember it. Then click Next. Click Yes. Click Ok.&lt;br /&gt;
# Now in the current window there are some drop down menus you MUST change: &lt;br /&gt;
#* The field next to Encoding, use the drop down menu to find UTF-8.&lt;br /&gt;
#* The field next to Locale, use the drop down menu to find your language.&lt;br /&gt;
# Type in a password and take a note of it and click Next.&lt;br /&gt;
# Then you come to a window called Enable contrib modules, tick Tsearch2 near the right hand side and click Next.&lt;br /&gt;
# Then to start the Installation click Next.&lt;br /&gt;
&lt;br /&gt;
===Part 2===&lt;br /&gt;
&lt;br /&gt;
# Go to your start menu, all programs, PostgreSQL 8.1, pgadmin III. Click the close button for the tips.&lt;br /&gt;
# Double click on PostgreSQL database server 8.1 (Localhost:5432), and it will ask you for the password you took note of in Part1 of the exersise. Type it in&lt;br /&gt;
# On the right hand side of the window there are the files of the SQL Server. To make a new database right click on Database(1)and click the New Database option. Type in NEOSYS into the name field.&lt;br /&gt;
# Now on the right hand side of the window look for Login Roles (1), at the bottom of the list.&lt;br /&gt;
#  Right click it and click the New Login Role.&lt;br /&gt;
#&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:loginrole.JPG]] &lt;br /&gt;
&lt;br /&gt;
UNSURE WHAT TO PUT HERE, CANT PUT DADS PASS IN.&lt;br /&gt;
&lt;br /&gt;
==Downloading &amp;amp;amp; Installing Tortoise SVN (32bit):==&lt;br /&gt;
&lt;br /&gt;
# Go to your browser, copy and paste the web address into your URL &amp;amp;quot;http://subversion.tigris.org/project_packages.html&amp;amp;quot;.&lt;br /&gt;
&lt;br /&gt;
# The web page should have a title of &amp;amp;quot;Subversion packets&amp;amp;quot;, and have a dark green theme.&lt;br /&gt;
# Scroll down the page, and look for Windows NT, 2000, XP and 2003.&lt;br /&gt;
# Now look through the text for &amp;amp;quot;If you want a pretty Win32 GUI, TortoiseSVN integrates nicely with the Window Explorer.&amp;amp;quot;, near the bottom. Click on the link highlight in blue (tortoiseSVN).&lt;br /&gt;
# Look for &amp;amp;quot;Latest Version&amp;amp;quot; in a green bar and underneath that, in the text look for &amp;amp;quot;download page&amp;amp;quot; and click it.&lt;br /&gt;
# Now you should be looking at a web page with a blue tortoise. The title should also be &amp;amp;quot;TortoiseSVN&amp;amp;quot;.&lt;br /&gt;
# Now look for the subheading &amp;amp;quot;Download Application&amp;amp;quot;&lt;br /&gt;
# Click on &amp;amp;quot;TortoiseSVN-1.4.5.10425-win32-svn-1.4.5.msi 32 bit.&lt;br /&gt;
# Now you come to a web page with a URL starting with &amp;amp;quot;http://sourseforge.net/ bla bla bla bla&amp;amp;quot;, either a window automatically pops up asking whether to save or run, or you right click on a beige horizontal bar at the top of the web browser window, and select &amp;amp;quot;Download file&amp;amp;quot;.&lt;br /&gt;
# Click Save, and save the file into your download folder. (make a folder named download, if you haven&#039;t already done so) then click Run, and click Run again.&lt;br /&gt;
# When the TortoiseSVN window set-up pops up, click next. &lt;br /&gt;
# Accept the terms, and click next.&lt;br /&gt;
# Click next again, then click Install.&lt;br /&gt;
# Then installation program will ask you to restart.&lt;br /&gt;
&lt;br /&gt;
FOR HOW TO USE GO TO http://devwiki.neosys.com/index.php/Installing_and_Using_Tortoise_Subversion&lt;br /&gt;
&lt;br /&gt;
==Boost c++ libraries 1.34.0==&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.boost-consulting.com/products/free&lt;br /&gt;
# Click the 2nd download, Boost 1.34.0 Installer.&lt;br /&gt;
# Click Run and again.&lt;br /&gt;
# Agree to the licenses.&lt;br /&gt;
# Click Next.&lt;br /&gt;
# Tick the Visual C++ 8.0 (Visual studio 2005).&lt;br /&gt;
# Tick the first two Variants.&lt;br /&gt;
# Now untick every box completely except:&lt;br /&gt;
#* BoostRegex&amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
#* Boost DateTime&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost FileSystem&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost IOstream&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost Thread&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost ProgramOptions&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Boost header files&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Start menu shortcut&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Source and Documentation&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
#* Tools.&lt;br /&gt;
[[Image:choosingcomp.jpg]] &amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
9. Click Next, Install. (take note of where you saved boost).&lt;br /&gt;
&lt;br /&gt;
===Getting MV onto your pc:===&lt;br /&gt;
&lt;br /&gt;
# Go to your desktop, and create a new folder.&lt;br /&gt;
# Right click on the folder, and got to TortoiseSVN, export.&lt;br /&gt;
# Then this window should pop up:  &lt;br /&gt;
[[Image:tortoiseSVN.JPG]]&lt;br /&gt;
# In the URL field type in (or copy and paste) http://svn.neosys.com/svn/trunk and click Ok.&lt;br /&gt;
# Another window will pop up, and start listing the files you are importing onto your pc.&lt;br /&gt;
# Click Ok.&lt;br /&gt;
&lt;br /&gt;
==Downloading &amp;amp;amp; Installing SDK:==&lt;br /&gt;
&lt;br /&gt;
===Part 1===&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.microsoft.com/downloads/details.aspx?familyid=0baf2b35-c656-4969-ace8-e4c0c0716adb&amp;amp;amp;displaylang=en.&lt;br /&gt;
# Now click the &amp;amp;quot;continue&amp;amp;quot; button.&lt;br /&gt;
# Now click on the link called &amp;amp;quot;Download Files Below&amp;amp;quot;, you can find the link in the horizontal blue bar goind across the web page.&lt;br /&gt;
# That link takes you to the bottom of the page, where it lists 3 files to download, download the middle one if u have a Intel prosesser, download the top one if you have a AMD prosesser and download the bottom one if you have a if you have nither an Intel or AMD prosesser.&lt;br /&gt;
# Save the file into your download folder.&lt;br /&gt;
# Then click Run, Then click Run again.&lt;br /&gt;
# After a second or two, you come to a little window, with one button, click Cancel.&lt;br /&gt;
# Click Next.&lt;br /&gt;
# Agree to the terms, and click Next.&lt;br /&gt;
# Do a custom installation, and click Next.&lt;br /&gt;
# Now you come to a stage in the set-up where it asks &amp;amp;quot;In which driver do you want to save you files to?&amp;amp;quot;. Pick the drive you prefer. To change from drive to drive you chage the beginning of the location. So if you want to save SDK in the C drive, leave it as it is and if you want to save SDK to the D drive, chage C to D. Or click browse. Then click Next.&lt;br /&gt;
# Click Next again, and wait a second for the loading.&lt;br /&gt;
# Then continue the download, till the end.&lt;br /&gt;
&lt;br /&gt;
===Part 2===&lt;br /&gt;
&lt;br /&gt;
# Now run Microsoft Visual Studio C++ Express Edition.&lt;br /&gt;
# Now on your screen you should see:&amp;amp;lt;br&amp;amp;gt;[[Image:VSC++EE.JPG]]&amp;amp;lt;br&amp;amp;gt; click on agency, and on the left hand column you should see:&amp;amp;lt;br&amp;amp;gt;[[Image:solutionexplorer-mv.JPG]]&lt;br /&gt;
# Now got to Tools, Options and open Project and Solutions.&lt;br /&gt;
# Your window should look like this:&amp;amp;lt;br&amp;amp;gt;[[Image:VSC++EEoptions.JPG]]&lt;br /&gt;
# Now click the button that looks like a yellow folder, and in the field where your cursor should be blinking, copy and paste the following path Executable files path, and press Enter: C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin. &lt;br /&gt;
# Now click the drop down menu for Show directories for: and click Include Files, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include. &lt;br /&gt;
# Now click the drop down menu for Show directories for: and click Library files, now click the button that looks like a yellow folder and in the field were the cursor is blinking copy an paste the following path, and then press Enter: C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib&lt;br /&gt;
 Now compile by pressing F5.&lt;br /&gt;
&lt;br /&gt;
==Helpful Websites==&lt;br /&gt;
&lt;br /&gt;
# http://msdn2.microsoft.com/en-gb/express/aa700755.aspx for help on Microsoft Visual Studio C++ Express Edition.&lt;br /&gt;
&lt;br /&gt;
# http://www.boost.org/ for help on Boost&lt;br /&gt;
&lt;br /&gt;
# http://www.postgresql.org/ for help on PostgeSQL&lt;br /&gt;
&lt;br /&gt;
# http://www.win-rar.com/winrarsupport.html for help with WinRAR.&lt;br /&gt;
&lt;br /&gt;
# http://tortoisesvn.tigris.org/ help on tortoiseSVN.&lt;br /&gt;
&lt;br /&gt;
# http://devwiki.neosys.com/index.php/Installing_and_Using_Tortoise_Subversion on how to use tortoise subversion&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Getting_the_right_to_commit_to_the_subversion_repository&amp;diff=973</id>
		<title>Getting the right to commit to the subversion repository</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Getting_the_right_to_commit_to_the_subversion_repository&amp;diff=973"/>
		<updated>2010-11-24T02:08:31Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=[http://ekygelymib.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
=== Committing your developments ===&lt;br /&gt;
&lt;br /&gt;
First get a username and password by running the following unix command and send the output to an exodus subversion administrator eg steve.bush@neosys.com&lt;br /&gt;
&lt;br /&gt;
 htpasswd -nm YOURDESIREDUSERNAME&lt;br /&gt;
&lt;br /&gt;
The administrator needs to run the following command as root and enter the encrypted pass (the bit AFTER the :) ignoring the warning about plain text password because it is already encrypted.&lt;br /&gt;
&lt;br /&gt;
 htpasswd -p /etc/apache2/dav_svn.passwd YOURDESIREDUSERNAME&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Mac&amp;diff=972</id>
		<title>Mac</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Mac&amp;diff=972"/>
		<updated>2010-11-24T02:08:28Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://yhenaju.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=&lt;br /&gt;
----&lt;br /&gt;
=[http://yhenaju.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
== Downloading and Installing Exodus ==&lt;br /&gt;
&lt;br /&gt;
http://code.google.com/p/exodusdb/downloads&lt;br /&gt;
&lt;br /&gt;
If there is no program for your Mac version then you can use the instructions to build Exodus from source.&lt;br /&gt;
&lt;br /&gt;
== C++ Compiler ==&lt;br /&gt;
&lt;br /&gt;
If you want to write or compile Exodus programs to install the XCODE C++ compiler. You don&#039;t need a C++ compiler to just use the Exodus command line to access the database or run prepackaged Exodus programs.&lt;br /&gt;
&lt;br /&gt;
XCODE is available in the OSX dvd in the utilities folder.&lt;br /&gt;
&lt;br /&gt;
== Postgresql ==&lt;br /&gt;
&lt;br /&gt;
If you want to use Exodus to provide multivalue database functionality then you must already have or install a PostgreSQL database.&lt;br /&gt;
&lt;br /&gt;
http://www.postgresql.org/download/macosx&lt;br /&gt;
&lt;br /&gt;
Postgres does not have to be on the same server as Exodus, however, if it is not, dictionary entries cannot call Exodus subroutines.&lt;br /&gt;
&lt;br /&gt;
By default, Exodus assumes the following postgres configuration. This is very convenient for quick setups but of course is not secure.&lt;br /&gt;
&lt;br /&gt;
 host=127.0.0.1 port=5432 dbname=exodus user=exodus password=somesillysecret connect_timeout=10&lt;br /&gt;
&lt;br /&gt;
The following Exodus command creates the default database and password. It prompts for a postgres admin user and password to do so.&lt;br /&gt;
&lt;br /&gt;
 configexodus&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can use any available Postgres utility to create an initial database and user yourself. If you wish Exodus to be able to create databases, and drop any databases it creates, the user you create should have database creation rights. The user you create does not need admin rights.&lt;br /&gt;
&lt;br /&gt;
Storing the configuration&lt;br /&gt;
&lt;br /&gt;
 notepad %USERPROFILE%\.exodus&lt;br /&gt;
&lt;br /&gt;
 host=127.0.0.1 port=5432 dbname=exodus user=exodus password=somesillysecret connect_timeout=10&lt;br /&gt;
&lt;br /&gt;
The following environment variables can override default and .exodus parameters on a one by one basis.&lt;br /&gt;
&lt;br /&gt;
 set EXODUS_HOST=127.0.0.1&lt;br /&gt;
 set EXODUS_PORT=5432&lt;br /&gt;
 set EXODUS_DBNAME=exodus&lt;br /&gt;
 set EXODUS_USER=exodus&lt;br /&gt;
 set EXODUS_PASSWORD=somesillysecret&lt;br /&gt;
 set EXODUS_TIMEOUT=10&lt;br /&gt;
&lt;br /&gt;
== Using Exodus ==&lt;br /&gt;
&lt;br /&gt;
Look your Applications folder for Exodus or just use the unix console.&lt;br /&gt;
&lt;br /&gt;
{{exodus console first steps}}&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
	<entry>
		<id>https://devwiki.neosys.com/index.php?title=Postgres_8.1&amp;diff=971</id>
		<title>Postgres 8.1</title>
		<link rel="alternate" type="text/html" href="https://devwiki.neosys.com/index.php?title=Postgres_8.1&amp;diff=971"/>
		<updated>2010-11-24T02:08:24Z</updated>

		<summary type="html">&lt;p&gt;Anecada: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;&amp;quot;&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
=[http://abaviteha.co.cc Under Construction! Please Visit Reserve Page. Page Will Be Available Shortly]=&lt;br /&gt;
----&lt;br /&gt;
=[http://abaviteha.co.cc CLICK HERE]=&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
===Part 1: Downloading &amp;amp;amp; Installing PostgresSQL===&lt;br /&gt;
&lt;br /&gt;
# Go to http://www.postgresql.org/&lt;br /&gt;
# In the search engine at the top right hand corner copy &amp;amp;amp; paste &amp;amp;lt;B&amp;amp;gt;postgresql-8.1.9-1.zip&amp;amp;lt;/b&amp;amp;gt; and press enter. You can also install newer patches like postgresql-8.1.11-1.zip but stay within the postgresql-8.1 versions unless you want to modify the Visual C++ project to point to the new locations.&lt;br /&gt;
# Click the one pointed to you by the red arrow&amp;amp;lt;br&amp;amp;gt;[[Image:getpgSQL1.jpg]]&amp;amp;lt;br&amp;amp;gt;if not included, look for something similar, keeping in mind you need the &amp;amp;lt;B&amp;amp;gt;postgresql-8.1.9-1.zip&amp;amp;lt;/b&amp;amp;gt;)&lt;br /&gt;
# Click on the link shown to you by the red arrow; &amp;amp;quot;postgresql-8.2.5-1.zip&amp;amp;quot; &amp;amp;lt;br&amp;amp;gt;[[Image:FTPbrowser.JPG]]&lt;br /&gt;
# Find the flag of the country you are in, and click the Ftp link under the flag.&lt;br /&gt;
# Now a window will pop up asking whether you want to save or run the installation program. Save it in your download folder, if you haven&#039;t created one do so. The purpose of having a Download file is that every time you download a big file you save it so that you don&#039;t have to waste your time  finding the file and downloading it again. However with small files, there is no point in saving them because of the small amount of time they take to download. &lt;br /&gt;
# Look in your download folder for postgresql-8.1.9-1.zip&lt;br /&gt;
# Right click on postgresql-8.1.9-1.zip click Extract to postgresql-v8.1.9-1.zip\  &lt;br /&gt;
# Go to the folder you just extracted to in your download folder.&lt;br /&gt;
# Double click on the file postgresql-8.1.msi, and to check whether you have the right version, look at the size, is it 134Kb.&lt;br /&gt;
# A window should have popped up, saying what language you want to use in the installation. Select your preferred language. (if you have any other windows close them down and SAVE your work)&lt;br /&gt;
# This window is important, so don&#039;t miss any thing out.&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
[[Image:postgreSQL2.JPG]]&amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
#* Scroll down to Database drivers, and click on the small triangle pointing downwards, a small list of options will appear click &amp;amp;quot;Entire feature will be unavailable&amp;amp;quot;.&lt;br /&gt;
#* Scroll to the very bottom to Development, now just like the other one click on the small triangle pointing downwards and again the options will appear, this time click &amp;amp;quot;Entire feature will be installed on your local driver&amp;amp;quot;. Click Next.&lt;br /&gt;
# In the next window type into the User name field any random password, as you will not have to remember it.&amp;amp;lt;br&amp;amp;gt; If your reinstalling PostgreSQL, delete the existing account name; by going to Computer Management, System tools, Local Users &amp;amp;amp; Groups and then users. Finally delete postgreSQL.&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
# Click yes:&amp;amp;lt;br&amp;amp;gt;[[Image:accounterror.JPG]]&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
# Then click Next. Click Yes. Click Ok.&lt;br /&gt;
# In the current window there are some drop down menus you MUST change: &lt;br /&gt;
#* The field next to Encoding, use the drop down menu to find UTF-8.&lt;br /&gt;
#* The field next to Locale, use the drop down menu to find your language.&lt;br /&gt;
# Type in a password and take a note of it.&lt;br /&gt;
#* IF you are reinstalling PostgreSQL then untick the box in the top left hand corner as shown in the picture below:&amp;amp;lt;br&amp;amp;gt;[[Image:checkup.jpg]]&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
# In the next window, just click next.&lt;br /&gt;
# Then you come to a window called Enable contrib modules, tick Tsearch2 near the right hand side and click Next.&lt;br /&gt;
# Then to start the Installation click Next.&lt;br /&gt;
&lt;br /&gt;
===Part 2: Set-up &amp;amp;amp; Configuration===&lt;br /&gt;
&lt;br /&gt;
# Go to your start menu, all programs, PostgreSQL 8.1, pgadmin III. Click the close button for the tips.&lt;br /&gt;
# Double click on PostgreSQL database server 8.1 (Localhost:5432), and it will ask you for the password you took note of in Part1 of the exercise. Type it in.&lt;br /&gt;
# On the right hand side of the window there are the files of the SQL Server. To make a new database right click on Database(1)and click the New Database option. Type in NEOSYS into the name field and click Ok.&lt;br /&gt;
# On the right hand side of the window look for Login Roles (1), at the bottom of the list.&lt;br /&gt;
# Right click it and click the New Login Role.&lt;br /&gt;
# Type in NEOSYS into the name field&amp;amp;lt;br&amp;amp;gt;[[Image:loginrole.JPG]]&amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
# Type in a pass and make a note of it.&lt;/div&gt;</summary>
		<author><name>Anecada</name></author>
	</entry>
</feed>