Have you followed the steps in section 5.8 of the user manual (
http://tangentsoft.net/mysql++/doc/html/userman/ssqls.html)? Specifically
the use of MYSQLPP_SSQLS_NO_STATICS
-Chris
On Tue, Sep 25, 2012 at 9:14 PM, Kevin Smith <ksmith@stripped> wrote:
> Hi,
>
>
>
> I am writing an application where I have created an interface class to
> the
> mysql database. The class contains a vector of SSQLS objects which are
> defined by the sql_create_# macro. I have placed the macro in the header
> file for the interface class so that the definition of the SSQLS structure
> is available to the class vector definition. Everything compiles nicely,
> but when the program is linked, if there are multiple files that include
> the
> header, there are multiple definitions of a couple of the functions that
> are
> created by the macro. If only one file includes the header, then there are
> no problems. Do you have a work around for this?
>
>
>
> MyHeader.h
>
>
>
> #include <mysql++.h>
>
> #include <ssqls.h>
>
> #include <vector>
>
>
>
> sql_create_5(DBPTrans, 1, 5,
>
> mysqlpp::sql_int, trans_id,
>
> mysqlpp::sql_datetime, trans_time,
>
> mysqlpp::sql_varchar, trans_type,
>
> mysqlpp::sql_char, ticket_id,
>
> mysqlpp::sql_mediumtext, data);
>
>
>
> using namespace std;
>
>
>
> class dbInterface {
>
>
>
> public:
>
> dbInterface ();
>
> int pushTransaction (void);
>
> bool flush(void);
>
>
>
> private:
>
> bool dbupdateLastTransaction(void);
>
> bool dbWriteTransactionList(void);
>
> vector < DBPTrans > dbptransvect;
>
> };
>
>
>
>
>
> Support A.cpp
>
>
>
> #include "MyHeader.h"
>
>
>
> ..
>
>
>
>
>
> Main.cpp
>
>
>
> #include "MyHeader.h"
>
>
>
> ..
>
>
>
>
>
> When Linked, there will be functions in SupportA and Main that are multiply
> defined, and it happens with sql_create made function.
>
>
>
> Thanks in advance!
>
>
>
> -Kevin
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>