C++ linking error Undefined symbols AIX 5.3 xlC bdb 4.7
I am getting the following linking error while linking the MyCb example given in Berkley DB guide
xlC -bnoquiet -o /ra2/frt_bld/TMPBIN/BDBtest \
/ra2/frt_bld/TMPOBJ/DBAbs.o \
/ra2/frt_bld/TMPOBJ/MyDb.o \
/ra2/frt_bld/TMPOBJ/PPNum.o \
/ra2/frt_bld/TMPOBJ/PPNumStore.o \
/ra2/frt_bld/TMPOBJ/PPNumStoreDB.o \
/ra2/frt_bld/TMPOBJ/UTDbtest.o \
/ra2/frt_bld/TMPOBJ/UTPPNUm.o \
-lC_r ../../../ACE_wrappers/ace/libACE.so -ldb_cxx -L../../../db-4.7.25/build_unix -L/usr/local/ssl -L/../../../ACE_wrappers/ace -lcrypto -lpthread -lz -lm -o /ra2/frt_bld/TMPBIN/BDBtest
ld: 0711-318 ERROR: Undefined symbols were found.
The following symbols are in error:
Symbol Inpndx TY CL Source-File(Object-File) OR Import-File{Shared-object}
RLD: Address Section Rld-type Referencing Symbol
.Db::set_error_stream(std::basic_ostream<char,std::char_traits<char> >*) [1010] ER PR MyDb.cpp(/ra2/frt_bld/TMPOBJ/MyDb.o)
00003b50 .text R_RBR [148] .MyDb::MyDb(std::basic_string<char,std::char_traits<char>,std::allocator<char> >&,std::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
.Db::open(DbTxn*,const char*,const char*,DBTYPE,unsigned int,int) [1012] ER PR MyDb.cpp(/ra2/frt_bld/TMPOBJ/MyDb.o)
00003b84 .text R_RBR [148] .MyDb::MyDb(std::basic_string<char,std::char_traits<char>,std::allocator<char> >&,std::basic_string<char,std::char_traits<char>,std::allocator<char> >&)
ER: The return code is 8.
ld: 0711-317 ERROR: Undefined symbol: .Db::open(DbTxn*,const char*,const char*,DBTYPE,unsigned int,int)
// File: MyDb.cpp
#include "MyDb.h"
#include <string>
#include <iostream>
// Class constructor. Requires a path to the location
// where the database is located, and a database name
MyDb::MyDb(std::string &path, std::string &dbName)
: db_(NULL, 0), // Instantiate Db object
dbFileName_(path + dbName), // Database file name
cFlags_(DB_CREATE) // If the database doesn't yet exist,
// allow it to be created.
try
// Redirect debugging information to std::cerr
db_.set_error_stream( static_cast<std::ostream *>(&std::cerr) );
// Open the database
db_.open(NULL, dbFileName_.c_str(), NULL, DB_BTREE, cFlags_, 0);
// DbException is not a subclass of std::exception, so we
// need to catch them both.
catch(DbException &e)
std::cerr << "Error opening database: " << dbFileName_ << "\n";
std::cerr << e.what() << std::endl;
catch(std::exception &e)
std::cerr << "Error opening database: " << dbFileName_ << "\n";
std::cerr << e.what() << std::endl;
//And then we need the implementation for the close() method:
// Private member used to close a database. Called from the class
// destructor.
void
MyDb::close()
// Close the db
try
db_.close(0);
std::cout << "Database " << dbFileName_
<< " is closed." << std::endl;
catch(DbException &e)
std::cerr << "Error closing database: " << dbFileName_ << "\n";
std::cerr << e.what() << std::endl;
catch(std::exception &e)
std::cerr << "Error closing database: " << dbFileName_ << "\n";
std::cerr << e.what() << std::endl;
Thanks
Anand Rathi
Edited by: user10127683 on Jun 10, 2009 9:02 AM
Hi Anand,
http://www.oracle.com/technology/documentation/berkeley-db/db/ref/build_unix/aix.html <-- check FAQ #4.
Please use a "-D_LARGE_FILES=1" when building BDB on AIX.
Let me know how it works.
Thanks,
Bogdan Coman
Similar Messages
-
Linking Error : Undefined Symbols: SUN Studio 5
Hi ,
I am facing some Linking error which throws up Undefined Symbol errors like .
[Undefined first referenced
symbol in file
__rwstd::__rb_tree<DevNexus,DevNexus,__rwstd::__ident<DevNexus,DevNexus>,std::less<DevNexus>,std::allocator<DevNexus> >::iterator __rwstd::__rb_tree<DevNexus,DevNexus,__rwstd::__ident<DevNexus,DevNexus>,std::less<DevNexus>,std::allocator<DevNexus> >::erase(__rwstd::__rb_tree<DevNexus,DevNexus,__rwstd::__ident<DevNexus,DevNexus>,std::less<DevNexus>,std::allocator<DevNexus> >::iterator,__rwstd::__rb_tree<DevNexus,DevNexus,__rwstd::__ident<DevNexus,DevNexus>,std::less<DevNexus>,std::allocator<DevNexus> >::iterator) PacketServer.o
__type_0 std::find<std::deque<AdapterPort,std::allocator<AdapterPort> >::iterator,AdapterPort>(__type_0,__type_0,const __type_1&) PacketServer.o
void std::vector<Controller,std::allocator<Controller> >::__insert_aux(Controller*,const Controller&) Subsystem.o
void std::deque<AdapterDisc,std::allocator<AdapterDisc> >::__allocate_at_end() PacketServer.o
__rwstd::__rb_tree<unsigned long,std::pair<const unsigned long,char*>,__rwstd::__select1st<std::pair<const unsigned long,char*>,unsigned long>,std::less<unsigned long>,std::allocator<std::pair<const unsigned long,char*> > >::iterator __rwstd::__rb_tree<unsigned long,std::pair<const unsigned long,char*>,__rwstd::__select1st<std::pair<const unsigned long,char*>,unsigned long>,std::less<unsigned long>,std::allocator<std::pair<const unsigned long,char*> > >::erase(__rwstd::__rb_tree<unsigned long,std::pair<const unsigned long,char*>,__rwstd::__select1st<std::pair<const unsigned long,char*>,unsigned long>,std::less<unsigned long>,std::allocator<std::pair<const unsigned long,char*> > >::iterator,__rwstd::__rb_tree<unsigned long,std::pair<const unsigned long,char*>,__rwstd::__select1st<std::pair<const unsigned long,char*>,unsigned long>,std::less<unsigned long>,std::allocator<std::pair<const unsigned long,char*> > >::iterator) DeviceProp.o
std::deque<AdapterPort,std::allocator<AdapterPort> >::~deque() PacketServer.o
__type_0 std::find<std::deque<AdapterDisc,std::allocator<AdapterDisc> >::iterator,char*>(__type_0,__type_0,const __type_1&) PacketServer.o
unsigned std::deque<AdapterPort,std::allocator<AdapterPort> >::__buffer_size() PacketServer.o
unsigned std::deque<AdapterDisc,std::allocator<AdapterDisc> >::__buffer_size() PacketServer.o
void __rwstd::__rb_tree<DevNexus,DevNexus,__rwstd::__ident<DevNexus,DevNexus>,std::less<DevNexus>,std::allocator<DevNexus> >::__deallocate_buffers() PacketServer.o
std::deque<AdapterDisc,std::allocator<AdapterDisc> >::~deque() PacketServer.o
ld: fatal: Symbol referencing errors. No output written to spagent
*** Error code 1
make: Fatal error: Command failed for target `spagent'
Current working directory /home/kiranc/solaris_hang1/4.0/agent
*** Error code 1
make: Fatal error: Command failed for target `recurse'
Current working directory /home/kiranc/solaris_hang1/4.0/agent
*** Error code 1
make: Fatal error: Command failed for target `all'
I am using Sun Studio 5. Pls let me know how to resolve/fix this. Unfortunately I cant upgrade the Sun Studio.
Thanks in Advance
KiranHi Kiran ,
if you cannot upgrade Sun Studio, I suggest that you take a view on this solution:
http://forum.java.sun.com/thread.jspa?forumID=850&threadID=5069680
It only works to std::vector::__insert_aux method, but I think you could get some useful idea from it.
Good luck.
Bye. -
Linking Error : Undefined Symbols
Hi evryone,
I am facing some Linking error which throws up Undefined Symbol errors like .
Undefined first referenced
symbol in file
vector<DPEEDFU>::insert_aux(DPEEDFU*, const DPEEDFU&) ./obj/dpeesel.o
I am migrating the code to Sun 5.2 & using -compat=4 for compilation.
On some analysis using nm , I found that the symbols which are flagged as UNDEFINED are in fact getting defined in the temporary objects created in the SunWS_cache directory.
Any suggestion on how to resolve this.
urgent help needed.
Thanks & Regards
shivaHi,
I am running into same(similar) issue. I am using Forte 6 update2. I have created the links manually. I am looking to do dynamic linking of the libCstd. Now,
here's a snippet of the error I see :
/import/sunray/tools/WS6u2/SUNWspro/bin/CC -o SunOS.sparc/uttsc SunOS.sparc/main.o SunOS.sparc/platforminfo.o -L../../lib/tscutil/SunOS.sparc -L../../lib/addins/rdpdr/fs/SunOS.sparc -L../../lib/addins/rdpdr/scard/SunOS.sparc -L../../lib/addins/rdpdr/print/SunOS.sparc -L../../lib/addins/rdpdr/serial/SunOS.sparc -L../../lib/addins/rdpdr/SunOS.sparc -L../../lib/enum/SunOS.sparc -L../../lib/addins/cliprdr/SunOS.sparc -L../../lib/audio/SunOS.sparc -L../../lib/aipa/SunOS.sparc -L../../lib/addins/rdpsnd/SunOS.sparc -L../../lib/util/SunOS.sparc -L../../lib/vxrdp/SunOS.sparc -L../../lib/vx/SunOS.sparc -L../../lib/rdp/SunOS.sparc -L../../lib/mcs/SunOS.sparc -L../../lib/isot/SunOS.sparc -L../../lib/common/SunOS.sparc -L../../lib/X11/SunOS.sparc -L../../lib/platform/SunOS.sparc -L../../lib/device/serial/posix/SunOS.sparc -L../../lib/device/fs/posix/SunOS.sparc
-L../../lib/device/print/lpr/SunOS.sparc -L../../lib/device/SunOS.sparc -L/usr/X11R6/lib -L/usr/openwin/lib -ltscutil --lcommon -lXext -lX11 -lplatform -lCstd -lcrypto
Undefined first referenced
symbol in file
void std::list<addins::rdpdr::IDeviceService*,std::allocator<addins::rdpdr::IDeviceService*> >::__deallocate_buffers() ../../lib/addins/rdpdr/SunOS.sparc/librdpdr.a(devicemanager.o)
bind ../../lib/platform/SunOS.sparc/libplatform.a(socket.o) (symbol belongs to implicit dependency /usr/lib/libsocket.so.1)
std::pair<__rwstd::__rb_tree<unsigned,std::pair<const unsigned,device::serial::Device*>,__rwstd::__select1st<std::pair<const unsigned,device::serial::Device*>,unsigned>,std::less<unsigned>,std::allocator<std::pair<const unsigned,device::serial::Device*> > >::iterator,bool>__rwstd::__rb_tree<unsigned,std::pair<const unsigned,device::serial::Device*>,__rwstd::__select1st<std::pair<const unsigned,device::serial::Device*>,unsigned>,std::less<unsigned>,std::allocator<std::pair<const unsigned,device::serial::Device*> > >::insert(const std::pair<const unsigned,device::serial::Device*>&) ../../lib/addins/rdpdr/serial/SunOS.sparc/librdpdrserial.a(source.o)
void __rwstd::__rb_tree<unsigned,std::pair<const unsigned,device::fs::Device*>,__rwstd::__select1st<std::pair<const unsigned,device::fs::Device*>,unsigned>,std::less<unsigned>,std::allocator<std::pair<const unsigned,device::fs::Device*> > >::__deallocate_buffers() ../../lib/addins/rdpdr/fs/SunOS.sparc/librdpdrfs.a(rdpdrfssource.o)
__type_1 std::copy<std::deque<Buffer,std::allocator<Buffer> >::const_iterator,std::back_insert_iterator<std::deque<Buffer,std::allocator<Buffer> > > >(__type_0,__type_0,__type_1) ../../lib/audio/SunOS.sparc/libaudio.a(audiodevsink.o)
std::list<enumeration::DeviceInfo*,std::allocator<enumeration::DeviceInfo*> >::iterator std::list<enumeration::DeviceInfo*,std::allocator<enumeration::DeviceInfo*> >::erase(std::list<enumeration::DeviceInfo*,std::allocator<enumeration::DeviceInfo*> >::iterator,std::list<enumeration::DeviceInfo*,std::allocator<enumeration::DeviceInfo*> >::iterator) ../../lib/enum/SunOS.sparc/libenum.a(pnpmodule.o)
...<many more>...
How did you resolve your issue ?
Thanks
Sangeeta -
Link error: Undefined symbols... mhm what's wrong
Hi,
I got the following error:
"Database::mxFace", referenced from:
__ZN8Database6mxFaceE$non_lazy_ptr in faceTracker.o
my app is very simple:
class Database {
public:
Database() {
//~Database();
static void setFace(int xFace,int yFace)
mxFace = xFace;
myFace = yFace;
static int getFaceX() {return mxFace;};
static int getFaceY() {return myFace;};
private:
static int mxFace;
static int myFace;
what's wrong ?
thanksHi
WHERE
"Metadatacopy4"."Instance" =
" = "FILE_SUBJECTSM4"."INSTANCE",
"wwv_flow_files"."name" =
" = "FILE_SUBJECTSM4"."NAME"
You have to use AND - Klause and don't use comma.
WHERE
"Metadatacopy4"."Instance" =
" = "FILE_SUBJECTSM4"."INSTANCE" AND
"wwv_flow_files"."name" =
" = "FILE_SUBJECTSM4"."NAME"
Regards
Dmytro Dekhtyaryuk -
Pro*C using Oracle 11g - ld: 0711-317 ERROR: Undefined symbol: .sqlcxt
Hi
We we are migrating from oracle 10g to 11g and AIX 5.3 to AIX 6.1. When I run the make file I get the following link errors. Note the 10g system is running using 32bit libs, and the new system is runing the 64bit libs.
makegmake -f Makefile.all all SYSTEM=rs6k CC="cc_r" LINKER="cc_r"
cc_r -lclntsh -L/wfm/usr/oracle/product/11.2.0/db/lib /home/Builds/CommonLib/Lib/AIX/cuCommonLib.a TagCommonLib/tagCommonLi
b.a ObjFiles/TagDailyStats.o ObjFiles/TagCreate.o ObjFiles/EventLogMessageFormat.o ObjFiles/TagHeartBeatMsg.o ObjFiles/TagWriteTimingLog.o ObjFiles/Ta
gGenMain.o -o TagTG
ld: 0711-317 ERROR: Undefined symbol: .sqlcxt
ld: 0711-317 ERROR: Undefined symbol: .sqlglm
ld: 0711-317 ERROR: Undefined symbol: .sqlbuft
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
gmake: *** [TagTG] Error 8
make: 1254-004 The error code from the last command is 2.
After reading some of the ideas on the web, I added the following options, -lsql11 -I/wfm/usr/oracle/product/11.2.0/db/precomp/public, but got the same error.
> make
gmake -f Makefile.all all SYSTEM=rs6k CC="cc_r" LINKER="cc_r"
cc_r -lclntsh -lsql11 -I/wfm/usr/oracle/product/11.2.0/db/precomp/public -L/wfm/usr/oracle/product/11.2.0/db/lib /home/Buil
ds/CommonLib/Lib/AIX/cuCommonLib.a TagCommonLib/tagCommonLib.a ObjFiles/TagDailyStats.o ObjFiles/TagCreate.o ObjFiles/EventLogMessageFormat.o ObjFiles
/TagHeartBeatMsg.o ObjFiles/TagWriteTimingLog.o ObjFiles/TagGenMain.o -o TagTG
ld: 0711-317 ERROR: Undefined symbol: .sqlcxt
ld: 0711-317 ERROR: Undefined symbol: .sqlglm
ld: 0711-317 ERROR: Undefined symbol: .sqlbuft
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
gmake: *** [TagTG] Error 8
make: 1254-004 The error code from the last command is 2.
Can anyone please suggest to me what I am doing wrong .
Thanks,
JimHi,
I'm experiencing the same problem, thank you for your 32 bit tip.
I installed InstantClient for 64bit and didn't find any of the sql??? functions.
http://download.oracle.com/otn/linux/instantclient/112010/oracle-instantclient11.2-precomp-11.2.0.1.0-1.x86_64.zip
After that I installed the 64 bit client with universal installer, sql*plus, programmer and OCI packets, got lots of errors, cause I have not the official distribution and scripts are partly wrong.
T24-SMS-1:/usr/lib# uname --all
Linux T24-SMS-1 2.6.26-2-amd64 #1 SMP Wed May 12 18:03:14 UTC 2010 x86_64 GNU/Linux
Then again I searched for sql??? functions sqlcxt I took and found them: (Note: they were not present with the instantclient distri with proc libraries
T24-SMS-1:/usr/lib# find /home/sms/instantclient_11_2/lib -type f -exec grep -H -i sqlcxt {} \; | grep Binary
Binary file /home/sms/instantclient_11_2/lib/libsql11.a matches
Binary file /home/sms/instantclient_11_2/lib/liborasdk.so.11.1 matches
Binary file /home/sms/instantclient_11_2/lib/libsrvmhas11.so matches
Binary file /home/sms/instantclient_11_2/lib/libclntsh.so.11.1 matches
Binary file /home/sms/instantclient_11_2/lib/libsqlplus.a matches
After that I again got the same errors. I will try the 32 bit distribution and I hope I will find some header file with sql??? functions in it. -
[Solved]All QT programs crash."symbol lookup error","undefined symbol"
Today when I open my computer I can not start any QT program. For example the error messages are
kile: symbol lookup error: /usr/lib/libkdecore.so.5: undefined symbol: qt_locale_initialized
kate: symbol lookup error: /usr/lib/libkio.so.5: undefined symbol: _ZN21QNetworkAccessManager16staticMetaObjectE
/usr/bin/qtcreator.bin: symbol lookup error: /usr/bin/qtcreator.bin: undefined symbol: _ZN12QLocalServerC1EP7QObject
okular: symbol lookup error: /usr/lib/libkdecore.so.5: undefined symbol: qt_locale_initialized
Yesterday they are OK. I checked /var/log/pacman.log, yesterday I upgraded these packages
[2010-03-09 10:08] upgraded lib32-libpng (1.4.0-2 -> 1.4.1-1)
[2010-03-09 10:08] upgraded lucene (3.0.0-1 -> 2.9.2-1)
[2010-03-09 10:08] upgraded xorg-server (1.7.5.901-1 -> 1.7.5.901-2)
[2010-03-09 13:18] upgraded ghostscript (8.71-1 -> 8.71-2)
[2010-03-09 19:13] upgraded ipython (0.10-2 -> 0.10-3)
[2010-03-10 09:26] upgraded live-media (2010.02.10-1 -> 2010.03.08-1)
[2010-03-10 09:26] upgraded menu-cache (0.3.1-1 -> 0.3.2-1)
[2010-03-10 09:26] upgraded lxpanel (0.5.5-2 -> 0.5.5-3)
Can any of these changements cause QT crash? Should I down-grade them?
I have also rebuild qt from abs, but errors remain.
Thx.
Last edited by funslove (2010-03-11 08:19:50)It is solved.
I remember that I installed Mathematica and changed the path of library in .bashrc:
export LD_LIBRARY_PATH=/opt/mathematica/SystemFiles/Libraries/Linux-x86-64:$LD_LIBRARY_PATH
There may be some conflict. When I change it to
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/mathematica/SystemFiles/Libraries/Linux-x86-64
Everything is OK. -
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.
-
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 -
Compile error: undefined symbols
hello,
i'm trying to install a software (Omnet, it's a network simulator) but while compiling it I get the following mesage. What do you think it depends on?
Undefined symbols:
"_xmlNewParserCtxt", referenced from:
SAXParser::parse(char const*)in saxparser_libxml.o
"_xmlDocGetRootElement", referenced from:
SAXParser::parse(char const*)in saxparser_libxml.o
"_xmlStructuredError", referenced from:
SAXParser::parse(char const*)in saxparser_libxml.o
"_xmlFreeParserCtxt", referenced from:
SAXParser::parse(char const*)in saxparser_libxml.o
SAXParser::parse(char const*)in saxparser_libxml.o
SAXParser::parse(char const*)in saxparser_libxml.o
"_xmlCtxtReadFile", referenced from:
SAXParser::parse(char const*)in saxparser_libxml.o
"_xmlFreeDoc", referenced from:
SAXParser::parse(char const*)in saxparser_libxml.o
SAXParser::parse(char const*)in saxparser_libxml.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[1]: * [libnedxml.so] Error 1
make: * [nedxml] Error 2You should post such questions in Developer forum.
Also, you will probably get better help from the OMNeT people themselves. They have a bug tracker and mailing list. The tool itself is based on Eclipse and is a 109 MB download. Doesn't look too enticing. -
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 statusDouble-post
-
Getting error undefined symbol
i am using weblogic server 6.1
i have deployed my ststeless session bean
but i don't know how to access it from client what i are the commands such as ejbc
do i need to put that jar file on class path
olease give me the code of that
step by step process
thanks in advanceSeems that some function definition is missing in your project. You have to #include the .h files in your .c file.
Roberto
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos? -
Linker error undefined reference
I'm currently using codeblocks to compile my program... Can't seem to use the gpib functions even though I have already added the gpib-32.obj as shown in the program.. any ideas??
Attachments:
[email protected] 101 KBThis seems like a C++ problem. I don't think we can help you here.
-
Missing prototype and Undefined Symbol errors
So, I am using an Opal Keyy XEM3005 board.
Depending on the documentation I read, this board has a native ANSI C interface with a C++ wrapper.
In their forums, they say to rename the ".cpp" file to "c", and then go forward with calling the default constructor & keep track of the pointer. Their functions are all in an externally loadable DLL.
Well and good.
Their API documentatin is available here: http://www.opalkelly.com/library/FrontPanelAPI/
I have written a REALLY simple app to ease my way in - it does nothing more than allow the user to throw a switch, and when this happens, it goes off to connect to the board:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#include <cvirte.h>
#include <userint.h>
#include "Try1.h"
#include "XEM.h"
#define _WIN32_WINNT 0x0501
//#define _WIN32
#include <windows.h>
static int panelHandle;
static okFrontPanel_HANDLE XEM_Device;
int __stdcall WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpszCmdLine, int nCmdShow)
if (InitCVIRTE (hInstance, 0, 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel (0, "Try1.uir", PANEL)) < 0)
return -1;
DisplayPanel (panelHandle);
RunUserInterface ();
DiscardPanel (panelHandle);
return 0;
int CVICALLBACK Connect (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
int Value = 0;
switch (event)
case EVENT_COMMIT:
GetCtrlVal(PANEL, PANEL_CONNECT_SWITCH, &Value);
SetCtrlVal(PANEL, PANEL_CONNECT_LED, Value);
if( Value )
XEM_Connect(XEM_Device);
else
XEM_Disconnect(XEM_Device);
break;
return 0;
int CVICALLBACK Quit (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
switch (event)
case EVENT_COMMIT:
QuitUserInterface (0);
break;
return 0;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This, of course, works fine by itself (with empty _Connect() and _Disconnect() functions)
I then started working with the XEM_Connect function.
The first step is to run their LoadDLL function as such:
int XEM_Connect ( okFrontPanel_HANDLE XEM_Device )
int NoDevices = 0; // Number of devices attached to the PC
// Load the DLL (?)
// Load the FrontPanel DLL
if (FALSE == okFrontPanelDLL_LoadLib(NULL))
printf("Could not load FrontPanel DLL\n");
exit(-1);
return XEM_SUCCESS;
And this would compile and run just fine.
Now, when I added the functions to start trying to get info about the device, I started getting "missing prototype" errors.
int XEM_Connect ( okFrontPanel_HANDLE XEM_Device )
int NoDevices = 0; // Number of devices attached to the PC
// Load the DLL (?)
// Load the FrontPanel DLL
if (FALSE == okFrontPanelDLL_LoadLib(NULL))
printf("Could not load FrontPanel DLL\n");
exit(-1);
// Find out how many devices are attached
XEM_Device = okFrontPanel_Construct( );
// XEM_Device = okCFrontPanel( void );
// NoDevices = GetDeviceCount( );
printf("%d OK devices attached\n", NoDevices);
// Call the contructor?
// okCFrontPanel ();
return XEM_SUCCESS;
Now, I searched the forums and found the bits about adding #define _WIN32_WINNT 0x0501 prior to inclusion of windows.h. Did that. No joy.
Then I searched some more and found the bit about changing the build options to uncheck the "prototype required" flag.
Done.
This seemed to work at first (the above code could be built with no errors, and appeared to run).
So I thought maybe I had it, and added the next line, so:
int XEM_Connect ( okFrontPanel_HANDLE XEM_Device )
int NoDevices = 0; // Number of devices attached to the PC
// Load the DLL (?)
// Load the FrontPanel DLL
if (FALSE == okFrontPanelDLL_LoadLib(NULL))
printf("Could not load FrontPanel DLL\n");
exit(-1);
// Find out how many devices are attached
XEM_Device = okFrontPanel_Construct( );
OpenBySerial( XEM_Device, "UaLgzvVpBJ" );
// XEM_Device = okCFrontPanel( void );
// NoDevices = GetDeviceCount( );
printf("%d OK devices attached\n", NoDevices);
// Call the contructor?
// okCFrontPanel ();
return XEM_SUCCESS;
Now it doesn't complain about no prototypes (duh), but instead I get linker errors:
Undefined symbol '_OpenBySerial@0' referenced in "XEM.c".
So, dredging through the .h and .c files, I found a couple of things:
in the okFrontPanel.c file I found the following:
okDLLEXPORT ok_ErrorCode DLL_ENTRY
okFrontPanel_OpenBySerial(okFrontPanel_HANDLE hnd, const char *serial)
if (_okFrontPanel_OpenBySerial)
; return((*_okFrontPanel_OpenBySerial)(hnd, serial));
return(ok_UnsupportedFeature);
In the okFrontPanel.h file I found:
and also:
okDLLEXPORT ok_ErrorCode DLL_ENTRY okFrontPanel_OpenBySerial(okFrontPanel_HANDLE hnd, const char *serial);
So, I see them in the .h & .c files, but the linker is bombing out.
I smell a problem with actual code to link being in the DLL... How do I resolve this, any ideas? Or am I doing something so stupidly (and obviously) wrong that I'm being blinded to it?Hi tomii,
My suspicion is that these issues are due to using a C++ dll in a C environment. There are inherent challenges with performing such an operation as you have to make sure all your parameters and settings are correct.
I also could not find the documentation that the Opal Kelly dll is ANSI C but it sounds like you can use this in C with some reconfiguration. I would recommend using their forums to get more information on what steps need to take place to get things working in ANSI C.
From the information you provided, I did find some resources on the missing prototype error and undefined symbol issue with the linker.
For the missing prototype I found a thread of someone actually using LabWindows and seeing this compiler error you may want to look at
http://bytes.com/topic/c/answers/695019-missing-prototype
I found a few cases where using a function definition of int func(void) removes such issue when int func() does not.
Another link I found that may be worth a look can be found at http://www.parashift.com/c++-faq-lite/mixing-c-and-cpp.html
It gives some good pointers to mixing C and C++ code. Some of it may be applicible in your case.
And, a resource for your undefined symbol linking issue.
http://www.cprogramming.com/tutorial/compiler_linker_errors.html
Hopefully these resources will give some context for getting things compiling and working with your dll.
Good luck!
James W.
Applications Engineer
National Instruments -
Strtok_r undefined symbol
Hi,
I am using strtok_r in my program. I have included <string.h>
I am getting linker error undefined symbol strtok_r
What library should be linked? any idea?
I am using SOLARISSunOS lisvr 5.8 Generic_108528-18 sun4u sparc SUNW,Sun-Fire-V210
CC tcpsvr.C -lsocket -lnsl -o tcpsvr
Undefined first referenced
symbol in file
char*strtok_r(char*,const char*,char**) tcpsvr.o
ld: fatal: Symbol referencing errors. No output written to tcpsvr
PS: I have put an extern as follows:
extern char * strtok_r(char *,const char *,char**);
if I dont put this extern stmt, it complained as follows:
CC tcpsvr.C -lsocket -lnsl -o tcpsvr
"tcpsvr.C", line 111: Error: The function "strtok_r" must have a prototype.
1 Error(s) detected.
Following is my function call.
char cpy[1024], lasts[1024];
strcpy(cpy, (char*)command); // command is a string
char * cmd=strtok_r(cpy,"\n",(char**)&lasts);
I tried
extern char * strtok_r(char a,const char b,char** c);
also. -
Linking error cvistart.lib
Hi,
I'm trying to build a DLL and i get the following errors:
4 Project link errors
Undefined symbol '___UFRNameTable' referenced in "c:\program files\national instruments\cvi81\bin\cvistart.lib".
Undefined symbol '___CompiledDebuggingLevel' referenced in "c:\program files\national instruments\cvi81\bin\cvistart.lib".
Undefined symbol '___PtrInfoFixupTable' referenced in "c:\program files\national instruments\cvi81\bin\cvistart.lib".
Undefined symbol '___CVI_Sections' referenced in "c:\program files\national instruments\cvi81\bin\cvistart.lib".
I tryed it on two machines and i also tryed to create an exetuable (after adding main function to the project).
I also tryed to create a new project
Thanks for helpI am having the exact same problem, but only when do a release build. The debug build works fine.
Errors generated when performing a 'release' build'
clear_history_ecu_data.prj(Release) - 4 link errors
Undefined symbol '___CompiledDebuggingLevel' referenced in "c:\program files\national instruments\cvi2009\bin\msvc\cvistart.lib".
Undefined symbol '___PtrInfoFixupTable' referenced in "c:\program files\national instruments\cvi2009\bin\msvc\cvistart.lib".
Undefined symbol '___CVI_Sections' referenced in "c:\program files\national instruments\cvi2009\bin\msvc\cvistart.lib".
Undefined symbol '___UFRNameTable' referenced in "c:\program files\national instruments\cvi2009\bin\msvc\cvistart.lib".
I am using CVI 2009.
I have deleted the build folder and marked all for recompile.
Any suggestions?
Thanx,
thefalk
Maybe you are looking for
-
XSLT 2.0 (works in jdev, but not on server) Reasons?
I created a xslt script to get a date difference. following blogs online - i modified the xsl:stylesheet to 2.0. WHen its tested in Jdev with 2002-11-26T09:50:39 2013-10-26T09:50:39 returns P3987D when I deploy it to the SO
-
Cannot install Adobe Acrobat or Reader on Leopard OS!
Has anyone ever had this problem? I used monolingual software to remove non-english language files & non-Intel architectures for installed applications. I have had problems with Acrobat 9 ever since. It requires me to enter my system administrator pa
-
I always get this error when starting up AE just right when the flash screen appears. AE then crashes. Any help appreciated.
-
Func modules vs. BAPIs; What is a BADI? When do we use it?
Hi experts, I have some ABAP questions and need your help to answer them. 1. What is the difference between a func. module and a BAPI? 2. What is a BADI and in which circumtanse we use it? How can I view a BADI example? 3. What is a WorkFlow and in w
-
WebLogic 10.3 Silent Installation
Hello, I am trying to do silent install of WebLogic 10.3 on the RHEL 5 (64 bit) by running below command. (FYI -I am using generic installer as I could not find the 64 bit installer @ http://www.oracle.com/technetwork/middleware/ias/downloads/wls-mai