| Author |
Message |
|
|
|
Post subject: CIAO on QNX 6.3.2
Posted: Feb 14, 2008 - 04:03 PM
|
|
Active Member
Joined: Feb 12, 2008
Posts: 22
|
|
|
|
|
 |
|
|
Post subject: Re: CIAO on QNX 6.3.2
Posted: Feb 15, 2008 - 05:54 PM
|
|
QNX Master
Joined: Jul 11, 2002
Posts: 600
|
|
|
|
|
 |
|
|
Post subject: RE: Re: CIAO on QNX 6.3.2
Posted: May 08, 2008 - 06:17 PM
|
|
Active Member
Joined: Feb 12, 2008
Posts: 22
|
|
Hi,
After some time, now i am trying to compile/install CIAO 0.6.4 to QNX 6.3.2 (qcc -V3.3.5,gcc_ntox86), and i am facing a linker problem.
steps:
1- I compiled boost librares(regex and filesystem) and installed them to /usr/lib and /usr/include/boost-1_35. Here are the process:
# make
./tools/jam/src/bin.qnxntox86/bjam --user-config=user-config.jam --with-regex --with-filesystem
Building Boost.Regex with the optional Unicode/ICU support disabled.
Please refer to the Boost.Regex documentation for more information
(don't panic: this is a strictly optional feature).
...patience...
...found 544 targets...
...updating 42 targets...
MkDir1 bin.v2
MkDir1 bin.v2/libs
MkDir1 bin.v2/libs/filesystem
MkDir1 bin.v2/libs/filesystem/build
MkDir1 bin.v2/libs/filesystem/build/qcc
MkDir1 bin.v2/libs/filesystem/build/qcc/release
MkDir1 bin.v2/libs/filesystem/build/qcc/release/threading-multi
qcc.compile.c++ bin.v2/libs/filesystem/build/qcc/release/threading-multi/operations.o
qcc.compile.c++ bin.v2/libs/filesystem/build/qcc/release/threading-multi/path.o
qcc.compile.c++ bin.v2/libs/filesystem/build/qcc/release/threading-multi/portability.o
qcc.compile.c++ bin.v2/libs/filesystem/build/qcc/release/threading-multi/utf8_codecvt_facet.o
MkDir1 bin.v2/libs/system
MkDir1 bin.v2/libs/system/build
MkDir1 bin.v2/libs/system/build/qcc
MkDir1 bin.v2/libs/system/build/qcc/release
MkDir1 bin.v2/libs/system/build/qcc/release/threading-multi
qcc.compile.c++ bin.v2/libs/system/build/qcc/release/threading-multi/error_code.o
qcc.link.dll bin.v2/libs/system/build/qcc/release/threading-multi/libboost_system-mt-1_35.so.1.35.0
qcc.link.dll bin.v2/libs/filesystem/build/qcc/release/threading-multi/libboost_filesystem-mt-1_35.so.1.35.0
MkDir1 bin.v2/libs/regex
MkDir1 bin.v2/libs/regex/build
MkDir1 bin.v2/libs/regex/build/qcc
MkDir1 bin.v2/libs/regex/build/qcc/release
MkDir1 bin.v2/libs/regex/build/qcc/release/threading-multi
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/c_regex_traits.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/cpp_regex_traits.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/cregex.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/fileiter.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/icu.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/instances.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/posix_api.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/regex.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/regex_debug.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/regex_raw_buffer.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/regex_traits_defaults.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/static_mutex.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/w32_regex_traits.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/wc_regex_traits.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/wide_posix_api.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/winstances.o
qcc.compile.c++ bin.v2/libs/regex/build/qcc/release/threading-multi/usinstances.o
qcc.link.dll bin.v2/libs/regex/build/qcc/release/threading-multi/libboost_regex-mt-1_35.so.1.35.0
...updated 42 targets...
2- In $CIAO_ROOT and using default GNUmakefile generated by mwc.pl type gnuace CIAO_TAO_DAnCE.wmc (an script to help generate makefiles), i started the compilation with 'make', and at some point of the compilation process an error occurs:
make[1]: Entering directory `/usr/local/ACE_wrappers/TAO/CIAO/CIDLC'
GNUmakefile: /usr/local/ACE_wrappers/TAO/CIAO/CIDLC/GNUmakefile.CIDLC MAKEFLAGS=wI /usr/qnx632/target/qnx6/usr/include
QCC -fexceptions -fno-inline -pipe -W -Wall -Wpointer-arith -I/usr/include -I/usr/local/ACE_wrappers/contrib/utility -p
ipe -W -Wall -Wpointer-arith -Y _gpp -I/usr/local/ACE_wrappers -I/usr/local/ACE_wrappers/TAO/CIAO -DACE_NDEBUG -DACE_
USE_RCSID=0 -DACE_HAS_EXCEPTIONS -DACE_NO_INLINE -I../../../../../include/boost-1_35 -I../../../../../. -I.. -I../CCF -I
../../../contrib/utility -L/opt/lib -fexceptions -L/usr/local/ACE_wrappers/ace -L./ -L/usr/local/ACE_wrappers/lib -L/us
r/local/ACE_wrappers/TAO/CIAO/ciao -L. -L../../../../../lib -L../CCF/CCF -L../../../lib -o cidlc .obj/AttributeHeaderEmi
tters.o .obj/cidlc.o .obj/CompositionEmitter.o .obj/CorbaTypeNameEmitters.o .obj/CxxNamePrinter.o .obj/DescriptorGenerat
or.o .obj/EmitterBase.o .obj/EmitterContext.o .obj/ExecImplGenerator.o .obj/ExecImplHeaderGenerator.o .obj/ExecImplSourc
eGenerator.o .obj/ExecutorMappingGenerator.o .obj/InterfaceEmitter.o .obj/Literals.o .obj/ModuleEmitter.o .obj/Operation
HeaderEmitters.o .obj/RepositoryIdGenerator.o .obj/ServantGenerator.o .obj/ServantHeaderGenerator.o .obj/ServantSourceGe
nerator.o .obj/SizeTypeCalculator.o .obj/UtilityTypeNameEmitters.o -lCIDL -lIDL3 -lIDL2 -lCodeGenerationKit -lCompilerEl
ements -lboost_regex-mt-1_35 -lboost_filesystem-mt-1_35 -lsocket -lstdc++ -lm
/usr/qnx632/host/qnx6/x86/usr/bin/i386-pc-nto-qnx6.3.0-ld: warning: bin.v2/libs/system/build/qcc/release/threading-multi
/libboost_system-mt-1_35.so.1.35.0, needed by ../../../../../lib/libboost_filesystem-mt-1_35.so, not found (try using -r
path or -rpath-link)
.obj/AttributeHeaderEmitters.o: In function `__static_initialization_and_destruction_0(int, int)':
.obj/AttributeHeaderEmitters.o(.text+0xf75): undefined reference to `boost::system::get_system_category()'
.obj/AttributeHeaderEmitters.o(.text+0xf8e): undefined reference to `boost::system::get_posix_category()'
.obj/AttributeHeaderEmitters.o(.text+0xfa7): undefined reference to `boost::system::get_posix_category()'
.obj/AttributeHeaderEmitters.o(.text+0xfc0): undefined reference to `boost::system::get_system_category()'
.obj/cidlc.o: In function `__static_initialization_and_destruction_0(int, int)':
.obj/cidlc.o(.text+0x34a1): undefined reference to `boost::system::get_system_category()'
.obj/cidlc.o(.text+0x34ba): undefined reference to `boost::system::get_posix_category()'
.obj/cidlc.o(.text+0x34d3): undefined reference to `boost::system::get_posix_category()'
.obj/cidlc.o(.text+0x34ec): undefined reference to `boost::system::get_system_category()'
.obj/CompositionEmitter.o: In function `__static_initialization_and_destruction_0(int, int)':
.obj/CompositionEmitter.o(.text+0x34b): undefined reference to `boost::system::get_system_category()'
.obj/CompositionEmitter.o(.text+0x364): undefined reference to `boost::system::get_posix_category()'
.obj/CompositionEmitter.o(.text+0x37d): undefined reference to `boost::system::get_posix_category()'
.obj/CompositionEmitter.o(.text+0x396): undefined reference to `boost::system::get_system_category()'
.obj/CorbaTypeNameEmitters.o: In function `__static_initialization_and_destruction_0(int, int)':
.obj/CorbaTypeNameEmitters.o(.text+0x85cf): undefined reference to `boost::system::get_system_category()'
.obj/CorbaTypeNameEmitters.o(.text+0x85e8): undefined reference to `boost::system::get_posix_category()'
.obj/CorbaTypeNameEmitters.o(.text+0x8601): undefined reference to `boost::system::get_posix_category()'
.obj/CorbaTypeNameEmitters.o(.text+0x861a): undefined reference to `boost::system::get_system_category()'
.obj/DescriptorGenerator.o: In function `__static_initialization_and_destruction_0(int, int)':
.obj/DescriptorGenerator.o(.text+0x977): undefined reference to `boost::system::get_system_category()'
.obj/DescriptorGenerator.o(.text+0x990): undefined reference to `boost::system::get_posix_category()'
.obj/DescriptorGenerator.o(.text+0x9a9): undefined reference to `boost::system::get_posix_category()'
.obj/DescriptorGenerator.o(.text+0x9c2): undefined reference to `boost::system::get_system_category()'
Questions:
Why the linker do not recognize the include directory ( -I../../../../../include/boost-1_35 ) that has a boost files ?
If the boost libraries (libboost_system-mt-1_35.so.1.35.0 and libboost_filesystem-mt-1_35.so) are in the same diretory /usr/lib, why the linker shows the warning "not found"? Please, i do not figure out the error that is happens. I suppose that it is only necessary to indicate the correct path to the linker, bu i am not sure.
Thanks |
|
|
| |
|
|
|
 |
|
|
Post subject: RE: Re: CIAO on QNX 6.3.2
Posted: May 08, 2008 - 06:29 PM
|
|
QNX Master
Joined: Sep 01, 2002
Posts: 2753
|
|
| To add paths to the linker the option is -L (el) not -I (). When specifying a library don't specify the full path. If the library is called libboost.a use -lboost (the linker adds lib and .a). |
|
|
| |
|
|
|
 |
|
|
Powered by PNphpBB2 © 2003-2007 The PNphpBB Group Credits |
|
|