-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot build C sample program connect-command on a NVIDIA Jetson TX2 #145
Comments
Thanks, I'll take a look at this. For what it's worth, this sample was written about 3 years ago, and this sample may not have moved forward with You can probably make changes locally and finish with approximately what I will have when I move this code to protobuf v3--more or less, remove the has_xxx() function, and understand that if no value was given the value you see will be zero, zeroes, or empty. For example, this
will likely become if (beacon->serialnumber == serial) { There is no ARIS serial number 0, so if the serial number were somehow missing from the beacon, |
Unfortunately, with the protobuf v3 syntax, values for |
@kwahtong Also, is this academic or commercial work? If academic, is there a project page we can follow? :) |
Hi Curt, Thanks for the reply. I don't have a project for you to follow. But noted on the old code has not moved on much and probably not worth to work on it. In that case, I would focus more on vc-using-framestream sample C++ project which I just managed to build successfully on VS2019. I will look into porting to the Jetson environment once the sample code can communicate with the ARIS. Appreciate advise if any. Regards, |
Sounds good. I think we wrote -Curt |
Hi Curt,
Would aris3000 support 2 clients , one as controller to connect and receive frame data, the other client just purely receive frame data?
I suppose the frame is sent via udp broadcast ?
The clients will run on different machine.
I was thinking of modifying the vc-using-framestream to strip the tcp connection portion for thr 2nd client.
Pls advise.
Thanks.
Regards
Sean
…________________________________
From: Curt Nichols <[email protected]>
Sent: Tuesday, 17 March 2020 00:49
To: SoundMetrics/aris-integration-sdk <[email protected]>
CC: Kwong Wah Tong Sean <[email protected]>,Mention <[email protected]>
Subject: Re: [SoundMetrics/aris-integration-sdk] Cannot build C sample program connect-command on a NVIDIA Jetson TX2 (#145)
Sounds good. I think we wrote connect-command mostly to ensure the headers, etc. were building okay. Irony. It's not currently in our CI pipeline as our internal pipeline doesn't have a Linux branch yet.
-Curt
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub<#145 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ALQHYDWQXZPZP6WPFWJLX3DRHZJ7LANCNFSM4LGDET2A>.
|
Sean, the onboard software supports UDP point-to-point and, since 2.6.8634, multicast. You can use a multicast address from your controller program and have a second program join the multicast group and listen. This is discussed in section Multicasting ARIS Frames of the documentation. Hope this helps. Broadcast is not supported as it causes dire behavior in the onboard software's network stack. |
Hi Curt, |
1 similar comment
Hi Curt, |
Hi Xiaolei,
Use the vc-using-framestream sample C++ project instead which supports data frame receiving. Once you get in working in windows, port over to the TX2 environment, I can't recall exactly but you need to make some minor code changes due to Windows dependencies.
Cheers,
Sean
…________________________________
From: slyrasa <[email protected]>
Sent: Saturday, August 1, 2020 8:13:07 PM
To: SoundMetrics/aris-integration-sdk
Cc: Kwong Wah Tong Sean; Mention
Subject: Re: [SoundMetrics/aris-integration-sdk] Cannot build C sample program connect-command on a NVIDIA Jetson TX2 (#145)
Hi Curt,
I have meeted the same bug,but i don't know how to solve.Do you mean the file connect.c cannot be compiled.If I want to connect aris 3000 by TX2 and receive the data frame,what should i do ?
I need your help,because my work is urgent.
Thanks,
sincerely
Xiaolei
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub<#145 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ALQHYDSQBIAEB6LVOTCY4QTR6QBFHANCNFSM4LGDET2A>.
|
@slyrasa can you confirm what your gcc build flags are? Are you building in C or C++, and what version? @kwahtong your original post appears to be building in C99, is that still the case?
Also--are you using any pre-made, readily available images for your build tools, such as virtual machines or docker images? |
@slyrasa can you confirm what your gcc build flags are? Are you building in C or C++, and what version? @kwahtong your original post appears to be building in C99, is that still the case? |
hi,Curt,
My protobuf--version is 3.12.3,my ubuntu version is 16.04.I have run successfully the file connect-command by deleting the redundant member(has__××),I guess the reason why the program cannot be run is the protobuf version is not suit.About the version of c or c++,I don’t think the impact is big.
Recently i want to get the aris data frame in ros,but i hava many trouble. If you make some progress,please give me some advises. Thanks!
…------------------ 原始邮件 ------------------
发件人: "Curt Nichols"<[email protected]>;
发送时间: 2020年8月4日(星期二) 晚上10:49
收件人: "SoundMetrics/aris-integration-sdk"<[email protected]>;
抄送: "直立行走的鱼"<[email protected]>; "Mention"<[email protected]>;
主题: Re: [SoundMetrics/aris-integration-sdk] Cannot build C sample program connect-command on a NVIDIA Jetson TX2 (#145)
@slyrasa can you confirm what your gcc build flags are? Are you building in C or C++, and what version?
@kwahtong your original post appears to be building in C99, is that still the case?
gcc -std=c99 ../connect.c ../availability.pb-c.c ../commands.pb-c.c ../frame_stream.pb-c.c -I ../../../common/protobuf -I ../../../../protobuf-c -L/usr/lib -lprotobuf-c -o connect
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
HI,kwahtong |
Summary
I am unable to build connect-command sample program on a NVIDIA Jetson TX2. I can verify that the protobuf-c headers and c source codes were generated. GCC complained missing members so I am not sure if issue lies on sample code or protobuf generation steps. Appreciate if can help. Many Thanks.
Steps to Reproduce (for bugs)
./configure output
protobuf-c 1.3.3
CC: gcc
CFLAGS: -g -O2
CXX: g++ -std=c++11
CXXFLAGS: -g -O2
LDFLAGS:
LIBS:
prefix: /usr/local
sysconfdir: ${prefix}/etc
libdir: ${exec_prefix}/lib
includedir: ${prefix}/include
pkgconfigdir: ${libdir}/pkgconfig
bigendian: no
protobuf version: libprotoc 3.0.0
$ ../aris-integration-sdk/sample-code/connect-command/linux$ make all
cp ../../../common/protobuf/*.proto .
protoc-c --c_out=../. *.proto
gcc -std=c99 ../connect.c ../availability.pb-c.c ../commands.pb-c.c ../frame_stream.pb-c.c -I ../../../common/protobuf -I ../../../../protobuf-c -L/usr/lib -lprotobuf-c -o connect
../connect.c: In function ‘find_sonar’:
../connect.c:214:21: error: ‘Aris__Availability {aka struct _Aris__Availability}’ has no member named ‘has_serialnumber’; did you mean ‘serialnumber’?
if (beacon->has_serialnumber && beacon->serialnumber == serial) {
^~~~~~~~~~~~~~~~
serialnumber
Your Environment
protobuf-c 1.3.3
libprotoc 3.0.0
libprotobuf-dev Version: 3.0.0-9.1ubuntu1
libprotoc-dev Version: 3.0.0-9.1ubuntu1
protobuf-compiler Version: 3.0.0-9.1ubuntu1
gcc (Ubuntu/Linaro 7.5.0-3ubuntu1~18.04) 7.5.0
generated_pb-c_c_pb-h_h_files.zip
make_all_log.txt
None
The text was updated successfully, but these errors were encountered: