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.
Original issue reported on code.google.com by suyash.k...@gmail.com on 3 Jan 2013 at 5:33
Original issue reported on code.google.com by
suyash.k...@gmail.com
on 3 Jan 2013 at 5:33