Skip to content
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

ROUTING-1234: adding support for new rtiserviceadmincpp library in Fi… #122

Merged
merged 1 commit into from
Aug 9, 2024

Conversation

juanlu-rti
Copy link
Member

Fixes ROUTING-1234.

Proposed changes

Add CMake variables and rules to make the new rtiserviceadmincpp library available for examples.

Comments

Logs

@juanlu-rti
Copy link
Member Author

@fgaranda , @lulivi , do you think we should merge this into a different branch? This new library, rtiserviceadmincpp is only going to be available, for the moment, in JH-F1. Will builds fail without that library being present?

@lulivi
Copy link
Collaborator

lulivi commented Jul 30, 2024

@fgaranda , @lulivi , do you think we should merge this into a different branch? This new library, rtiserviceadmincpp is only going to be available, for the moment, in JH-F1. Will builds fail without that library being present?

When using this code and the new modified code in rticommunity/rticonnextdds-examples#697 with an old version of Connext (E.g.: 7.3.0) you will get:

> cmake .. -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release && cmake --build .
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
...
-- RTI Connext installation directory: /home/luis/ndds/rti_connext_dds-7.3.0
-- RTI Connext architecture: x64Linux4gcc7.3.0
-- Found RTIConnextDDS: /home/luis/ndds/rti_connext_dds-7.3.0 (found suitable version "7.3.0.0", minimum required is "7.0.0") found components:  core routing_service recording_service 
-- Generating done
...
[ 75%] Building CXX object CMakeFiles/ServiceAsLibExample.dir/ServiceAsLibExample.cxx.o
gmake[2]: *** No rule to make target 'librtiserviceadmincpp_release_shared-NOTFOUND', needed by 'ServiceAsLibExample'.  Stop.
gmake[2]: Leaving directory '/home/luis/r/comm/lulivi-rticonnextdds-examples/examples/recording_service/service_as_lib/c++11/build'
gmake[1]: *** [CMakeFiles/Makefile2:74: CMakeFiles/ServiceAsLibExample.dir/all] Error 2
gmake[1]: Leaving directory '/home/luis/r/comm/lulivi-rticonnextdds-examples/examples/recording_service/service_as_lib/c++11/build'
gmake: *** [Makefile:84: all] Error 2

Which is expected.

If the imported target is not requested (e.g.: old verision of the recording service as a library example) you will get:

> cmake .. -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release && cmake --build .
-- The C compiler identification is GNU 11.4.0
-- The CXX compiler identification is GNU 11.4.0
...
-- RTI Connext installation directory: /home/luis/ndds/rti_connext_dds-7.3.0
-- RTI Connext architecture: x64Linux4gcc7.3.0
-- Found RTIConnextDDS: /home/luis/ndds/rti_connext_dds-7.3.0 (found suitable version "7.3.0.0", minimum required is "7.0.0") found components:  core routing_service recording_service 
-- Generating done
...
[ 75%] Building CXX object CMakeFiles/ServiceAsLibExample.dir/ServiceAsLibExample.cxx.o
[100%] Linking CXX executable ServiceAsLibExample
gmake[2]: Leaving directory '/home/luis/r/comm/lulivi-rticonnextdds-examples/examples/recording_service/service_as_lib/c++11/build'
[100%] Built target ServiceAsLibExample
gmake[1]: Leaving directory '/home/luis/r/comm/lulivi-rticonnextdds-examples/examples/recording_service/service_as_lib/c++11/build'

@lulivi
Copy link
Collaborator

lulivi commented Jul 30, 2024

  • Let me do a quick check in Windows which is often the problematic one, and since the CI passed in Linux, we should be good.

@juanlu-rti
Copy link
Member Author

@lulivi , do you think this is ready to be merged?

@lulivi
Copy link
Collaborator

lulivi commented Aug 6, 2024

@juanlu-rti since I wasn't able to test it on Windows, let's wait until we have the necessary packages to do it. Then we will merge if everything is correct.

@lulivi
Copy link
Collaborator

lulivi commented Aug 9, 2024

Works fine on windows too:

C:\Users\TEMP.RTIDOMAIN.000\rticonnextdds-examples\examples\recording_service\service_as_lib\c++11\build>cmake .. -DBUILD_SHARED_LIBS=ON -G "Visual Studio 15 2017 Win64" -DCMAKE_BUILD_TYPE=Release
...
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- RTI Connext installation directory: C:/Users/TEMP.RTIDOMAIN.000/rti_connext_dds-7.4.0
-- RTI Connext architecture: x64Win64VS2017
-- Found RTIConnextDDS: C:/Users/TEMP.RTIDOMAIN.000/rti_connext_dds-7.4.0 (found suitable version "7.4.0.0", minimum required is "6.1.0") found components:  core
-- RTI Connext installation directory: C:/Users/TEMP.RTIDOMAIN.000/rti_connext_dds-7.4.0
-- RTI Connext architecture: x64Win64VS2017
-- Found RTIConnextDDS: C:/Users/TEMP.RTIDOMAIN.000/rti_connext_dds-7.4.0 (found suitable version "7.4.0.0", minimum required is "7.0.0") found components:  core routing_service recording_service
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Users/TEMP.RTIDOMAIN.000/rticonnextdds-examples/examples/recording_service/service_as_lib/c++11/build

C:\Users\TEMP.RTIDOMAIN.000\rticonnextdds-examples\examples\recording_service\service_as_lib\c++11\build>cmake --build . --config Release
...
Done Building Project "C:\Users\TEMP.RTIDOMAIN.000\rticonnextdds-examples\examples\recording_service\service_as_lib\c++11\build\ZERO_CHECK.vcxproj" (default targets).
Done Building Project "C:\Users\TEMP.RTIDOMAIN.000\rticonnextdds-examples\examples\recording_service\service_as_lib\c++11\build\ServiceAsLibC++11_RecorderXml_qos.vcxproj" (default targets).
Done Building Project "C:\Users\TEMP.RTIDOMAIN.000\rticonnextdds-examples\examples\recording_service\service_as_lib\c++11\build\ServiceAsLibC++11_ReplayXml_qos.vcxproj" (default targets).
Done Building Project "C:\Users\TEMP.RTIDOMAIN.000\rticonnextdds-examples\examples\recording_service\service_as_lib\c++11\build\ServiceAsLibExample.vcxproj" (default targets).
Done Building Project "C:\Users\TEMP.RTIDOMAIN.000\rticonnextdds-examples\examples\recording_service\service_as_lib\c++11\build\ALL_BUILD.vcxproj" (default targets).

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:19.96

@lulivi lulivi merged commit df51c4f into rticommunity:main Aug 9, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants