|
|
(30 intermediate revisions by 3 users not shown) |
Line 1: |
Line 1: |
| == C++ Compiler ==
| |
|
| |
| If you want to develop programs in Exodus, as opposed to just using the Exodus database or running prepackaged Exodus programs, you need a C++ compiler.
| |
|
| |
| === MSVC ===
| |
|
| |
| VS C++ 2003/2005/2008 will all work. A standard install of the free VS Express C++ (2008 currently) 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.
| |
|
| |
| http://www.microsoft.com/Express/vc/
| |
|
| |
| === Mingw ===
| |
|
| |
| The smallest and quickest command line compiler.
| |
|
| |
| http://www.mingw.org/wiki/HOWTO_Install_the_MinGW_GCC_Compiler_Suite
| |
|
| |
| <pre>
| |
| rem path to mingw bin
| |
| path c:\qt\2009.02\mingw\bin;%path%
| |
|
| |
| rem path to exodus runtime dll
| |
| path C:\Documents and Settings\Administrator\Desktop\exodus\exodus\exodus\exodus_mingw\release;%PATH%
| |
|
| |
| rem path to postgres runtime dll
| |
| path C:\Program Files\PostgreSQL\8.3\bin;%path%
| |
|
| |
| rem name and location of exodus library
| |
| set cc=-lexodus_mingw -L"C:\Documents and Settings\Administrator\Desktop\exodus\exodus\exodus\exodus_mingw\release"
| |
|
| |
| rem location of exodus include files like exodus.h
| |
| set cc= %cc% -I"C:/trunk/exodus/exodus/src"
| |
|
| |
| rem edit an exodus program
| |
| notepad test.cpp
| |
| #include <exodus.h>
| |
| program() { println("Hello") }
| |
|
| |
| rem build the program
| |
| g++ test.cpp %cc%
| |
|
| |
| rem run the program (needs path to exodus_mingw.dll libpq.dll and mingwm10.dll)
| |
| a.exe
| |
| Hello
| |
| </pre>
| |
|
| |
| === Qt Creator (mingw) ===
| |
|
| |
| Amazing free cross platform IDE. 176Mb
| |
|
| |
| http://www.qtsoftware.com/products/developer-tools
| |
|
| |
| Add the following to your project file:
| |
|
| |
| INCLUDEPATH += "C:/Program Files\Exodus\9.6\include"
| |
| LIBS += -L"C:/Program Files\Exodus\9.6\lib" -lexodus_mingw
| |
|
| |
| == Postgres ==
| |
|
| |
| If you want to use Exodus to operate a Pick-style database then you must already have or install a postgres database.
| |
|
| |
| If you need calculated dictionary entries or are not prepared to do the simple installation of the postgres exodus plugin yourself then the postgres server needs to run on the same host as exodus, otherwise you can use any remote postgres server version 8+ on any os.
| |
|
| |
| If you need to install Postgres then do a standard install of the current version (8.3) preferably in the default location on C: or parallel default location but on the same drive as Exodus.
| |
|
| |
| Exodus needs to be granted a postgres username, password and database to work in - and preferably rights to create databases and users. By default, Exodus uses the following to connect or you can put a file called .exodus containing some similar line in your home directory (%USERPROFILE% on windows).
| |
|
| |
| host=127.0.0.1 port=5432 dbname=exodus user=exodus password=somesillysecret connect_timeout=10
| |
|
| |
| Use the installed PGAdminIII or your preferred postgres client to create the chosen user and database. If you prefer SQL, use the following:
| |
|
| |
| CREATE ROLE exodus LOGIN PASSWORD 'somesillysecret' CREATEDB CREATEROLE;
| |
| CREATE DATABASE exodus WITH ENCODING='UTF8' OWNER=exodus;
| |
|
| |
| Sorry but just at the moment you have to install the pgexodus.dll plugin for postgres manually.
| |
|
| |
| copy pg exodus.dll from the exodus bin directory to the postgres lib directory \Program Files\8.3\lib and then using PGAdminIII as postgres superuser run the following SQL
| |
|
| |
| [[Installing_%26_Building_all_Components_for_Exodus_on_Windows#Building_and_installing_pgexodus|Installing pgexodus.dll for postgres]]
| |
|
| |
| == Downloading and Installing Exodus == | | == Downloading and Installing Exodus == |
|
| |
|
| http://www.neosys.com/software/exodus.msi
| | [[Step by step instructions]] |
|
| |
|
| == Using Exodus == | | == Using Exodus == |
|
| |
|
| Start, Run, All Programs, Exodus, Exodus Command Prompt | | Start, All Programs, Exodus, Exodus Console |
| | |
| Try the following commands.
| |
| | |
| {|
| |
| !Command !!Comment
| |
| |-
| |
| |<U>EDITING AND COMPILING</U>
| |
| |-
| |
| |edit test ||Creates a skeleton test.cpp file using nano editor with exodus. edit will compile on exit if saved, so make some change before you exit.
| |
| |-
| |
| |test ||Run it
| |
| |-
| |
| |compile test ||compile without editing
| |
| |-
| |
| |edit testsort ||Browse a sample exodus program showing all fundamental database operations including dictionaries and list.
| |
| |-
| |
| |<U>DATABASE OPERATIONS</U>
| |
| |-
| |
| |testsort ||Run it to generate some data and inspect the output
| |
| |-
| |
| |listfiles ||quick tool avoiding need to use any database client
| |
| |-
| |
| |list test_clients ||text output - no page/column headers just yet sorry
| |
| |-
| |
| |list test_clients (H) ||html output (port of a LIST replacement in heave use since 2000)
| |
| |-
| |
| |list dict_test_clients ||nb the underscore after "dict" is required - dict(space)voc wont work
| |
| |-
| |
| |list dict_voc ||if you understand this then you understand your pick
| |
| |-
| |
| |edit test_clients SB001 ||you can edit data or dictionaries directly
| |
| |-
| |
| |delete test_clients SB001 ||useful command line tool
| |
| |-
| |
| |createfile tempfile ||ditto
| |
| |-
| |
| |deletefile tempfile ||ditto
| |
| |-
| |
| |createindex test_clients CLIENT_TYPE ||speeds up select commands on the indexed fields in the traditional way
| |
| |-
| |
| |deleteindex test_clients CLIENT_TYPE ||filenames are case insensitive, keys and fieldnames are not
| |
| |}
| |
| | |
| If you get the following error then you have not completed the installation of pgexodus.dll function in postgres as described in the section on postgres above.
| |
| | |
| PGRES_FATAL_ERROR: ERROR: function exodus_extract_text(bytea, integer, integer, integer) does not exist
| |
| | |
| If you have Visual Studio installed try the test project (VS2005+).
| |
| | |
| Start, Run, All Programs, Exodus, Blank Visual Studio Solution. To run and avoid the "cannot find exodus.dll" message, you have to set the project configuration properties, Debugging, Environment to PATH=..\..\bin.
| |
| | |
| == Documentation how to program in Exodus ==
| |
| | |
| Sorry nothing yet but you might be able to work out what functions are available from the following:
| |
| | |
| include\exodusfuncs.h lists the functions that simulates pickish syntax as close as can be achieved. The functionality however should be identical.
| |
| | |
| include\exodusmacros.h lists a few keywords to simplify programming for application programmers not interested in the raw power of c++.
| |
| | |
| include\mv.h lists the massive var class definition that defines how to write pick in oo object.method() style syntax.
| |
| | |
| [[Unorganised notes about programming in Exodus]]
| |
| | |
| == Source code and Exodus development environment ==
| |
| | |
| http://svn.neosys.com/svn/trunk has full source code and tools build exodus from scratch. Also a script make.sh for a basic build and install on linux (redhat but probably works with minor tweaks anywhere).
| |
|
| |
|
| This devwiki site was initially written more in mind with BUILDING exodus. It will now be updated to reflect USING exodus.
| | {{exodus console first steps}} |