Status: New
Owner: ----
Labels: Type-Defect Priority-Medium
New issue 38 by
suyash.k...@gmail.com: Issue during cross compilation of
open-vcdiff for powerpc-linux
http://code.google.com/p/open-vcdiff/issues/detail?id=38
What steps will reproduce the problem?
1. Configure open-vcdiff to be compiled for powerpc by using
--host=powerpc-linux option with ./configure in the spec file.
2. start the compilation by going into the root directory of your linux
platform powerpc project and use the commands:
make -C build open-vcdiff.addpkg
make -C build open-vcdiff
3. The compilation starts but throws a compilation error.
What is the expected output? What do you see instead?
The compilation is supposed to complete and produce a cross compiled RPM
for powerpc. Instead we see error like this:
libvcdcom.so.0, needed by ./.libs/libvcddec.so, not found (try using -rpath
or -rpath-link)
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::g_fatal_error_occurred'
./.libs/libvcddec.so: undefined reference to `open_vcdiff::VarintBE<long
long>::Parse(char const*, char const**)'
./.libs/libvcdenc.so: undefined reference to
`open_vcdiff::VarintBE<int>::Length(int)'
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::VCDiffCodeTableData::Validate(unsigned char) const'
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::VCDiffAddressCache::Init()'
./.libs/libvcdenc.so: undefined reference to
`open_vcdiff::VarintBE<int>::AppendToOutputString(int,
open_vcdiff::OutputStringInterface*)'
./.libs/libvcdenc.so: undefined reference to `open_vcdiff::VarintBE<long
long>::Length(long long)'
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::VarintBE<int>::Parse(char const*, char const**)'
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::VCDiffAddressCache::DecodeAddress(int, unsigned char, char
const**, char const*)'
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::VCDiffAddressCache::VCDiffAddressCache()'
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::VCDiffCodeTableData::kDefaultCodeTableData'
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::VCDiffInstructionName(open_vcdiff::VCDiffInstructionType)'
./.libs/libvcddec.so: undefined reference to
`open_vcdiff::VCDiffAddressCache::VCDiffAddressCache(int, int)'
./.libs/libvcdenc.so: undefined reference to
`open_vcdiff::VCDiffAddressCache::EncodeAddress(int, int, int*)'
./.libs/libvcddec.so: undefined reference to `adler32'
./.libs/libvcdenc.so: undefined reference to `open_vcdiff::VarintBE<long
long>::AppendToOutputString(long long, open_vcdiff::OutputStringInterface*)'
./.libs/libvcdenc.so: undefined reference to
`open_vcdiff::VarintBE<int>::AppendToString(int, std::basic_string<char,
std::char_traits<char>, std::allocator<char> >*)'
collect2: ld returned 1 exit status
Makefile:836: *** [vcdiff] Error 1
What version of the product are you using? On what operating system?
I am using open-vcdiff-0.8.3 compiling for WindRiver linux for powerpc
architecture.
Please provide any additional information below.
I am guessing that it can be result of improperly defined macros in the
programs where the above function calls cannot be made because maybe they
are not defined for powerpc. I will have to look up the code for this. If
anyone has faced a similar issue Please help me with this. I am stuck
without a way forward.