real-logic / simple-binary-encoding

Simple Binary Encoding (SBE) - High Performance Message Codec
Apache License 2.0
3.12k stars 523 forks source link

Technical Specification version for SBE the tool can support #856

Closed chengm349 closed 3 years ago

chengm349 commented 3 years ago
chengm349 commented 3 years ago

I used

$ mkdir -p cppbuild/Debug $ cd cppbuild/Debug $ cmake ../.. $ cmake --build . --clean-first $ ctest

but seems $ cmake --build . --clean-first not very good. please check attached and advise. result.txt

chengm349 commented 3 years ago

is there another way to ask question for example by email? Keen to have early reply so I can move my project.

tmontgomery commented 3 years ago

SBE version can be found in the XSD. https://github.com/real-logic/simple-binary-encoding/blob/master/sbe-tool/src/main/resources/fpl/sbe.xsd#L6 (i.e. Version 1.0 Draft standard.)

C++11 is the minimum as can be seen at https://github.com/real-logic/simple-binary-encoding/blob/master/CMakeLists.txt#L50

Try using cppbuild as mentioned in the README. You should look at the GItHub Actions to see any additional details of the vast array of platforms and compilers we run our CI on.

We get to questions as we can. But is often delayed by a while. If you require more support, we offer commercial support. Feel free to reach out to myself or @mjpt777 for details on commercial support offerings.

chengm349 commented 3 years ago

Hi Todd,

The ticket (#856) was closed. Assume I got jar file correctly eventually and I may run command like this:

java -Dsbe.target.language=cpp98 -jar simple-binary-encoding-1.1.7-RC2/build/libs/sbe-all-1.1.7-RC2.jar templates_FixBinary.xml

should I still use cpp98 or possible C++11 or newer?

I did use cppbuild. If C++11 is the minimum requirement, should I modify some file under cppbuild? Please kindly check the attached result.txt in #856.

Thanks.

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Todd L. @.> Sent: Friday, July 16, 2021 10:42 AM To: @.> Cc: @.>; @.> Subject: Re: [real-logic/simple-binary-encoding] Technical Specification version for SBE the tool can support (#856)

SBE version can be found in the XSD. https://github.com/real-logic/simple-binary-encoding/blob/master/sbe-tool/src/main/resources/fpl/sbe.xsd#L6 (i.e. Version 1.0 Draft standard.)

C++11 is the minimum as can be seen at https://github.com/real-logic/simple-binary-encoding/blob/master/CMakeLists.txt#L50

Try using cppbuild as mentioned in the README. You should look at the GItHub Actions to see any additional details of the vast array of platforms and compilers we run our CI on.

We get to questions as we can. But is often delayed by a while. If you require more support, we offer commercial support. Feel free to reach out to myself or @mjpt777https://github.com/mjpt777 for details on commercial support offerings.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/real-logic/simple-binary-encoding/issues/856#issuecomment-881135107, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADU4H74V7XFLPTG2ZILGEYDTX6MC3ANCNFSM5AMQBGWQ.

tmontgomery commented 3 years ago

SBE Cpp generator only generates C++11.

chengm349 commented 3 years ago

Hi Todd,

I ran

$ mkdir -p cppbuild/Debug $ cd cppbuild/Debug $ cmake ../.. $ cmake --build . --clean-first $ ctest

But step $ cmake --build . --clean-first not very good (result.txt has all output of this step).

issue #858 advice by Dmitry Vyazelenkohttps://github.com/vyazelenko

java -Dsbe.target.language=cpp -jar ./simple-binary-encoding/sbe-all/build/libs/sbe-all-1.23.1-SNAPSHOT.jar ilinkbinary.xml works.

However I’d like to confirm that those error msgs appear in result.txt are acceptable.

Warm Regards. Ming Cheng

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Todd L. @.> Sent: Saturday, July 17, 2021 1:43 AM To: @.> Cc: @.>; @.> Subject: Re: [real-logic/simple-binary-encoding] Technical Specification version for SBE the tool can support (#856)

SBE Cpp generator only generates C++11.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/real-logic/simple-binary-encoding/issues/856#issuecomment-881612783, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADU4H74BLJXBHJLG4CIOAJLTYBVTLANCNFSM5AMQBGWQ.

[ 2%] Creating directories for 'gtest' [ 4%] Performing download step (verify and extract) for 'gtest' -- verifying file... file='/fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/cppbuild/googletest-release-1.10.0.zip' -- verifying file... done -- extracting... src='/fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/cppbuild/googletest-release-1.10.0.zip' dst='/fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/cppbuild/Debug/thirdparty/gtest/src/gtest' -- extracting... [tar xfz] -- extracting... [analysis] -- extracting... [rename] -- extracting... [clean up] -- extracting... done [ 6%] No update step for 'gtest' [ 8%] No patch step for 'gtest' [ 10%] Performing configure step for 'gtest' -- gtest configure command succeeded. See also /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/cppbuild/Debug/thirdparty/gtest/src/gtest-stamp/gtest-configure-.log [ 12%] Performing build step for 'gtest' -- gtest build command succeeded. See also /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/cppbuild/Debug/thirdparty/gtest/src/gtest-stamp/gtest-build-.log [ 14%] No install step for 'gtest' [ 16%] Completed 'gtest' [ 16%] Built target gtest [ 18%] Generating SBE jar

Task :compileJava NO-SOURCE Task :processResources NO-SOURCE Task :classes UP-TO-DATE Task :jar SKIPPED Task :assemble UP-TO-DATE Task :sbe-tool:compileJava UP-TO-DATE Task :sbe-all:compileJava NO-SOURCE Task :sbe-all:processResources NO-SOURCE Task :sbe-all:classes UP-TO-DATE Task :sbe-all:jar Task :sbe-tool:processResources UP-TO-DATE Task :sbe-tool:classes UP-TO-DATE Task :sbe-tool:jar UP-TO-DATE Task :sbe-all:shadowJar Task :sbe-all:assemble Task :sbe-benchmarks:generateCodecs Task :sbe-benchmarks:compileGeneratedJava UP-TO-DATE Task :sbe-benchmarks:compileJava UP-TO-DATE Task :sbe-benchmarks:processResources UP-TO-DATE Task :sbe-benchmarks:classes UP-TO-DATE Task :sbe-benchmarks:jar UP-TO-DATE Task :sbe-benchmarks:shadowJar UP-TO-DATE Task :sbe-benchmarks:assemble UP-TO-DATE Task :sbe-samples:generateCodecs Task :sbe-samples:compileGeneratedJava UP-TO-DATE Task :sbe-samples:compileJava UP-TO-DATE Task :sbe-samples:processResources UP-TO-DATE Task :sbe-samples:classes UP-TO-DATE Task :sbe-samples:processGeneratedResources NO-SOURCE Task :sbe-samples:generatedClasses UP-TO-DATE Task :sbe-samples:jar UP-TO-DATE Task :sbe-samples:javadocJar UP-TO-DATE Task :sbe-samples:assemble UP-TO-DATE Task :sbe-tool:javadocJar UP-TO-DATE Task :sbe-tool:assemble UP-TO-DATE

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.1.1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 6s 18 actionable tasks: 4 executed, 14 up-to-date [ 18%] Built target sbe-jar [ 20%] Generating ../../../../generated/c [ 20%] Built target c_codecs [ 22%] Building C object sbe-tool/src/test/c/CMakeFiles/CComplianceTest.dir/CComplianceTest.c.o [ 24%] Linking C executable ../../../../binaries/CComplianceTest [ 24%] Built target CComplianceTest [ 26%] Building CXX object sbe-tool/src/test/c/CMakeFiles/CGroupWithDataTest.dir/GroupWithDataTest.cpp.o /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:251:33: error: missing initializer for member ‘group_with_data_testMessage1::buffer’ [-Werror=missing-field-initializers] GWD(testMessage1) m_msg1 = {}; ^ /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:251:33: error: missing initializer for member ‘group_with_data_testMessage1::buffer_length’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:251:33: error: missing initializer for member ‘group_with_data_testMessage1::offset’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:251:33: error: missing initializer for member ‘group_with_data_testMessage1::position’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:251:33: error: missing initializer for member ‘group_with_data_testMessage1::acting_version’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:252:33: error: missing initializer for member ‘group_with_data_testMessage2::buffer’ [-Werror=missing-field-initializers] GWD(testMessage2) m_msg2 = {}; ^ /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:252:33: error: missing initializer for member ‘group_with_data_testMessage2::buffer_length’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:252:33: error: missing initializer for member ‘group_with_data_testMessage2::offset’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:252:33: error: missing initializer for member ‘group_with_data_testMessage2::position’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:252:33: error: missing initializer for member ‘group_with_data_testMessage2::acting_version’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:253:33: error: missing initializer for member ‘group_with_data_testMessage3::buffer’ [-Werror=missing-field-initializers] GWD(testMessage3) m_msg3 = {}; ^ /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:253:33: error: missing initializer for member ‘group_with_data_testMessage3::buffer_length’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:253:33: error: missing initializer for member ‘group_with_data_testMessage3::offset’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:253:33: error: missing initializer for member ‘group_with_data_testMessage3::position’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:253:33: error: missing initializer for member ‘group_with_data_testMessage3::acting_version’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:254:33: error: missing initializer for member ‘group_with_data_testMessage4::buffer’ [-Werror=missing-field-initializers] GWD(testMessage4) m_msg4 = {}; ^ /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:254:33: error: missing initializer for member ‘group_with_data_testMessage4::buffer_length’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:254:33: error: missing initializer for member ‘group_with_data_testMessage4::offset’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:254:33: error: missing initializer for member ‘group_with_data_testMessage4::position’ [-Werror=missing-field-initializers] /fs02/home/mcheng/workspace/gitwork_ldn/simple-binary-encoding/sbe-tool/src/test/c/GroupWithDataTest.cpp:254:33: error: missing initializer for member ‘group_with_data_testMessage4::acting_version’ [-Werror=missing-field-initializers] cc1plus: all warnings being treated as errors gmake[2]: [sbe-tool/src/test/c/CMakeFiles/CGroupWithDataTest.dir/GroupWithDataTest.cpp.o] Error 1 gmake[1]: [sbe-tool/src/test/c/CMakeFiles/CGroupWithDataTest.dir/all] Error 2 gmake: *** [all] Error 2

mjpt777 commented 3 years ago

@chengm349 Can you please stop posting a different subject to what the issue title suggests. Either use appropriate subject titles for issues or I will have to block you. Simple rule - one subject per issue.