aboutsummaryrefslogtreecommitdiff
path: root/mapping
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2012-09-10 15:27:52 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2012-09-10 15:27:52 +0200
commit60b5ffdef2be52e519ea6fc0927c6af4fc086cc5 (patch)
tree49a1d8feeeab0afc2fa4cb5b403ded00e3aa9133 /mapping
parent7d58675bad74a81489f77738fcccea9f5f20f41f (diff)
Describe commands necessary to manually compile and link each example
Diffstat (limited to 'mapping')
-rw-r--r--mapping/README8
-rw-r--r--mapping/traits.hxx2
2 files changed, 10 insertions, 0 deletions
diff --git a/mapping/README b/mapping/README
index 2a93d1f..52b7e5b 100644
--- a/mapping/README
+++ b/mapping/README
@@ -52,6 +52,14 @@ driver.cxx
instance. It then persists a number of 'person' objects in the database
and executes a query to find objects matching certain criteria.
+To compile and link the example manually from the command line we can use
+the following commands (using MySQL as an example; replace 'c++' with your
+C++ compiler name):
+
+c++ -DDATABASE_MYSQL -c person-odb.cxx
+c++ -DDATABASE_MYSQL -c driver.cxx
+c++ -o driver driver.o person-odb.o -lodb-mysql -lodb
+
To run the example we may first need to create the database schema (for some
database systems, such as SQLite, the schema is embedded into the generated
code which makes this step unnecessary). Using MySQL as an example, this
diff --git a/mapping/traits.hxx b/mapping/traits.hxx
index 5579f0c..533b2e3 100644
--- a/mapping/traits.hxx
+++ b/mapping/traits.hxx
@@ -16,6 +16,8 @@
# include "traits-oracle.hxx"
#elif defined(DATABASE_MSSQL)
# include "traits-mssql.hxx"
+#else
+# error unknown database; did you forget to define the DATABASE_* macros?
#endif
#endif // TRAITS_HXX