ivankosenko / open-vcdiff

Automatically exported from code.google.com/p/open-vcdiff
Apache License 2.0
0 stars 0 forks source link

Issue during cross compilation of open-vcdiff for powerpc-linux #38

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
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