You're absolutely right Feng, thanks! I had a protoc version 2.4.0 in /usr/bin somehow, and I have a protoc version 2.6.0 in /usr/local/bin. Now I have an issue with the make check step, where it has a problem executing a binary file for all 4 tests, as can be seen in the attached log file.
On Thursday, November 13, 2014 1:52:22 PM UTC-5, Feng Xiao wrote: > > > > On Thu, Nov 13, 2014 at 5:57 AM, Andrew Capodieci <[email protected] > <javascript:>> wrote: > >> I'm trying to cross compile google Protocol buffers for the Raspberry Pi, >> so I can cross compile my own software which links to protobuf. >> >> I've installed protobuf-2.6.0 to the directory >> ~/ExternalLibs/protobuf-2.6.0, where I perform the following steps: >> >> cd ~/ExternalLibs/protobuf-2.6.0 >> ./configure --disable-shared >> make >> make check >> >> -- all (5/5) tests pass >> >> sudo make install >> make distclean >> >> This should set up the initial protoc executable that can be run by my >> build machine (Lenovo w540 laptop running Ubuntu 12.04) during the cross >> compiling for my host, the raspberry pi. >> >> I then run: >> >> ./configure --host=arm-linux-gnueabi CC=/opt/cross/x-tools/arm- >> unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-gcc CXX=/opt/cross/x- >> tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-g++ --with- >> protoc=/usr/bin/protoc --prefix=/home/andrewc1204/ >> raspberrypi_crosscompile/protobuf_xtools/ >> >> "make install" will install the protoc in /usr/local/bin by default, so > you need to use --with-protoc=/usr/local/bin/protoc here. You can check > "/usr/bin/protoc --version" to see whether it's version 2.6.0. > > >> My cross compiler was built following this tutorial: >> http://www.bootc.net/archives/2012/05/26/how-to-build-a-cross-compiler-for-your-raspberry-pi/. >> >> The only extra thing I did was enable an additional c++ compiler on top of >> building the c compiler in the ct-ng menus, which is why I'm able to use >> the g++ compiler on top of the gcc compiler. >> >> This ./configure seems to run, and then I call >> >> make >> >> The output is as follows: >> >> >> make all-recursive >> make[1]: Entering directory >> `/home/andrewc1204/ExternalLibs/protobuf-2.6.0' >> Making all in . >> make[2]: Entering directory `/home/andrewc1204/ExternalLibs/protobuf- >> 2.6.0' >> make[2]: Leaving directory >> `/home/andrewc1204/ExternalLibs/protobuf-2.6.0' >> Making all in src >> make[2]: Entering directory >> `/home/andrewc1204/ExternalLibs/protobuf-2.6.0/src' >> /usr/bin/protoc -I. --cpp_out=. google/protobuf/unittest.proto >> google/protobuf/unittest_empty.proto google/protobuf/unittest_import.proto >> google/protobuf/unittest_import_public.proto >> google/protobuf/unittest_mset.proto >> google/protobuf/unittest_optimize_for.proto >> google/protobuf/unittest_embed_optimize_for.proto >> google/protobuf/unittest_custom_options.proto >> google/protobuf/unittest_lite.proto >> google/protobuf/unittest_import_lite.proto >> google/protobuf/unittest_import_public_lite.proto >> google/protobuf/unittest_lite_imports_nonlite.proto >> google/protobuf/unittest_no_generic_services.proto >> google/protobuf/compiler/cpp/cpp_test_bad_identifiers.proto >> google/protobuf/unittest.proto:173:3: Expected "required", >> "optional", or "repeated". >> google/protobuf/unittest.proto:173:21: Missing field number. >> google/protobuf/unittest.proto:610:3: Expected "required", >> "optional", or "repeated". >> google/protobuf/unittest.proto:610:13: Missing field number. >> google/protobuf/unittest.proto:632:3: Expected "required", >> "optional", or "repeated". >> google/protobuf/unittest.proto:632:13: Missing field number. >> google/protobuf/unittest.proto:647:3: Expected "required", >> "optional", or "repeated". >> google/protobuf/unittest.proto:647:13: Missing field number. >> google/protobuf/unittest.proto:672:3: Expected "required", >> "optional", or "repeated". >> google/protobuf/unittest.proto:672:13: Missing field number. >> google/protobuf/unittest.proto:853:1: Expected "required", >> "optional", or "repeated". >> google/protobuf/unittest.proto:853:21: Missing field number. >> google/protobuf/unittest.proto:862:1: Reached end of input in message >> definition (missing '}'). >> make[2]: *** [unittest_proto_middleman] Error 1 >> make[2]: Leaving directory `/home/andrewc1204/ExternalLibs/protobuf- >> 2.6.0/src' >> make[1]: *** [all-recursive] Error 1 >> make[1]: Leaving directory >> `/home/andrewc1204/ExternalLibs/protobuf-2.6.0' >> make: *** [all] Error 2 >> >> I'm stuck at this point, and don't know what else to check to try and >> debug this problem. Any help is greatly appreciated! Please let me know if >> any additional information is helpful and I will gladly supply it. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Protocol Buffers" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To post to this group, send email to [email protected] >> <javascript:>. >> Visit this group at http://groups.google.com/group/protobuf. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/protobuf. For more options, visit https://groups.google.com/d/optout.
make_check.log
Description: Binary data
