genivi-ipc@lists.genivi.org

Development list for inter process communication (IPC) related topics

View all threads

Guide to build Common API deprecated version (2.1.4)

SK
Suraj Kottayi
Mon, May 7, 2018 8:53 AM

Dear All,

We were trying to compile media manager (POC of genivi 12.0 nostromo) code downloaded from the genivi website which contains common api wrappers of version 2.1.4. The problem is that common api-core v2.1.4 is a deprecated version. So we could not find any help to build the code and generate '.so' files (libcommonapi.so), unlike other versions ( v2.1.6 and greater). The procedures mentioned in the README files of commonapi-core v2.1.4  recommends to generate the code using eclipse, however the required commonapi generator version was not available in the eclipse IDE. Also the folder structures of the commonapi-core code in v2.1.4 and v3.1.x is completely different. It appears that few files (.h and .cpp) are missing in v2.1.4.
I hereby request you to kindly provide us with some guidance on building commonapi v2.14 or recommend a suitable solution for this problem.

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id : 1029321
MobileNumber  : 8086318292
MailId : suraj.kottayi@tcs.com
Web site         : www.tcs.com
=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you

Dear All, We were trying to compile media manager (POC of genivi 12.0 nostromo) code downloaded from the genivi website which contains common api wrappers of version 2.1.4. The problem is that common api-core v2.1.4 is a deprecated version. So we could not find any help to build the code and generate '.so' files (libcommonapi.so), unlike other versions ( v2.1.6 and greater). The procedures mentioned in the README files of commonapi-core v2.1.4 recommends to generate the code using eclipse, however the required commonapi generator version was not available in the eclipse IDE. Also the folder structures of the commonapi-core code in v2.1.4 and v3.1.x is completely different. It appears that few files (.h and .cpp) are missing in v2.1.4. I hereby request you to kindly provide us with some guidance on building commonapi v2.14 or recommend a suitable solution for this problem. With Best Regards Suraj Kottayi Systems Engineer Tata Consultancy Services , Emp Id : 1029321 MobileNumber : 8086318292 MailId : suraj.kottayi@tcs.com Web site : www.tcs.com =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you
FJ
Foster, Jeremiah
Tue, May 8, 2018 3:31 PM

[Adding genivi-projects mailing list for wider audience.]

On Mon, 2018-05-07 at 14:23 +0530, Suraj Kottayi wrote:
Dear All,

Hello Suraj!

We were trying to compile media manager (POC of genivi 12.0 nostromo)

Are you building the Nostromo version of the GDP or the baseline?

code downloaded from the genivi website which contains common api wrappers of version 2.1.4.

So you're using the Media Manager and building with CommonAPI 2.1.4? (Sorry to be so obvious but just want to get the fact straight. :)

Are you aware there are more recent versions of CommonAPI?
Here's a list of releases, most recent first; https://github.com/GENIVI/capicxx-core-tools/releases

The problem is that common api-core v2.1.4 is a deprecated version. So we could not find any help to build the code and generate '.so' files (libcommonapi.so), unlike other versions ( v2.1.6 and greater). The procedures mentioned in the README files of commonapi-core v2.1.4  recommends to generate the code using eclipse, however the required commonapi generator version was not available in the eclipse IDE. Also the folder structures of the commonapi-core code in v2.1.4 and v3.1.x is completely different. It appears that few files (.h and .cpp) are missing in v2.1.4.
I hereby request you to kindly provide us with some guidance on building commonapi v2.14 or recommend a suitable solution for this problem.

You may have to update your CommonAPI version to work with Media Manager. Have you explored that possibility?

Regards,

Jermeiah

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id  : 1029321
MobileNumber    : 8086318292
MailId  : suraj.kottayi@tcs.commailto:suraj.kottayi@tcs.com
Web site          : www.tcs.com
=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you


genivi-ipc mailing list
genivi-ipc@lists.genivi.orgmailto:genivi-ipc@lists.genivi.org
https://lists.genivi.org/mailman/listinfo/genivi-ipc


This e-mail and any attachment(s) are intended only for the recipient(s) named above and others who have been specifically authorized to receive them. They may contain confidential information. If you are not the intended recipient, please do not read this email or its attachment(s). Furthermore, you are hereby notified that any dissemination, distribution or copying of this e-mail and any attachment(s) is strictly prohibited. If you have received this e-mail in error, please immediately notify the sender by replying to this e-mail and then delete this e-mail and any attachment(s) or copies thereof from your system. Thank you.

[Adding genivi-projects mailing list for wider audience.] On Mon, 2018-05-07 at 14:23 +0530, Suraj Kottayi wrote: Dear All, Hello Suraj! We were trying to compile media manager (POC of genivi 12.0 nostromo) Are you building the Nostromo version of the GDP or the baseline? code downloaded from the genivi website which contains common api wrappers of version 2.1.4. So you're using the Media Manager and building with CommonAPI 2.1.4? (Sorry to be so obvious but just want to get the fact straight. :) Are you aware there are more recent versions of CommonAPI? Here's a list of releases, most recent first; https://github.com/GENIVI/capicxx-core-tools/releases The problem is that common api-core v2.1.4 is a deprecated version. So we could not find any help to build the code and generate '.so' files (libcommonapi.so), unlike other versions ( v2.1.6 and greater). The procedures mentioned in the README files of commonapi-core v2.1.4 recommends to generate the code using eclipse, however the required commonapi generator version was not available in the eclipse IDE. Also the folder structures of the commonapi-core code in v2.1.4 and v3.1.x is completely different. It appears that few files (.h and .cpp) are missing in v2.1.4. I hereby request you to kindly provide us with some guidance on building commonapi v2.14 or recommend a suitable solution for this problem. You may have to update your CommonAPI version to work with Media Manager. Have you explored that possibility? Regards, Jermeiah With Best Regards Suraj Kottayi Systems Engineer Tata Consultancy Services , Emp Id : 1029321 MobileNumber : 8086318292 MailId : suraj.kottayi@tcs.com<mailto:suraj.kottayi@tcs.com> Web site : www.tcs.com =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ genivi-ipc mailing list genivi-ipc@lists.genivi.org<mailto:genivi-ipc@lists.genivi.org> https://lists.genivi.org/mailman/listinfo/genivi-ipc ________________________________ This e-mail and any attachment(s) are intended only for the recipient(s) named above and others who have been specifically authorized to receive them. They may contain confidential information. If you are not the intended recipient, please do not read this email or its attachment(s). Furthermore, you are hereby notified that any dissemination, distribution or copying of this e-mail and any attachment(s) is strictly prohibited. If you have received this e-mail in error, please immediately notify the sender by replying to this e-mail and then delete this e-mail and any attachment(s) or copies thereof from your system. Thank you.
SK
Suraj Kottayi
Fri, May 11, 2018 7:29 AM

Hi Foster,

I have tried to update the common api to the latest version (3.1.10). However the common-api generation through .fidl files (Franca IDL) are producing codes which are dependent on commonapi-core 2.1.4. For instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is looking for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not available in common-api-core v3.1.10. 

As per my understanding .fidl files of media manager which we checked out from Genivi website is also outdated. Could you please help us make modifications in .fidl files to generate the updated common-api wrapper. Also I would appreciate if you can guide us in making the corresponding changes in the common-api part of media manager.

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id : 1029321
MobileNumber  : 8086318292
MailId : suraj.kottayi@tcs.com
Web site         : www.tcs.com

-----"Foster, Jeremiah" JFoster@luxoft.com wrote: -----
To: "suraj.kottayi@tcs.com" suraj.kottayi@tcs.com, "genivi-ipc@lists.genivi.org" genivi-ipc@lists.genivi.org, "genivi-projects@lists.genivi.org" genivi-projects@lists.genivi.org
From: "Foster, Jeremiah" JFoster@luxoft.com
Date: 05/08/2018 09:02PM
Cc: "madhu.chandrashekar@tcs.com" madhu.chandrashekar@tcs.com, "Ramya.Saraswathi@tcs.com" Ramya.Saraswathi@tcs.com, "k.manjunath3@tcs.com" k.manjunath3@tcs.com, "tammanna.s@tcs.com" tammanna.s@tcs.com, "rabindra.nayak@tcs.com" rabindra.nayak@tcs.com, "prasanna.seshadri@tcs.com" prasanna.seshadri@tcs.com
Subject: Re: [Genivi-ipc] Guide to build Common API deprecated version (2.1.4)

[Adding genivi-projects mailing list for wider audience.]

On Mon, 2018-05-07 at 14:23 +0530, Suraj Kottayi wrote:
Dear All,

Hello Suraj!

We were trying to compile media manager (POC of genivi 12.0 nostromo)

Are you building the Nostromo version of the GDP or the baseline?

code downloaded from the genivi website which contains common api wrappers of version 2.1.4.

So you're using the Media Manager and building with CommonAPI 2.1.4? (Sorry to be so obvious but just want to get the fact straight. :)

Are you aware there are more recent versions of CommonAPI?
Here's a list of releases, most recent first; https://github.com/GENIVI/capicxx-core-tools/releases

The problem is that common api-core v2.1.4 is a deprecated version. So we could not find any help to build the code and generate '.so' files (libcommonapi.so), unlike other versions ( v2.1.6 and greater). The procedures mentioned in the README files of commonapi-core v2.1.4  recommends to generate the code using eclipse, however the required commonapi generator version was not available in the eclipse IDE. Also the folder structures of the commonapi-core code in v2.1.4 and v3.1.x is completely different. It appears that few files (.h and .cpp) are missing in v2.1.4.
I hereby request you to kindly provide us with some guidance on building commonapi v2.14 or recommend a suitable solution for this problem.

You may have to update your CommonAPI version to work with Media Manager. Have you explored that possibility?

Regards,

Jermeiah

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id  : 1029321
MobileNumber    : 8086318292
MailId  : suraj.kottayi@tcs.com
Web site          : www.tcs.com
=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you


genivi-ipc mailing list
genivi-ipc@lists.genivi.org
https://lists.genivi.org/mailman/listinfo/genivi-ipc

This e-mail and any attachment(s) are intended only for the recipient(s) named above and others who have been specifically authorized to receive them. They may contain confidential information. If you are not the intended recipient, please do not read this email or its attachment(s). Furthermore, you are hereby notified that any dissemination, distribution or copying of this e-mail and any attachment(s) is strictly prohibited. If you have received this e-mail in error, please immediately notify the sender by replying to this e-mail and then delete this e-mail and any attachment(s) or copies thereof from your system. Thank you.

Hi Foster, I have tried to update the common api to the latest version (3.1.10). However the common-api generation through .fidl files (Franca IDL) are producing codes which are dependent on commonapi-core 2.1.4. For instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is looking for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not available in common-api-core v3.1.10. As per my understanding .fidl files of media manager which we checked out from Genivi website is also outdated. Could you please help us make modifications in .fidl files to generate the updated common-api wrapper. Also I would appreciate if you can guide us in making the corresponding changes in the common-api part of media manager. With Best Regards Suraj Kottayi Systems Engineer Tata Consultancy Services , Emp Id : 1029321 MobileNumber : 8086318292 MailId : suraj.kottayi@tcs.com Web site : www.tcs.com -----"Foster, Jeremiah" <JFoster@luxoft.com> wrote: ----- To: "suraj.kottayi@tcs.com" <suraj.kottayi@tcs.com>, "genivi-ipc@lists.genivi.org" <genivi-ipc@lists.genivi.org>, "genivi-projects@lists.genivi.org" <genivi-projects@lists.genivi.org> From: "Foster, Jeremiah" <JFoster@luxoft.com> Date: 05/08/2018 09:02PM Cc: "madhu.chandrashekar@tcs.com" <madhu.chandrashekar@tcs.com>, "Ramya.Saraswathi@tcs.com" <Ramya.Saraswathi@tcs.com>, "k.manjunath3@tcs.com" <k.manjunath3@tcs.com>, "tammanna.s@tcs.com" <tammanna.s@tcs.com>, "rabindra.nayak@tcs.com" <rabindra.nayak@tcs.com>, "prasanna.seshadri@tcs.com" <prasanna.seshadri@tcs.com> Subject: Re: [Genivi-ipc] Guide to build Common API deprecated version (2.1.4) [Adding genivi-projects mailing list for wider audience.] On Mon, 2018-05-07 at 14:23 +0530, Suraj Kottayi wrote: Dear All, Hello Suraj! We were trying to compile media manager (POC of genivi 12.0 nostromo) Are you building the Nostromo version of the GDP or the baseline? code downloaded from the genivi website which contains common api wrappers of version 2.1.4. So you're using the Media Manager and building with CommonAPI 2.1.4? (Sorry to be so obvious but just want to get the fact straight. :) Are you aware there are more recent versions of CommonAPI? Here's a list of releases, most recent first; https://github.com/GENIVI/capicxx-core-tools/releases The problem is that common api-core v2.1.4 is a deprecated version. So we could not find any help to build the code and generate '.so' files (libcommonapi.so), unlike other versions ( v2.1.6 and greater). The procedures mentioned in the README files of commonapi-core v2.1.4 recommends to generate the code using eclipse, however the required commonapi generator version was not available in the eclipse IDE. Also the folder structures of the commonapi-core code in v2.1.4 and v3.1.x is completely different. It appears that few files (.h and .cpp) are missing in v2.1.4. I hereby request you to kindly provide us with some guidance on building commonapi v2.14 or recommend a suitable solution for this problem. You may have to update your CommonAPI version to work with Media Manager. Have you explored that possibility? Regards, Jermeiah With Best Regards Suraj Kottayi Systems Engineer Tata Consultancy Services , Emp Id : 1029321 MobileNumber : 8086318292 MailId : suraj.kottayi@tcs.com Web site : www.tcs.com =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ genivi-ipc mailing list genivi-ipc@lists.genivi.org https://lists.genivi.org/mailman/listinfo/genivi-ipc This e-mail and any attachment(s) are intended only for the recipient(s) named above and others who have been specifically authorized to receive them. They may contain confidential information. If you are not the intended recipient, please do not read this email or its attachment(s). Furthermore, you are hereby notified that any dissemination, distribution or copying of this e-mail and any attachment(s) is strictly prohibited. If you have received this e-mail in error, please immediately notify the sender by replying to this e-mail and then delete this e-mail and any attachment(s) or copies thereof from your system. Thank you.
GA
Gunnar Andersson
Fri, May 11, 2018 2:21 PM

On Fri, 2018-05-11 at 12:59 +0530, Suraj Kottayi wrote:

Hi Foster,

I have tried to update the common api to the latest version

(3.1.10). However the common-api generation through .fidl files (Franca
IDL) are producing codes which are dependent on commonapi-core 2.1.4. For
instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is looking
for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not
available in common-api-core v3.1.10.

Can CommonAPI maintainer help out here maybe?

But my initial feeling is that if your code generation is creating files
that are incompatible with the core, then you should check if the generation
tool is really the same release version as the core.

Have you checked this?  Since there has been some evolution in the code that
is generated, it is required (in the Common API documentation) that you
always use the same version for the tools and runtimes/libaries/headers for
things to match up.

As per my understanding .fidl files of media manager which we checked out
from Genivi website is also outdated.

Why do you say that, and in what way outdated?

Could you please help us make modifications in .fidl files to generate the
updated common-api wrapper. Also I would appreciate if you can guide us in
making the corresponding changes in the common-api part of media manager.

I don't think you should have to modify Franca files to adjust the files
that are generated from those files.  That sounds backwards to me.
If you find really old C++ code however, that might be written against APIs
that have been slightly changed and need some modification to match a newer
CommonAPI library.

If you first check that you are using identical versions of the tools &
runtimes, then we could ask for expert help if it's still needed.

  • Gunnar

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id : 1029321
MobileNumber  : 8086318292
MailId : suraj.kottayi@tcs.com
Web site         : www.tcs.com

On Fri, 2018-05-11 at 12:59 +0530, Suraj Kottayi wrote: > Hi Foster, > > I have tried to update the common api to the latest version > (3.1.10). However the common-api generation through .fidl files (Franca > IDL) are producing codes which are dependent on commonapi-core 2.1.4. For > instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is looking > for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not > available in common-api-core v3.1.10. Can CommonAPI maintainer help out here maybe? But my initial feeling is that if your code generation is creating files that are incompatible with the core, then you should check if the generation tool is really the same release version as the core. Have you checked this? Since there has been some evolution in the code that is generated, it is required (in the Common API documentation) that you always use the same version for the tools and runtimes/libaries/headers for things to match up. > As per my understanding .fidl files of media manager which we checked out > from Genivi website is also outdated. Why do you say that, and in what way outdated? > Could you please help us make modifications in .fidl files to generate the > updated common-api wrapper. Also I would appreciate if you can guide us in > making the corresponding changes in the common-api part of media manager. I don't think you should have to modify Franca files to adjust the files that are generated from those files. That sounds backwards to me. If you find really old C++ code however, that might be written against APIs that have been slightly changed and need some modification to match a newer CommonAPI library. If you first check that you are using identical versions of the tools & runtimes, then we could ask for expert help if it's still needed. - Gunnar > With Best Regards > Suraj Kottayi > Systems Engineer > Tata Consultancy Services , > Emp Id : 1029321 > MobileNumber : 8086318292 > MailId : suraj.kottayi@tcs.com > Web site : www.tcs.com >
SK
Suraj Kottayi
Mon, May 14, 2018 12:37 PM

Hi ,

We used the genivi recommended version of common-api tools (v 3.1.10) and had generated commonapi files out of .fidl files. However, we could not generate some of the .cpp files like Browser.cpp (which we had added manually from media-manager interfaces source code available in Github), is it alright to do so?. In the .cmake files we had to comment out the .h files which were not generated by commonapi tools. After these modifications we were able to generate the makefile successfully. But at the last step of compilation (in the linking phase) we were getting an error called "libCommonAPI-Dbus.so :undefined reference to 'some dbus methods' ". Our question is since libCommonAPI-DBus.so is  dependent on patched version of libdbus (from common api documentation) do we need to specify the linkage explicitly ?. If yes how do we link our code to the patched library of dbus provided our system already has a libdbus installed in it(unpatched library)?

If possible can u arrange any help from the so called common api maintainer.

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id : 1029321
MobileNumber  : 8086318292
MailId : suraj.kottayi@tcs.com
Web site         : www.tcs.com

-----Gunnar Andersson gandersson@genivi.org wrote: -----
To: Suraj Kottayi suraj.kottayi@tcs.com
From: Gunnar Andersson gandersson@genivi.org
Date: 05/11/2018 07:52PM
Cc: "genivi-ipc@lists.genivi.org" genivi-ipc@lists.genivi.org, Tammanna S tammanna.s@tcs.com, Prasanna Seshadri prasanna.seshadri@tcs.com, "genivi-projects@lists.genivi.org" genivi-projects@lists.genivi.org, Ramya Saraswathi Ramya.Saraswathi@tcs.com, Rabindra Nayak rabindra.nayak@tcs.com, K Manjunath3 k.manjunath3@tcs.com, Madhu Chandrashekar madhu.chandrashekar@tcs.com, "Foster, Jeremiah" JFoster@luxoft.com
Subject: Re: [Genivi-ipc] Guide to build Common API deprecated version (2.1.4)

On Fri, 2018-05-11 at 12:59 +0530, Suraj Kottayi wrote:

Hi Foster,

I have tried to update the common api to the latest version
(3.1.10). However the common-api generation through .fidl files (Franca
IDL) are producing codes which are dependent on commonapi-core 2.1.4. For
instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is looking
for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not
available in common-api-core v3.1.10.

Can CommonAPI maintainer help out here maybe?

But my initial feeling is that if your code generation is creating files
that are incompatible with the core, then you should check if the generation
tool is really the same release version as the core.

Have you checked this?  Since there has been some evolution in the code that
is generated, it is required (in the Common API documentation) that you
always use the same version for the tools and runtimes/libaries/headers for
things to match up.

As per my understanding .fidl files of media manager which we checked out
from Genivi website is also outdated.

Why do you say that, and in what way outdated?

Could you please help us make modifications in .fidl files to generate the
updated common-api wrapper. Also I would appreciate if you can guide us in
making the corresponding changes in the common-api part of media manager.

I don't think you should have to modify Franca files to adjust the files
that are generated from those files.  That sounds backwards to me.
If you find really old C++ code however, that might be written against APIs
that have been slightly changed and need some modification to match a newer
CommonAPI library.

If you first check that you are using identical versions of the tools &
runtimes, then we could ask for expert help if it's still needed.

  • Gunnar

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id : 1029321
MobileNumber  : 8086318292
MailId : suraj.kottayi@tcs.com
Web site         : www.tcs.com

=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you

Hi , We used the genivi recommended version of common-api tools (v 3.1.10) and had generated commonapi files out of .fidl files. However, we could not generate some of the .cpp files like Browser.cpp (which we had added manually from media-manager interfaces source code available in Github), is it alright to do so?. In the .cmake files we had to comment out the .h files which were not generated by commonapi tools. After these modifications we were able to generate the makefile successfully. But at the last step of compilation (in the linking phase) we were getting an error called "libCommonAPI-Dbus.so :undefined reference to 'some dbus methods' ". Our question is since libCommonAPI-DBus.so is dependent on patched version of libdbus (from common api documentation) do we need to specify the linkage explicitly ?. If yes how do we link our code to the patched library of dbus provided our system already has a libdbus installed in it(unpatched library)? If possible can u arrange any help from the so called common api maintainer. With Best Regards Suraj Kottayi Systems Engineer Tata Consultancy Services , Emp Id : 1029321 MobileNumber : 8086318292 MailId : suraj.kottayi@tcs.com Web site : www.tcs.com -----Gunnar Andersson <gandersson@genivi.org> wrote: ----- To: Suraj Kottayi <suraj.kottayi@tcs.com> From: Gunnar Andersson <gandersson@genivi.org> Date: 05/11/2018 07:52PM Cc: "genivi-ipc@lists.genivi.org" <genivi-ipc@lists.genivi.org>, Tammanna S <tammanna.s@tcs.com>, Prasanna Seshadri <prasanna.seshadri@tcs.com>, "genivi-projects@lists.genivi.org" <genivi-projects@lists.genivi.org>, Ramya Saraswathi <Ramya.Saraswathi@tcs.com>, Rabindra Nayak <rabindra.nayak@tcs.com>, K Manjunath3 <k.manjunath3@tcs.com>, Madhu Chandrashekar <madhu.chandrashekar@tcs.com>, "Foster, Jeremiah" <JFoster@luxoft.com> Subject: Re: [Genivi-ipc] Guide to build Common API deprecated version (2.1.4) On Fri, 2018-05-11 at 12:59 +0530, Suraj Kottayi wrote: > Hi Foster, > > I have tried to update the common api to the latest version > (3.1.10). However the common-api generation through .fidl files (Franca > IDL) are producing codes which are dependent on commonapi-core 2.1.4. For > instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is looking > for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not > available in common-api-core v3.1.10. Can CommonAPI maintainer help out here maybe? But my initial feeling is that if your code generation is creating files that are incompatible with the core, then you should check if the generation tool is really the same release version as the core. Have you checked this? Since there has been some evolution in the code that is generated, it is required (in the Common API documentation) that you always use the same version for the tools and runtimes/libaries/headers for things to match up. > As per my understanding .fidl files of media manager which we checked out > from Genivi website is also outdated. Why do you say that, and in what way outdated? > Could you please help us make modifications in .fidl files to generate the > updated common-api wrapper. Also I would appreciate if you can guide us in > making the corresponding changes in the common-api part of media manager. I don't think you should have to modify Franca files to adjust the files that are generated from those files. That sounds backwards to me. If you find really old C++ code however, that might be written against APIs that have been slightly changed and need some modification to match a newer CommonAPI library. If you first check that you are using identical versions of the tools & runtimes, then we could ask for expert help if it's still needed. - Gunnar > With Best Regards > Suraj Kottayi > Systems Engineer > Tata Consultancy Services , > Emp Id : 1029321 > MobileNumber : 8086318292 > MailId : suraj.kottayi@tcs.com > Web site : www.tcs.com > =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you
GA
Gunnar Andersson
Mon, May 14, 2018 2:48 PM

On Mon, 2018-05-14 at 18:07 +0530, Suraj Kottayi wrote:

Hi ,

We used the genivi recommended version of common-api tools (v

3.1.10) and had generated commonapi files out of .fidl files. However, we
could not generate some of the .cpp files like Browser.cpp (which we had
added manually from media-manager interfaces source code available in
Github), is it alright to do so?.

OK, well that's a little different from what you said in the last email.

Let's back up and consider that a program will usually be made up of a few
different parts.  One is the generated code which provides the exact
communication API using the names/parameters and other such things taken
from the IDL.  Then that links to a generic communication library, i.e. the
CommonAPI runtime libraries and finally they often link to some transport
implementation like libDBus (or SOME/IP, etc.).  But then you have a part
that is the actual program.  That part is manually programmed of course - it
is your actual program logic.  It calls into the generated code API to
perform communication.

I have not looked deeply but I assume what you describe as "could not
generate" is actually the real program?  For such existing code, yes sure
that could be incompatible with recent versions of CommonAPI if it has not
been updated.  Simply, the exact way that you program against the Common API
has gone through a few changes from what I remember.  (Note it's also a
major-number upgrade, i.e. is not expected to be fully backwards
compatible.)

So if this is the case for the "Browser" code, then it needs to be updated
to program against and link against the Common API as it looks coming out
from the new tools.  This is to be expected - and I would not be surprised
if the MediaManager code needs an update to the latest CommonAPI because it
was written quite a while ago.  It would be very good if you take on that
challenge and send change requests.

In the .cmake files we had to comment out the .h files which were not
generated by commonapi tools.

I don't know about those details or if it was the right thing to do.  It
sounds a little odd.

After these modifications we were able to generate the makefile
successfully. But at the last step of compilation (in the linking phase)
we were getting an error called "libCommonAPI-Dbus.so :undefined reference
to 'some dbus methods' ".

OK, well as you have figured out, you must have linked against a not patched
libdbus.

Our question is since libCommonAPI-DBus.so is  dependent on patched
version of libdbus (from common api documentation) do we need to specify
the linkage explicitly ?. If yes how do we link our code to the patched
library of dbus provided our system already has a libdbus installed in
it(unpatched library)?

A typical real system would replace the library and have only one instance
of the library.  Last I checked, except for one very small minor detail, the
patches only add new functions that don't exist in the original version.  So
replacing it should be safe for all existing code that doesn't need (will
not use) those functions.  Now, if you're working on a desktop system, like
Ubuntu or similar, deciding to replace the system libdbus could be a
challenge of course.  You might instead choose to try to link against a
special version for development purpose.

If possible can u arrange any help from the so called common api
maintainer.

For the first question, sure and the maintainer should be reading the
genivi-ipc mailing list and might be able to guide you a bit.
But I'd say the media PoC code might be a challenge you might have to take
on, to update it, and deliver that back to the open source project.

I think the final question is more a question of knowing CMAKE I think and
not unique for CommonAPI .
It's about linking against a library in a specific location?
In the 10 minute introduction [1] and the script that encodes the steps [2]
you can see that PKG_CONFIG_PATH was reset to make cmake find the library
in a special location, but whether that's a proper usage for your production
environment is hard for anyone else to say.

Best Regards

  • Gunnar

[1] https://github.com/genivi/capicxx-core-tools/wiki
[2] https://github.com/gunnarx/build-common-api-cpp-native/blob/master/build-commonapi.sh

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id : 1029321
MobileNumber  : 8086318292
MailId : suraj.kottayi@tcs.com
Web site         : www.tcs.com

-----Gunnar Andersson gandersson@genivi.org wrote: -----
To: Suraj Kottayi suraj.kottayi@tcs.com
From: Gunnar Andersson gandersson@genivi.org
Date: 05/11/2018 07:52PM
Cc: "genivi-ipc@lists.genivi.org" genivi-ipc@lists.genivi.org, Tammanna
S tammanna.s@tcs.com, Prasanna Seshadri prasanna.seshadri@tcs.com, "ge
nivi-projects@lists.genivi.org" genivi-projects@lists.genivi.org, Ramya
Saraswathi Ramya.Saraswathi@tcs.com, Rabindra Nayak <rabindra.nayak@tcs.
com>, K Manjunath3 k.manjunath3@tcs.com, Madhu Chandrashekar <madhu.chan
drashekar@tcs.com>, "Foster, Jeremiah" JFoster@luxoft.com
Subject: Re: [Genivi-ipc] Guide to build Common API deprecated version
(2.1.4)

On Fri, 2018-05-11 at 12:59 +0530, Suraj Kottayi wrote:

Hi Foster,

I have tried to update the common api to the latest version
(3.1.10). However the common-api generation through .fidl files (Franca
IDL) are producing codes which are dependent on commonapi-core 2.1.4.

For

instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is

looking

for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not
available in common-api-core v3.1.10.

Can CommonAPI maintainer help out here maybe?

But my initial feeling is that if your code generation is creating files
that are incompatible with the core, then you should check if the
generation
tool is really the same release version as the core.

Have you checked this?  Since there has been some evolution in the code
that
is generated, it is required (in the Common API documentation) that you
always use the same version for the tools and runtimes/libaries/headers
for
things to match up.

As per my understanding .fidl files of media manager which we checked

out

from Genivi website is also outdated.

Why do you say that, and in what way outdated?

Could you please help us make modifications in .fidl files to generate

the

updated common-api wrapper. Also I would appreciate if you can guide us

in

making the corresponding changes in the common-api part of media

manager.

I don't think you should have to modify Franca files to adjust the files
that are generated from those files.  That sounds backwards to me.
If you find really old C++ code however, that might be written against
APIs
that have been slightly changed and need some modification to match a
newer
CommonAPI library.

If you first check that you are using identical versions of the tools &
runtimes, then we could ask for expert help if it's still needed.

  • Gunnar

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id : 1029321
MobileNumber  : 8086318292
MailId : suraj.kottayi@tcs.com
Web site         : www.tcs.com

=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you

On Mon, 2018-05-14 at 18:07 +0530, Suraj Kottayi wrote: > Hi , > > We used the genivi recommended version of common-api tools (v > 3.1.10) and had generated commonapi files out of .fidl files. However, we > could not generate some of the .cpp files like Browser.cpp (which we had > added manually from media-manager interfaces source code available in > Github), is it alright to do so?. OK, well that's a little different from what you said in the last email. Let's back up and consider that a program will usually be made up of a few different parts. One is the generated code which provides the exact communication API using the names/parameters and other such things taken from the IDL. Then that links to a generic communication library, i.e. the CommonAPI runtime libraries and finally they often link to some transport implementation like libDBus (or SOME/IP, etc.). But then you have a part that is the actual program. That part is manually programmed of course - it is your actual program logic. It calls into the generated code API to perform communication. I have not looked deeply but I assume what you describe as "could not generate" is actually the real program? For such existing code, yes sure that _could_ be incompatible with recent versions of CommonAPI if it has not been updated. Simply, the exact way that you program against the Common API has gone through a few changes from what I remember. (Note it's also a major-number upgrade, i.e. is not expected to be fully backwards compatible.) So if this is the case for the "Browser" code, then it needs to be updated to program against and link against the Common API as it looks coming out from the new tools. This is to be expected - and I would not be surprised if the MediaManager code needs an update to the latest CommonAPI because it was written quite a while ago. It would be very good if you take on that challenge and send change requests. > In the .cmake files we had to comment out the .h files which were not > generated by commonapi tools. I don't know about those details or if it was the right thing to do. It sounds a little odd. > After these modifications we were able to generate the makefile > successfully. But at the last step of compilation (in the linking phase) > we were getting an error called "libCommonAPI-Dbus.so :undefined reference > to 'some dbus methods' ". OK, well as you have figured out, you must have linked against a not patched libdbus. > Our question is since libCommonAPI-DBus.so is dependent on patched > version of libdbus (from common api documentation) do we need to specify > the linkage explicitly ?. If yes how do we link our code to the patched > library of dbus provided our system already has a libdbus installed in > it(unpatched library)? A typical real system would replace the library and have only one instance of the library. Last I checked, except for one very small minor detail, the patches only add new functions that don't exist in the original version. So replacing it should be safe for all existing code that doesn't need (will not use) those functions. Now, if you're working on a desktop system, like Ubuntu or similar, deciding to replace the system libdbus could be a challenge of course. You might instead choose to try to link against a special version for development purpose. > > If possible can u arrange any help from the so called common api > maintainer. For the first question, sure and the maintainer should be reading the genivi-ipc mailing list and might be able to guide you a bit. But I'd say the media PoC code might be a challenge you might have to take on, to update it, and deliver that back to the open source project. I think the final question is more a question of knowing CMAKE I think and not unique for CommonAPI . It's about linking against a library in a specific location? In the 10 minute introduction [1] and the script that encodes the steps [2] you can see that PKG_CONFIG_PATH was reset to make cmake find the library in a special location, but whether that's a proper usage for your production environment is hard for anyone else to say. Best Regards - Gunnar [1] https://github.com/genivi/capicxx-core-tools/wiki [2] https://github.com/gunnarx/build-common-api-cpp-native/blob/master/build-commonapi.sh > > With Best Regards > Suraj Kottayi > Systems Engineer > Tata Consultancy Services , > Emp Id : 1029321 > MobileNumber : 8086318292 > MailId : suraj.kottayi@tcs.com > Web site : www.tcs.com > > > -----Gunnar Andersson <gandersson@genivi.org> wrote: ----- > To: Suraj Kottayi <suraj.kottayi@tcs.com> > From: Gunnar Andersson <gandersson@genivi.org> > Date: 05/11/2018 07:52PM > Cc: "genivi-ipc@lists.genivi.org" <genivi-ipc@lists.genivi.org>, Tammanna > S <tammanna.s@tcs.com>, Prasanna Seshadri <prasanna.seshadri@tcs.com>, "ge > nivi-projects@lists.genivi.org" <genivi-projects@lists.genivi.org>, Ramya > Saraswathi <Ramya.Saraswathi@tcs.com>, Rabindra Nayak <rabindra.nayak@tcs. > com>, K Manjunath3 <k.manjunath3@tcs.com>, Madhu Chandrashekar <madhu.chan > drashekar@tcs.com>, "Foster, Jeremiah" <JFoster@luxoft.com> > Subject: Re: [Genivi-ipc] Guide to build Common API deprecated version > (2.1.4) > > On Fri, 2018-05-11 at 12:59 +0530, Suraj Kottayi wrote: > > Hi Foster, > > > > I have tried to update the common api to the latest version > > (3.1.10). However the common-api generation through .fidl files (Franca > > IDL) are producing codes which are dependent on commonapi-core 2.1.4. > For > > instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is > looking > > for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not > > available in common-api-core v3.1.10. > > Can CommonAPI maintainer help out here maybe? > > But my initial feeling is that if your code generation is creating files > that are incompatible with the core, then you should check if the > generation > tool is really the same release version as the core. > > Have you checked this? Since there has been some evolution in the code > that > is generated, it is required (in the Common API documentation) that you > always use the same version for the tools and runtimes/libaries/headers > for > things to match up. > > > As per my understanding .fidl files of media manager which we checked > out > > from Genivi website is also outdated. > > Why do you say that, and in what way outdated? > > > Could you please help us make modifications in .fidl files to generate > the > > updated common-api wrapper. Also I would appreciate if you can guide us > in > > making the corresponding changes in the common-api part of media > manager. > > I don't think you should have to modify Franca files to adjust the files > that are generated from those files. That sounds backwards to me. > If you find really old C++ code however, that might be written against > APIs > that have been slightly changed and need some modification to match a > newer > CommonAPI library. > > If you first check that you are using identical versions of the tools & > runtimes, then we could ask for expert help if it's still needed. > > - Gunnar > > > With Best Regards > > Suraj Kottayi > > Systems Engineer > > Tata Consultancy Services , > > Emp Id : 1029321 > > MobileNumber : 8086318292 > > MailId : suraj.kottayi@tcs.com > > Web site : www.tcs.com > > > > =====-----=====-----===== > Notice: The information contained in this e-mail > message and/or attachments to it may contain > confidential or privileged information. If you are > not the intended recipient, any dissemination, use, > review, distribution, printing or copying of the > information contained in this e-mail message > and/or attachments to it are strictly prohibited. If > you have received this communication in error, > please notify us by reply e-mail or telephone and > immediately and permanently delete the message > and any attachments. Thank you
GA
Gunnar Andersson
Mon, May 14, 2018 3:14 PM

By the way, could you remind me why you say 3.1.10 is the recommended
version?  From what I can see there are newer versions also, and
3.1.10 looks like it's around 1.5 years old.

Thanks,

  • Gunnar

On Mon, 2018-05-14 at 18:07 +0530, Suraj Kottayi wrote:

Hi ,

We used the genivi recommended version of common-api tools (v

3.1.10) and had generated commonapi files out of .fidl files. However, we
could not generate some of the .cpp files like Browser.cpp (which we had
added manually from media-manager interfaces source code available in
Github), is it alright to do so?. In the .cmake files we had to comment
out the .h files which were not generated by commonapi tools. After these
modifications we were able to generate the makefile successfully. But at
the last step of compilation (in the linking phase) we were getting an
error called "libCommonAPI-Dbus.so :undefined reference to 'some dbus
methods' ". Our question is since libCommonAPI-DBus.so is  dependent on
patched version of libdbus (from common api documentation) do we need to
specify the linkage explicitly ?. If yes how do we link our code to the
patched library of dbus provided our system already has a libdbus
installed in it(unpatched library)?

If possible can u arrange any help from the so called common api

maintainer.

With Best Regards
Suraj Kottayi
Systems Engineer
Tata Consultancy Services ,
Emp Id : 1029321
MobileNumber  : 8086318292
MailId : suraj.kottayi@tcs.com
Web site         : www.tcs.com

-----Gunnar Andersson gandersson@genivi.org wrote: -----
To: Suraj Kottayi suraj.kottayi@tcs.com
From: Gunnar Andersson gandersson@genivi.org
Date: 05/11/2018 07:52PM
Cc: "genivi-ipc@lists.genivi.org" genivi-ipc@lists.genivi.org, Tammanna
S tammanna.s@tcs.com, Prasanna Seshadri prasanna.seshadri@tcs.com, "ge
nivi-projects@lists.genivi.org" genivi-projects@lists.genivi.org, Ramya
Saraswathi Ramya.Saraswathi@tcs.com, Rabindra Nayak <rabindra.nayak@tcs.
com>, K Manjunath3 k.manjunath3@tcs.com, Madhu Chandrashekar <madhu.chan
drashekar@tcs.com>, "Foster, Jeremiah" JFoster@luxoft.com
Subject: Re: [Genivi-ipc] Guide to build Common API deprecated version
(2.1.4)

On Fri, 2018-05-11 at 12:59 +0530, Suraj Kottayi wrote:

Hi Foster,

I have tried to update the common api to the latest version
(3.1.10). However the common-api generation through .fidl files (Franca
IDL) are producing codes which are dependent on commonapi-core 2.1.4.

For

instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is

looking

for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not
available in common-api-core v3.1.10.

By the way, could you remind me why you say 3.1.10 is the recommended version? From what I can see there are newer versions also, and 3.1.10 looks like it's around 1.5 years old. Thanks, - Gunnar On Mon, 2018-05-14 at 18:07 +0530, Suraj Kottayi wrote: > Hi , > > We used the genivi recommended version of common-api tools (v > 3.1.10) and had generated commonapi files out of .fidl files. However, we > could not generate some of the .cpp files like Browser.cpp (which we had > added manually from media-manager interfaces source code available in > Github), is it alright to do so?. In the .cmake files we had to comment > out the .h files which were not generated by commonapi tools. After these > modifications we were able to generate the makefile successfully. But at > the last step of compilation (in the linking phase) we were getting an > error called "libCommonAPI-Dbus.so :undefined reference to 'some dbus > methods' ". Our question is since libCommonAPI-DBus.so is dependent on > patched version of libdbus (from common api documentation) do we need to > specify the linkage explicitly ?. If yes how do we link our code to the > patched library of dbus provided our system already has a libdbus > installed in it(unpatched library)? > > If possible can u arrange any help from the so called common api > maintainer. > > With Best Regards > Suraj Kottayi > Systems Engineer > Tata Consultancy Services , > Emp Id : 1029321 > MobileNumber : 8086318292 > MailId : suraj.kottayi@tcs.com > Web site : www.tcs.com > > > -----Gunnar Andersson <gandersson@genivi.org> wrote: ----- > To: Suraj Kottayi <suraj.kottayi@tcs.com> > From: Gunnar Andersson <gandersson@genivi.org> > Date: 05/11/2018 07:52PM > Cc: "genivi-ipc@lists.genivi.org" <genivi-ipc@lists.genivi.org>, Tammanna > S <tammanna.s@tcs.com>, Prasanna Seshadri <prasanna.seshadri@tcs.com>, "ge > nivi-projects@lists.genivi.org" <genivi-projects@lists.genivi.org>, Ramya > Saraswathi <Ramya.Saraswathi@tcs.com>, Rabindra Nayak <rabindra.nayak@tcs. > com>, K Manjunath3 <k.manjunath3@tcs.com>, Madhu Chandrashekar <madhu.chan > drashekar@tcs.com>, "Foster, Jeremiah" <JFoster@luxoft.com> > Subject: Re: [Genivi-ipc] Guide to build Common API deprecated version > (2.1.4) > > On Fri, 2018-05-11 at 12:59 +0530, Suraj Kottayi wrote: > > Hi Foster, > > > > I have tried to update the common api to the latest version > > (3.1.10). However the common-api generation through .fidl files (Franca > > IDL) are producing codes which are dependent on commonapi-core 2.1.4. > > For > > instance MediaTypes.hpp ,a file generated from MediaTypes.fidl is > > looking > > for files like CommonPI/InputStream.h ,CommonAPI/types.h which are not > > available in common-api-core v3.1.10.