Linker error in c++ -- undefined reference to `vtable for String'

While linking cpp file : wrapGetRndAmt.cpp which is below:
wrapGetRndAmt.cpp .....
#include <iostream.h>
#include "archinfo.h"
#include "syscodes.h"
#include "currency_directory.h"
extern MESSAGE_TYPE SetMemMarker();
extern MESSAGE_TYPE FreeMemBlock();
extern "C" int dm_login();
extern "C" int dm_commit();
extern "C" int dm_rollback();
//extern MESSAGE_ARRAY *messageArray;
struct tpsvcInfo *funcAry;
/* Wrapper function to apply rounding rule (to the amount)*/
int wrapGetRndAmt(char * ou_id, char * currency , double& amount)
SetMemMarker();
int rndng_rule=0;
double rndng_val=0.0;
double l_rtrnCode=0.0;
double l_tmp=0.0;
String * s_curr = new String(currency); ///This is the call of the String
The error coming is:
/home/gcrmdev/3.5/B/lib/h/xlstring.h:54: undefined reference to `vtable for String'
/home/gcrmdev/3.5/B/lib/h/xlstring.h:54: undefined reference to `vtable for String'
Header file is below:
xlstring.h
#ifdef SOLARIS
11 #include "mystring.h"
12 #else
13 #include <string.h>
14 #endif
15 #include "xdr.h"
16 #include <cppdefs.h>
17 /* added by prabhat */
18 #include "bglb.h"
19 /* added by prabhat ends */
20
21 /*
22 *-----------------------------------------------------------------------------
23 * CLASS : String
24 * PURPOSE : For performing all string operation
25 * BASE CLASS : Object
26 * PARENT CLASS : Object
27 * COMMENT :
28 * HISTORY :
29 *-----------------------------------------------------------------------------
30 */
31 class String : public CppObj {
32 int len;
33 char *s;
34
35 public:
36
37 int operator == (const String &s1){ return strcmp(s,s1.s) ? 0 : 1;}
38 int operator==(const Object &o)
39 {
40 return ( strcmp ( Type() , o.Type() ) == 0 )
41 ? operator ==( ( const String &)o)
42 : 0 ;
43 }
44 int operator != (const String &s1){ return strcmp(s,s1.s) ? 1 : 0;}
45 int operator < (const String &s1){ return ( strcmp(s,s1.s) < 0 ) ? 1 : 0;}
46 int operator <= (const String &s1){ return ( strcmp(s,s1.s) <= 0 ) ? 1 : 0;}
47 int operator > (const String &s1){ return ( strcmp(s,s1.s) > 0 ) ? 1 : 0;}
48 int operator >= (const String &s1){ return ( strcmp(s,s1.s) >= 0 ) ? 1 : 0;}
49 operator String *() const { return new String( s ); }
50 /* INT4 Length( INT4 & l ) const { l = len; return len; } */
51 MESSAGE_TYPE Length( INT4 & l ) const { l = len; return XL_SUCCESS; }
52 INT4 Length() const { return len; }
53 /* DelhiPuneSync Changes : to take care of memAlloc fail */
54 String( char const *s1) {
55 if ( s1 == NULL) return;
56 s = (char *)memAlloc((len = strlen(s1))+1);
57 if (s != NULL)
58 strcpy(s,s1);
59 }
Can someone help why this error is coming??
Thanks is advance.
Arabinda

Hi,
This is often the result of failing to include the orasqlX.lib file as input to the linker.
I have a walkthrough of integrating Pro*C with Visual Studio here:
http://oradim.blogspot.com/2009/05/oracle-proc-on-windows-with-express.html
Maybe that will be of some help.
How are you linking?
Regards,
Mark

Similar Messages

  • Link Error Linux AS3: undefined reference to `oracle::occi::Environment

    I got this error when i try to run sample database access using OCCI libraries.
    test.cpp:21: undefined reference to `oracle::occi::Environment::createEnvironment(oracle::occi::Environment::Mode, void*, void* (*)(void*, unsigned int), void* (*)(void*, void*, unsigned int), void (*)(void*, void*))'
    Following link contains same problem but there is no answer.
    #include <iostream>
    #include <occi.h>
    using oracle::occi::Connection;
    using oracle::occi::Environment;
    using oracle::occi::Statement;
    using oracle::occi::ResultSet;
    using namespace std;
    int main() {
    Environment *environment;
    Connection *con;
    Statement* stmt;
    ResultSet* res;
    try {
    //std::cout << "dasfasfafa";
    environment = Environment::createEnvironment(oracle::occi::Environment::DEFAULT);
    con = environment->createConnection("aaa", "aaa", "Caaa");
    stmt = con->createStatement("select * from emp");
    res = stmt->executeQuery();
    while (res->next())
    std::cout << res->getInt(1) << " " << res->getString(2) << std::endl;
    stmt->closeResultSet(res);
    con->terminateStatement(stmt);
    environment->terminateConnection(con);
    } catch (oracle::occi::SQLException &e) {
    std::cout << e.what();
    return 0;
    }

    The demos have this:
    #include <iostream>
    #include <occi.h>
    using namespace oracle::occi;
    using namespace std;
    ...

  • Link error:libocci.so undefined reference to `cerr' on redhat with gcc 3.4.

    when I made a occi application , the compiler gave me following errors:
    g++ -locci -lclntsh -lclntst9 -locci9 -ldl -lc -lm -lstdc++ -lgcc_s occidemo.o -I/opt/oracle/product/9.2.0/rdbms/demo \
    -I/opt/oracle/product/9.2.0/rdbms/public \
    -L/opt/oracle/product/9.2.0/lib/ -L/usr/lib -o occidemo
    /opt/oracle/product/9.2.0/lib//libocci.so: undefined reference to `cerr'
    /opt/oracle/product/9.2.0/lib//libocci.so: undefined reference to `endl(ostream &)'
    /opt/oracle/product/9.2.0/lib//libocci.so: undefined reference to `__out_of_range(char const *)'
    /opt/oracle/product/9.2.0/lib//libocci.so: undefined reference to `__ctype_toupper'
    /opt/oracle/product/9.2.0/lib//libocci.so: undefined reference to `ostream::operator<<(char const *)'
    /opt/oracle/product/9.2.0/lib//libocci.so: undefined reference to `__length_error(char const *)'
    I guess that it could not find libstdc++.so ,so I run the command :
    # ldconfig -p | grep std
    libstdc++.so.6 (libc6) => /usr/lib/libstdc++.so.6
    libstdc++.so.5 (libc6) => /usr/lib/libstdc++.so.5
    libstdc++.so (libc6) => /usr/lib/libstdc++.so
    libstdc++-libc6.2-2.so.3 (libc6) => /usr/lib/libstdc++-libc6.2-2.so.3
    libstdc++-libc6.1-1.so.2 (libc6) => /usr/lib/libstdc++-libc6.1-1.so.2
    my environment is : Linux version 2.6.9-34.ELsmp , Red Hat Enterprise Linux AS release 4 (Nahant Update 3) (gcc version 3.4.5 20051201 (Red Hat 3.4.5-2)) #1 SMP Fri Feb 24 16:54:53 EST 2006
    I was so confused , please help me

    To use OCCI with g++ 3.4.5 (32-bit), you need to install Oracle Client 10.2.0.1.0 or 10.2.0.2.0 and download new OCCI libraries from :-
    http://otn.oracle.com/com/tech/oci/occi

  • Build cvm error: /UNIXProcess_md.c undefined reference to `__libc_wait'

    Hello,
    I used the follow command to build cvm in cdc:
    make CVM_DEBUG=true CVM_JAVABIN=$JAVA_HOME/bin
    CVM_GNU_TOOLS_PATH=/usr/bin
    The gcc's version is 2.95.3. J2SE version is J2SE 1.4. OS is Fedora 3. I got the following error message:
    Linking ../../build/linux-i686/bin/cvm
    ../../build/linux-i686/obj/UNIXProcess_md.o(.text+0x3ab): In function `sigchld_handler':
    /root/cdcfoundation/build/linux-i686/../../src/linux/native/java/lang/UNIXProcess_md.c:213: undefined reference to `__libc_wait'
    collect2: ld returned 1 exit status
    make: *** [../../build/linux-i686/bin/cvm] Error 1
    I think this problem relates to java and glibc library in redhat. Can someone give some propositions?
    Thanks a lot for help in advance!!
    zhiyong

    See here (original topic was double posted)
    http://forum.java.sun.com/thread.jspa?messageID=3528322&#3528322

  • Ora 12c install error on openSuse: undefined reference to symbol '__tls_get_addr@@GLIBC_2.3'

    Hi everyone,
    I know that Oracle does not support OpenSuSE, but all previous database versions worked.
    With Oracle 12c, the installation fails. I get the error below.
    Probably someone has a helpful idea?
    Yours, user8632123.
    INFO: make -f /home/oracle/base/rdbms/12.101/precomp/lib/ins_precomp.mk relink EXENAME=proc
    INFO: make[1]: Entering directory `/home/oracle/base/rdbms/12.101/precomp/lib'
    INFO: Linking /home/oracle/base/rdbms/12.101/precomp/lib/proc
    INFO: /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: /home/oracle/base/rdbms/12.101/lib//libnls12.a(lxhlang.o): undefined reference to symbol '__tls_get_addr@@GLIBC_2.3'
    /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: note: '__tls_get_addr@@GLIBC_2.3' is defined in DSO /lib64/ld-linux-x86-64.so.2 so try adding it to the linker command line
    /lib64/ld-linux-x86-64.so.2: could not read symbols: Invalid operation
    INFO: collect2: error: ld returned 1 exit status
    INFO: /bin/chmod: cannot access ‘/home/oracle/base/rdbms/12.101/precomp/lib/proc’
    INFO: : No such file or directory
    INFO: make[1]: Leaving directory `/home/oracle/base/rdbms/12.101/precomp/lib'
    INFO: make[1]: *** [/home/oracle/base/rdbms/12.101/precomp/lib/proc] Error 1
    INFO: make: *** [proc] Error 2

    I'm using opensuse 12.3 and I has this error too.
    My solution is
    1) backup {ORACLE_HOME}/lib/stubs and then delete it.
    2) change RMAN_LINKLINE in the file  {ORACLE_HOME}/rdbms/lib/env_rdbms.mk
         to
    RMAN_LINKLINE=$(LINK) $(OPT) $(S0MAIN) $(SSKRMED) $(SKRMPT) \
            $(LLIBDBTOOLS) $(LLIBCLIENT) $(LLIBSQL) $(LLIBPLSQL) \
            $(LLIBSNLSRTL) $(LLIBUNLSRTL) $(LLIBNLSRTL) \
            $(LLIBSLAX) $(LLIBPLSQL) $(LIBPLCN) $(LINKTTLIBS) -lons
    3) relink all.

  • Compiling errors libGL.so: undefined reference to `_nv001833gl

    i encountered these errors when compiling alienarena and projectM:
    /usr/lib/gcc/x86_64-unknown-linux-gnu/4.3.3/../../../../lib/libGL.so: undefined reference to `_nv001833gl'
    /usr/lib/gcc/x86_64-unknown-linux-gnu/4.3.3/../../../../lib/libGL.so: undefined reference to `_nv001835gl'
    /usr/lib/gcc/x86_64-unknown-linux-gnu/4.3.3/../../../../lib/libGL.so: undefined reference to `_nv001834gl'
    /usr/lib/gcc/x86_64-unknown-linux-gnu/4.3.3/../../../../lib/libGL.so: undefined reference to `_nv001836gl'
    im using arch64, nvidia drivers nvidia-180.29-3..
    can someone explain me what is going wrong here ?

    cant compile amarok2 from aur, same error. so i tried the beta driver 185.13, but after the kdm symbols faded in it doesnt switch to the desktop. im back to 180.29.
    this is very annoying, as i simply have not the knowledge to fix stuff like that

  • Occi 11.1 Error on compile: undefined reference to `oracle::occi::Enviro...

    I'm trying to compile an hello world example on my computer. I've read the documentation for requirements occi on the site
    http://docs.oracle.com/cd/E11882_01/install.112/e24322/pre_install.htm#CHDHFGBJ
    It says that the g++ compiler 3.4.6 or later is supported. I have:
    Ubuntu 12.04
    gcc 4.6.3
    oracle instant client 11.2
    and the error is below, does anyone have a suggestion?
    g++ main.cpp -c -I/home/tim/skrivbord/bin/oracle/instantclient_11_2/include/ -D_REENTRANT -g -Wall
    g++ -o pippo -L/home/tim/skrivbord/bin/oracle/instantclient_11_2/ -locci -lclntsh -lociei -lnnz11 main.o
    main.o: In function `main':
    /home/tim/skrivbord/dev/cpp/main.cpp:21: undefined reference to `oracle::occi::Environment::createEnvironment(oracle::occi::Environment::Mode, void*, void* (*)(void*, unsigned int), void* (*)(void*, void*, unsigned int), void (*)(void*, void*))'
    collect2: ld returned 1 exit status
    make: *** [buildocci] Error 1
    main.cpp:
    #include <iostream>
    #include <occi.h>
    using namespace std;
    using namespace oracle::occi;
    int main(){
    Environment *environment;
    environment = Environment::createEnvironment();
    return 0;
    }

    For correctness I will close this question. I had made some errors with my environment variables LD_LIBRARY_PATH and specially I did not have libaio installed which is well documented that it has to be.

  • Linker error----undefined reference to

    Hi
    i'm getting this error on linking ie on executing the command gcj --main=apps -o apps apps.o
    apps is the name of the file.....the code is compliling without error...
    Can anyone tell why this, 'undefined reference to......' error coming and how to correct it
    Here is the complete error msg...plz help
    [root@localhost ~]# gcj --main=apps -o apps apps.o
    apps.o: In function `javax::mail::PasswordAuthentication* SendMailUsingAuthentication$SMTPAuthenticator::getPasswordAuthentication()':
    apps.java:(.text+0x48cc): undefined reference to `javax::mail::PasswordAuthentication::class$'
    apps.java:(.text+0x48e9): undefined reference to `javax::mail::PasswordAuthentication::PasswordAuthentication(java::lang::String*, java::lang::String*)'
    apps.o: In function `SendMailUsingAuthentication$SMTPAuthenticator::SendMailUsingAuthentication$SMTPAuthenticator(SendMailUsingAuthentication*)':
    apps.java:(.text+0x490c): undefined reference to `javax::mail::Authenticator::Authenticator()'
    apps.o: In function `void SendMailUsingAuthentication::run()':
    apps.java:(.text+0x4ca5): undefined reference to `javax::mail::Session* javax::mail::Session::getDefaultInstance(java::util::Properties*, javax::mail::Authenticator*)'
    apps.java:(.text+0x4cd6): undefined reference to `void javax::mail::Session::setDebug(bool)'
    apps.java:(.text+0x4cdd): undefined reference to `javax::mail::internet::MimeMessage::class$'
    apps.java:(.text+0x4cfd): undefined reference to `javax::mail::internet::MimeMessage::MimeMessage(javax::mail::Session*)'
    apps.java:(.text+0x4d0d): undefined reference to `javax::mail::internet::InternetAddress::class$'
    apps.java:(.text+0x4d3c): undefined reference to `javax::mail::internet::InternetAddress::InternetAddress(java::lang::String*)'
    apps.java:(.text+0x4da1): undefined reference to `javax::mail::internet::InternetAddress::class$'
    apps.java:(.text+0x4de4): undefined reference to `javax::mail::internet::InternetAddress::class$'
    apps.java:(.text+0x4e13): undefined reference to `javax::mail::internet::InternetAddress::InternetAddress(java::lang::String*)'
    apps.java:(.text+0x4e82): undefined reference to `javax::mail::internet::InternetAddress::class$'
    apps.java:(.text+0x4ea5): undefined reference to `javax::mail::internet::InternetAddress::InternetAddress(java::lang::String*)'
    apps.java:(.text+0x4ee7): undefined reference to `javax::mail::Message$RecipientType::class$'
    apps.java:(.text+0x4ef1): undefined reference to `javax::mail::Message$RecipientType::TO'
    apps.java:(.text+0x4fb1): undefined reference to `void javax::mail::Transport::send(javax::mail::Message*)'
    apps.o:(.data+0x3168): undefined reference to `javax::mail::PasswordAuthentication* javax::mail::Authenticator::requestPasswordAuthentication(java::net::InetAddress*, int, java::lang::String*, java::lang::String*, java::lang::String*)'
    apps.o:(.data+0x316c): undefined reference to `java::net::InetAddress* javax::mail::Authenticator::getRequestingSite()'
    apps.o:(.data+0x3170): undefined reference to `int javax::mail::Authenticator::getRequestingPort()'
    apps.o:(.data+0x3174): undefined reference to `java::lang::String* javax::mail::Authenticator::getRequestingProtocol()'
    apps.o:(.data+0x3178): undefined reference to `java::lang::String* javax::mail::Authenticator::getRequestingPrompt()'
    apps.o:(.data+0x317c): undefined reference to `java::lang::String* javax::mail::Authenticator::getDefaultUserName()'
    apps.o:(.data+0x31f0): undefined reference to `javax::mail::Authenticator::class$'
    collect2: ld returned 1 exit status

    Double-post

  • HELP:link error under redhat linux 9.0(oracle 9.2.0)

    i link the demo shipped with oracle 9.2.0,but failed.
    error message shows:
    /usr/bin/g++ -L/home/oracle/product/9.2.0/lib/ -L/home/oracle/product/9.2.0/rdbm
    s/lib/ -o occiproc occiproc.o -locci -lclntsh `cat /home/oracle/product/9.2.0/
    lib/sysliblist` -ldl -lm
    occiproc.o(.gcc_except_table+0x70): undefined reference to `typeinfo for oracle:
    :occi::SQLException'
    occiproc.o(.gcc_except_table+0x88): undefined reference to `typeinfo for oracle:
    :occi::SQLException'
    occiproc.o(.gnu.linkonce.t._ZN8occiprocC1ESsSsSs+0x14): In function `occiproc::o
    cciproc[in-charge](std::basic_string<char, std::char_traits<char>, std::allocato
    r<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char>
    , std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':: undefined reference to `oracle::occi::Environment::createEnvironment(oracle::o
    cci::Environment::Mode, void*, void* (*)(void*, unsigned), void* (*)(void*, void
    *, unsigned), void (*)(void*, void*))'
    occiproc.o(.gnu.linkonce.t._ZN8occiprocD1Ev+0x2e): In function `occiproc::~occip
    roc [in-charge]()':
    : undefined reference to `oracle::occi::Environment::terminateEnvironment(oracle
    ::occi::Environment*)'
    collect2: ld returned 1 exit status

    OCCI 9.2 is not supported with gcc3.2. Please search this forum for more details.

  • Again with the Environment::createEnvironment undefined reference

    Gentlemen,
    I've read through your posts on how to fix this item. However, none of your suggestions have worked.
    So using the simple make of the rdbms demo program I ran this:
    sudo make -f demo_rdbms.mk buildocci EXE=exename OBJS=occidml.o
    and got this:
    /usr/bin/g++ -c -I/u01/app/oracle/product/9.2.0.5/rdbms/demo -I/u01/app/oracle/product/9.2.0.5/rdbms/public -I/u01/app/oracle/product/9.2.0.5/plsql/public -I/u01/app/oracle/product/9.2.0.5/network/public occidml.cpp
    /usr/bin/g++ -L/u01/app/oracle/product/9.2.0.5/lib/ -L/u01/app/oracle/product/9.2.0.5/rdbms/lib/ -o exename occidml.o -locci -lclntsh `cat /u01/app/oracle/product/9.2.0.5/lib/sysliblist` -ldl -lm
    occidml.o(.gcc_except_table+0x100): undefined reference to `typeinfo for oracle::occi::SQLException'
    occidml.o(.gcc_except_table+0x150): undefined reference to `typeinfo for oracle::occi::SQLException'
    occidml.o(.gcc_except_table+0x1a8): undefined reference to `typeinfo for oracle::occi::SQLException'
    occidml.o(.gcc_except_table+0x200): undefined reference to `typeinfo for oracle::occi::SQLException'
    occidml.o(.gcc_except_table+0x25c): undefined reference to `typeinfo for oracle::occi::SQLException'
    occidml.o(.gnu.linkonce.t._ZN7occidmlC1ESsSsSs+0x20): In function `occidml::occidml(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::Environment::createEnvironment(oracle::occi::Environment::Mode, void*, void* (*)(void*, unsigned int), void* (*)(void*, void*, unsigned int), void (*)(void*, void*))'
    occidml.o(.gnu.linkonce.t._ZN7occidmlD1Ev+0x2e): In function `occidml::~occidml()':
    : undefined reference to `oracle::occi::Environment::terminateEnvironment(oracle::occi::Environment*)'
    occidml.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x1cf): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    occidml.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x20f): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x252): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x2ae): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x2c2): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x18f): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    occidml.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x1cf): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x212): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x26e): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x282): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x1cf): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    occidml.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x20f): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x252): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x2ae): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x2c2): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x1cf): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    occidml.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x20f): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x252): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x2ae): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x2c2): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x234): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    occidml.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x274): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x2b7): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    occidml.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x313): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    occidml.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x327): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `cerr'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__pure_virtual'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `exception type_info function'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__cp_push_exception'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `endl(ostream &)'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__uncatch_exception'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__out_of_range(char const *)'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__rtti_user'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__ctype_toupper'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__rtti_si'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__check_eh_spec'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__throw'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `ostream::operator<<(char const *)'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `terminate(void)'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__start_cp_handler'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__cp_pop_exception'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `exception type_info node'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__builtin_vec_new'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__eh_rtime_match'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__length_error(char const *)'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__builtin_vec_delete'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `exception virtual table'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__rtti_class'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__builtin_delete'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__builtin_new'
    /u01/app/oracle/product/9.2.0.5/lib//libocci.so: undefined reference to `__eh_alloc'
    collect2: ld returned 1 exit status
    make: *** [buildocci] Error 1
    so thinking I've got library problems I ran this:
    nm libocci.so:
    nm: libocci.so: no symbols,
    forgoing any particular program, I get this on 3 different programs here is a much simpler output from a personal copy of occidml.cpp, I ran this:
    /usr/bin/g++ -I$ORACLE_HOME/rdbms/demo -I$ORACLE_HOME/rdbms/public -L/home/gsmith/lib -t -o testcppora main.cpp -locci -lclntst9
    and got this:
    /tmp/ccVtuhIM.o(.gcc_except_table+0x104): undefined reference to `typeinfo for oracle::occi::SQLException'
    /tmp/ccVtuhIM.o(.gcc_except_table+0x15c): undefined reference to `typeinfo for oracle::occi::SQLException'
    /tmp/ccVtuhIM.o(.gcc_except_table+0x1b8): undefined reference to `typeinfo for oracle::occi::SQLException'
    /tmp/ccVtuhIM.o(.gcc_except_table+0x214): undefined reference to `typeinfo for oracle::occi::SQLException'
    /tmp/ccVtuhIM.o(.gcc_except_table+0x278): undefined reference to `typeinfo for oracle::occi::SQLException'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidmlC1ESsSsSs+0x20): In function `occidml::occidml(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::Environment::createEnvironment(oracle::occi::Environment::Mode, void*, void* (*)(void*, unsigned int), void* (*)(void*, void*, unsigned int), void (*)(void*, void*))'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidmlD1Ev+0x2e): In function `occidml::~occidml()':
    : undefined reference to `oracle::occi::Environment::terminateEnvironment(oracle::occi::Environment*)'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x10): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x1d8): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x218): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x25b): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x2b7): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x2cb): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x342): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml10insertBindEiSs+0x35f): In function `occidml::insertBind(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x10): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x198): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x1d8): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x21b): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x277): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x28b): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x302): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9insertRowEv+0x31f): In function `occidml::insertRow()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x10): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x1d8): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x218): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x25b): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x2b7): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x2cb): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x342): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9updateRowEiSs+0x35f): In function `occidml::updateRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x10): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x1d8): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x218): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x25b): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x2b7): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x2cb): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x342): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml9deleteRowEiSs+0x35f): In function `occidml::deleteRow(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x10): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x23d): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::SQLException(oracle::occi::SQLException const&)'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x27d): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::getErrorCode() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x2c0): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::getMessage() const'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x31c): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x330): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x3c5): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /tmp/ccVtuhIM.o(.gnu.linkonce.t._ZN7occidml14displayAllRowsEv+0x3e2): In function `occidml::displayAllRows()':
    : undefined reference to `oracle::occi::SQLException::~SQLException()'
    /usr/bin/ld: link errors found, deleting executable `testcppora'
    /usr/bin/ld: mode elf_i386
    /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/../../../crt1.o
    /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/../../../crti.o
    /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/crtbegin.o
    /tmp/ccVtuhIM.o
    -lstdc++ (/usr/lib/gcc-lib/i386-redhat-linux/3.2.3/libstdc++.so)
    -lm (/usr/lib/gcc-lib/i386-redhat-linux/3.2.3/../../../libm.so)
    -lgcc_s (/usr/lib/gcc-lib/i386-redhat-linux/3.2.3/libgcc_s.so)
    /lib/libc.so.6
    (/usr/lib/libc_nonshared.a)elf-init.oS
    -lgcc_s (/usr/lib/gcc-lib/i386-redhat-linux/3.2.3/libgcc_s.so)
    /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/crtend.o
    /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/../../../crtn.o
    collect2: ld returned 1 exit status
    I've dug through the ld and gcc/g++ parameters and found nothing or create more linking problems. Someone suggested that the install of 9.2.0.5 Oracle C++ did not complete correctly...so I've asked our DBAs to see if they can relink that portion.
    If anyone has any other thoughts it would be greatly appreciated.
    Jerry.

    looks like you are using the wrong compiler. I think you should use gcc2.96 with OCCI 9.2.

  • Excelrepor​tdemo project link error with CVI2010 on windows 7, 64-bit operating system

    I am trying to run the excelreportdemo project in CVI2010 on windows 7, 64-bit operating system. I have the Excel2013 installed as well. I have chosen the build configuration as release or debug for 32 bit system so to be compatible for the test platform for production.
    However, I get 12 Project link errors as following:
    Undefined symbol '_ExcelRpt_RangeBorder@24' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_WriteDataFromTableControl@16' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_SetCellValue' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_SetCellRangeAttribute' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_ChartAddtoWorksheet@40' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_ChartWizard@52' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_SetChartAttribute' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_WorkbookNew@8' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_ApplicationNew@8' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_ApplicationQuit@4' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_WorkbookClose@8' referenced in "excelreportdemo.c".
    Undefined symbol '_ExcelRpt_WorksheetNew@12' referenced in "excelreportdemo.c".
    I have found a previous dicussion back in 2007. Unfortunately it did not help for the same problem on my new machine and CVI2010. Could anyone give me help on this/
    Thanks!
    Yuwei
    Solved!
    Go to Solution.

    The previous discussion link is pasted below:
    http://forums.ni.com/t5/LabWindows-CVI/Problems-adding-the-activex-instrument-e​xperiencing-undefined/m-p/580608/highlight/true#M3​1390
    It did not solve my problem, but may spark your idea of helping me.
    Thanks a lot!
    Yuwei

  • Linker Error during compiling ODBC WinCE C++_Sample Project

    I am devloping a ODBC application for PocketPC2003 using OLite 10g Release 10.3.0.2. before that i am understanding the sample application provided with Olite.
    I followed all the instructions provided in ReadMe.txt file available before using VC++ sample. After making all the settings and compiling i am getting following linker errors as mentioned below.
    Any solution for this problem at the earliest will be appreciated, i have tried link all the libraries provided with WinCE armv4.
    Linker Error Messages:
    Error     1     error LNK2019: unresolved external symbol SQLExecDirect referenced in function "public: virtual __cdecl CSQLResult::~CSQLResult(void)" (??1CSQLResult@@UAA@XZ)     dbaccess.obj     
    Error     2     error LNK2019: unresolved external symbol SQLFreeStmt referenced in function "public: virtual __cdecl CSQLResult::~CSQLResult(void)" (??1CSQLResult@@UAA@XZ)     dbaccess.obj     
    Error     3     error LNK2019: unresolved external symbol SQLGetData referenced in function "public: class CRowObj const * __cdecl CSQLResult::Fetch(int)" (?Fetch@CSQLResult@@QAAPBVCRowObj@@H@Z)     dbaccess.obj     
    Error     4     error LNK2019: unresolved external symbol SQLFetch referenced in function "public: class CRowObj const * __cdecl CSQLResult::Fetch(int)" (?Fetch@CSQLResult@@QAAPBVCRowObj@@H@Z)     dbaccess.obj     
    Error     5     error LNK2019: unresolved external symbol SQLFreeEnv referenced in function "public: void __cdecl COLiteDB::Disconnect(void)" (?Disconnect@COLiteDB@@QAAXXZ)     dbaccess.obj     
    Error     6     error LNK2019: unresolved external symbol SQLFreeConnect referenced in function "public: void __cdecl COLiteDB::Disconnect(void)" (?Disconnect@COLiteDB@@QAAXXZ)     dbaccess.obj     
    Error     7     error LNK2019: unresolved external symbol SQLDisconnect referenced in function "public: void __cdecl COLiteDB::Disconnect(void)" (?Disconnect@COLiteDB@@QAAXXZ)     dbaccess.obj     
    Error     8     error LNK2019: unresolved external symbol SQLConnect referenced in function "public: int __cdecl COLiteDB::Connect(void)" (?Connect@COLiteDB@@QAAHXZ)     dbaccess.obj     
    Error     9     error LNK2019: unresolved external symbol SQLAllocConnect referenced in function "public: int __cdecl COLiteDB::Connect(void)" (?Connect@COLiteDB@@QAAHXZ)     dbaccess.obj     
    Error     10     error LNK2019: unresolved external symbol SQLAllocEnv referenced in function "public: int __cdecl COLiteDB::Connect(void)" (?Connect@COLiteDB@@QAAHXZ)     dbaccess.obj     
    Error     11     error LNK2019: unresolved external symbol SQLError referenced in function "public: class CSQLResult * __cdecl COLiteDB::Execute(wchar_t const *)" (?Execute@COLiteDB@@QAAPAVCSQLResult@@PB_W@Z)     dbaccess.obj     
    Error     12     error LNK2019: unresolved external symbol SQLDescribeCol referenced in function "public: class CSQLResult * __cdecl COLiteDB::Execute(wchar_t const *)" (?Execute@COLiteDB@@QAAPAVCSQLResult@@PB_W@Z)     dbaccess.obj     
    Error     13     error LNK2019: unresolved external symbol SQLNumResultCols referenced in function "public: class CSQLResult * __cdecl COLiteDB::Execute(wchar_t const *)" (?Execute@COLiteDB@@QAAPAVCSQLResult@@PB_W@Z)     dbaccess.obj     
    Error     14     error LNK2019: unresolved external symbol SQLAllocStmt referenced in function "public: class CSQLResult * __cdecl COLiteDB::Execute(wchar_t const *)" (?Execute@COLiteDB@@QAAPAVCSQLResult@@PB_W@Z)     dbaccess.obj

    Hi,
    The OLITE forum (Database Mobile Server (inc. legacy Database Lite) would be a better place to post your issue. This forum deals with the ODBC driver that connects to a "normal" Oracle database.
    Hope it helps,
    Greg
    Edited by: gdarling on Nov 12, 2008 8:31 AM

  • Linker error «error: undefined reference to '__ZN7problemC1Ev'»

    Here's some code I have been trying to compile all day and having gotten a cryptic linker error that I can't figure out.
    First here is my Makefile:
    T09: check
      @echo "-------- problem --------"
      "$(FLASCC)/usr/bin/g++" $(BASE_CFLAGS) main.cpp -swf-size=960x540 -emit-swf -o problem.swf -lAS3++ -lFlash++
    include ../Makefile.common
    clean:
      rm -f *.swf
    main.cpp
    #include "AS3/AS3.h"
    #include "problem.h"
    int main()
              problem *prob;
        prob = new problem;   
              printf("main\n");
        AS3_GoAsync();
    problem.h
    #ifndef _STATE_GAME_H_
    #define _STATE_GAME_H_
    #include "AS3/AS3++.h" // using AS3 var wrapper class
    #include "Flash++.h" // using AVM2 sync primitives
    // use "ui" AS3 var wrappers which marshall var manipulations to the ui Worker
    using namespace AS3::ui;
    class state_Game;
    class state_Menu;
    class problem {
              public:
                        problem();
                        void changeState(int k, state_Game *sg);
                        var update(state_Game *sg);
    #endif
    problem.cpp
    #include "problem.h"
    #ifndef _STATE_GAME_H_
    #define _STATE_GAME_H_
    #include "object_Background.h"
    void problem::changeState(int k, state_Game *sg)
              if (sg->getCurrrentState() >= 0)
                        sg->clearState();
                        sg->setCurrrentState(-1);
              state_Menu *psm;
              psm = new state_Menu;
    var problem::update(state_Game *sg)
              sg->update();
    problem::problem()
              state_Game *gameState;
              gameState = new state_Game;
              object_Background *background;
              background = new object_Background;
              changeState(0, gameState); //set to MENU_STATE at first
    #endif
    state_Menu.h
    #ifndef _STATE_GAME_H_
    #define _STATE_GAME_H_
    #include "state_Game.h"
    class state_Menu : public state_Game
              public:
                        state_Menu()
    #endif
    state_Game.h
    class state_Game {
              private:
                        int current_state;
              public:
                        state_Game()
                                            current_state = -1;
                        void makeState()
                        void clearState()
                        void update()
                        int getCurrrentState()
                                            return current_state;
                        void setCurrrentState(int k)
                                            current_state = k;
    When I compile this I get the following linker error:
    /var/folders/fs/ldvqpfrd2ng11w5d26f6qq540000gn/T//ccVLfrEH.o: error: undefined reference to '__ZN7problemC1Ev'
    This is a compiler generated file, '__ZN7problemC1Ev'.  I don't know why this is occurring since their are no errors in the compile phase and I do not have a class of this name.
    Can someone help me understand what is going on here?

    EDIT: Haha, so by the time I wrote this post, 3 people have already responded. Some of the stuff I cover has already been said.
    So I took a more in depth look at your code and I noticed a couple things. Granted, it's hard to debug code when I only have a small chunk but here's what I noticed:
    (Super small bug) You need to #include <stdio.h> in your main.cpp for the printf.
    There is a #ifndef _STATE_GAME_H_ in almost every file. During the pre-processing, it will pick up the fact that in subsequent files that you have this in, it will not include them. So, if you want to have each file included make a new pre-processor directive for each file.
    problem.h      => #ifndef _PROBLEM_H_
    state_Game.h => #ifndef _STATE_GAME_H_
    state_Menu.h => #ifndef _STATE_MENU_H_
    Also, as a side note for #2, don't put those #ifndefs in the .cpp files. They only need to be in the .h, but #include the .h in the .cpp.
    You don't seem to put parens after any of your constructors. You may want to explicitly specify to the compiler to use the nullary constructors.
              ex:
    === main.cpp ===
    #include <stdio.h>
    #include "problem.h"
    int main()
          problem *prob = new problem();                // <- this might be the problem
          printf("main\n");
          AS3_GoAsync();
    === problem.cpp ===
    #include "problem.h"
    #include "state_Menu.h"
    #include "state_Game.h"
    #include "object_Background.h"
    problem::problem()
              state_Game *gameState = new state_Game();
              object_Background *background = new object_Background();
              changeState(0, gameState); //set to MENU_STATE at first
    Finally, I've come to notice that putting .h files in the Makefile's build command does nothing. It will only respond to adding .cpp files. So for your state_Menu.h and state_Game.h files - as long as the pre-processing directives are setup correctly - they will be automagically included because there is no corresponding .cpp file. As long as problem.cpp and main.cpp are the only 2 .cpp files in your project, this commend will work.
    "$(FLASCC)/usr/bin/g++" $(BASE_CFLAGS) problem.cpp main.cpp -swf-size=960x540 -emit-swf -o problem.swf -lAS3++ -lFlash++

  • Linker error: undefined reference to `XMLParser::xmlinit(...)'

    Hi,
    I downloaded:
    "Oracle XML Developer's Kit for C++ for Solaris-9i"
    version: 9.2.0.2.0 03/31/02
    Now when I try to compile the demo files by doing make the linker gives me the following error:
    undefined reference to `XMLParser::xmlinit(...)'
    undefined reference to `XMLParser::xmlparse(...)'
    undefined reference to `XMLParser::getDocumentElement(void)'
    undefined reference to `XMLParser::xmlterm(void)'
    Any idea what could be wrong (I am using the same Makefile.defs which comes with this version)
    XDK_LIB=-lxmlg9 -lxml9 -lxsd9
    ORA_LIB=-lcore9 -lnls9 -lunls9 -lcore9 -lnls9 -lcore9
    NET_LIB=-lnsl -lsocket
    LIB= -L$(TOP)/lib $(XDK_LIB) $(ORA_LIB) $(NET_LIB)
    Thanks,
    Usman.

    This seems like a C++ problem. I don't think we can help you here.

  • OCCI Linking Error (undefined reference to `__intel_personality_routine')

    Machine: Itanium 2 (ia64)
    OS: Red Hat Enterprise Linux AS release 3 (Taroon Update 5)
    Oracle: Oracle 10g R2 (10.2.0.1.0) for Linux Itanium
    Compiler: gcc-3.2.3-52
    Problem:
    when I compile my application i get the following errors:
    /oracle/oracle/product/10.2.0/db_1/lib/libocci.so: undefined reference to `__intel_personality_routine'

    Hello Mr. Romeo,
    Unfortunately this week I don't have access to the build and development platform IA64 RHEL 4.5 so I can offer you just some approximate hints related to your last question (my current working platform is Solaris 10 x86-64 but there are similarities):
    0. Unpack your shipped ORACLE database package using:
    gunzip <oracle version>database<OS platform>_<OS architecture>.cpio.gz
    cpio -ivd < <oracle version>database<OS platform>_<OS architecture>.cpio
    1.In order to see what are the components including OCCI please run one of the belows:
    find database/ -name '*' -type f -exec grep -i 'libocci' {} \; 1>occi.lst 2>/dev/null
    or better
    for f in `find database/ -name '*.jar' -type f -print`; do unzip -l $f | grep occi; if [ $? -eq 0 ]; then printf "COMPONENT ------------------ %s\n" $f; fi; done
    basically you should get the following list of components:
    database/stage/Components/oracle.rdbms.rsf.ic/10.2.0.1.0/1/DataFiles/filegroup2.jar
    database/stage/Components/oracle.rdbms.oci/10.2.0.1.0/1/DataFiles/filegroup3.jar
    database/stage/Components/oracle.rdbms.oci/10.2.0.1.0/1/DataFiles/filegroup2.jar
    database/stage/Components/oracle.rdbms.oci/10.2.0.1.0/1/DataFiles/filegroup1.jar
    database/stage/Components/oracle.rsf.hybrid/10.2.0.0.0/1/DataFiles/filegroup3.jar
    As you can see there three distinct components including references to troublesome OCCI component.
    The first (oracle.rdbms.rsf.ic) one usually includes the shared library 'lib/libocci.so.10.1' which was built under the mixed RFC.IC environment: please check it by:
    -- create temporary directory AAA:
    mkdir -p AAA
    -- extract the component you need out of archive:
    unzip database/stage/Components/oracle.rdbms.rsf.ic/10.2.0.1.0/1/DataFiles/filegroup2.jar lib/libocci.so.10.1 -d AAA/
    -- check it by:
    file AAA/lib/libocci.so.10.1 (to get the binary file profile info)
    nm -Al AAA/lib/libocci.so.10.1 | grep __intel_personality_routine (searching out for undefined symbol...please refer man page of nm for further info)
    objdump -h AAA/lib/libocci.so.10.1 (to collect ELF-EFI profile info ...first two are important -h and -f ...)
    objdump -f AAA/lib/libocci.so.10.1
    objdump -x AAA/lib/libocci.so.10.1
    Here try to pick up some conclusions and eventually send me the outputs if don't manage figure out the outputs you get.
    The next three entries are coming from the component oracle.rdbms.oci (our bad guy...) and should contain something like:
    2733 09-13-05 13:23 bin/genoccish
    %ORACLE_HOME%/bin/genoccish
    COMPONENT ------------------ database/stage/Components/oracle.rdbms.oci/10.2.0.1.0/1/DataFiles/filegroup3.jar
    2425378 10-19-05 16:55 lib/libocci10.a
    %ORACLE_HOME%/lib/libocci10.a
    1259357 10-04-05 16:27 lib/libocci10_296.so.10.1
    %ORACLE_HOME%/lib/libocci10_296.so.10.1
    1752124 10-04-05 16:27 lib/libocci10_296.a
    %ORACLE_HOME%/lib/libocci10_296.a
    COMPONENT ------------------ database/stage/Components/oracle.rdbms.oci/10.2.0.1.0/1/DataFiles/filegroup2.jar
    2115 10-15-02 02:19 rdbms/public/occi.h
    %ORACLE_HOME%/rdbms/public/occi.h
    11600 03-03-04 03:59 rdbms/public/occiAQ.h
    %ORACLE_HOME%/rdbms/public/occiAQ.h
    38530 06-23-05 07:55 rdbms/public/occiCommon.h
    %ORACLE_HOME%/rdbms/public/occiCommon.h
    73063 01-10-05 20:08 rdbms/public/occiControl.h
    %ORACLE_HOME%/rdbms/public/occiControl.h
    35218 11-08-04 21:36 rdbms/public/occiData.h
    %ORACLE_HOME%/rdbms/public/occiData.h
    29156 11-13-03 20:59 rdbms/public/occiObjects.h
    %ORACLE_HOME%/rdbms/public/occiObjects.h
    COMPONENT ------------------ database/stage/Components/oracle.rdbms.oci/10.2.0.1.0/1/DataFiles/filegroup1.jar
    The last one just include related header files and have no relevance in our issue, so lets have a look over the first two:
    bin/genoccish – is the well known generation script (you already dealt with it)
    lib/libocci10.a – is the static library which isn't built from *.o files being already shipped :-(
    lib/libocci10_296.a – are for gcc296 and should be used only for GCC296...
    So our static library (archive) lib/libocci10.a should be also checked by:
    nm -Al AAA/lib/libocci10.a | grep __intel_personality_routine (searching out for undefined symbol...please refer man page of nm for further info)
    Most probable the symbol is there and is undefined...:-( So for the time being our work-around seems to be the only way we have !!!
    The last component is for hybrid platforms only (it could be missing from your IA64...I am not sure is IA64 is still treated as an hybrid platform...:-) ) and contains the 32 bit versions...you can check them as in the previous cases from above but assuming that these 32 bit versions are clean (not referring any uresoved symbols...:-)) this is restricting you to build your applications for 32 bit only...
    1764366 09-08-05 03:43 lib32//libocci10.a
    %ORACLE_HOME%/lib32//libocci10.a
    1397960 10-20-05 02:54 lib32//libocci.so.10.1
    %ORACLE_HOME%/lib32//libocci.so.10.1
    COMPONENT ------------------ database/stage/Components/oracle.rsf.hybrid/10.2.0.0.0/1/DataFiles/filegroup3.jar
    All the best and let me know if you need more support with that,
    Ioan

Maybe you are looking for

  • Cant see songs on my ipod. please help.

    Hello to all reading this, and thank you for lending me your time. first: please note that i did do all that i can (restoring, updating, formating, reseting, checking the discussions for s solution, asking friends, and so on) before handing my proble

  • The Relate Field is not working, why ?

    Hello, I'm editing the Customer Statement Report (Collection Report) from the System.  I need the Customer Reference Number and it never works with the original system report.  I don't understand why I don't have anything there because I did save dat

  • Moving images within a catalogue

    I've noticed a phenomenon where, when re-ordering a group of images within a catalogue, LR2 (and 2.2) moves the last photo in the group to the front of the group. It's very time consuming to fix. Is anyone else having the same problem? Cheers Kevin

  • Example of calling PL/SQL func in JavaScript

    I need to validate a form element based on existing database value and give an alert. Does anyone know how to capture the value returned by a PL/SQL func in JavaScript variable? Thanks.

  • Unusual behaviour of the jsf engine -- require explanation

    Scenario: A list page with pagination enabled on the dataTable. Each entity has 3 links 'EDIT', 'DELETE' and 'START/STOP'. On clicking EDIT , the detail of that row is taken and a details page is displayed for editing. On click of DELETE, a confirmat