Use #pragma convert(850)
at the beggining of each source/h file, that solved it for me. On May 11, 9:44 am, proto...@googlecode.com wrote: > Status: New > Owner: liuj...@google.com > Labels: Type-Defect Priority-Medium > > New issue 290 by simonsto...@gmail.com: Cannot compile Google Protocol > Buffers on z/OShttp://code.google.com/p/protobuf/issues/detail?id=290 > > What steps will reproduce the problem? > > 1. Build Google Protocol Buffers on a z/OS system as follows: > > _CXX_CXXSUFFIX=cpp ./configure --prefix=/tmp/gpb_64 > > _CXX_OPTIONS="-Wc,LP64 -Wl,LP64 -Wc,TARGET(zOSV1R11) -Wc,LANGLVL(EXTENDED) > -D_OPEN_THREADS -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1 -D_OPEN_SYS > -D_ISOC99_SOURCE" make -j20 clean all > > What is the expected output? What do you see instead? > > I expect the build to pass successfully so I can run the install phase. > Instead I see the following output from a unit test: > > libtool: link: c++ -DNDEBUG -o protoc > main.o ./.libs/libprotobuf.a ./.libs/libprotoc.a > /MVK3/tmp/sstone/protobuf-2.4.1/src/.libs/libprotobuf.a > oldpwd=`pwd` && ( cd . && $oldpwd/protoc -I. --cpp_out=$oldpwd > google/protobuf/unittest.proto google/protobuf/unittest_empty.proto > google/protobuf/unittest_import.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_lite_imports_nonlite.proto > google/protobuf/unittest_no_generic_services.proto > google/protobuf/compiler/cpp/cpp_test_bad_identifiers.proto ) > libprotobuf ERROR ./google/protobuf/descriptor_database.cc:314] Invalid > file descriptor data passed to EncodedDescriptorDatabase::Add(). > libprotobuf FATAL ./google/protobuf/descriptor.cc:862] CHECK failed: > generated_database_->Add(encoded_file_descriptor, size): > CEE5207E The signal SIGABRT was received. > make[2]: *** [unittest_proto_middleman] Error 131 > make[2]: Leaving directory `/MVK3/tmp/sstone/protobuf-2.4.1/src' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/MVK3/tmp/sstone/protobuf-2.4.1' > make: *** [all] Error 2 > > What version of the product are you using? On what operating system? > > I am using Google Protocol Buffers 2.4.1. I also tried 2.4.0a and 2.1.0. > The system is running z/OS V1R11 with the XL C/C++ V1R11 compilers. > > Please provide any additional information below. > > I suspect the issue may be caused by an expectation that some of the data > *somewhere* will be in ASCII, but it is actually in EBCDIC because of the > operating system. I have managed to get this working on AIX (POWER), RHEL > (x86, 390) and Windows (x86) systems without any issues. -- You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To post to this group, send email to protobuf@googlegroups.com. To unsubscribe from this group, send email to protobuf+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/protobuf?hl=en.