Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

It's almost impossible to comment on this without sounding pedantic, but there are some things here worth nothing:

  1. Lunar is EOL and thus no longer supported. Kinetic runs on the same version of Ubuntu and would be a better target.
  2. Amazon supports Kinetic and Melodic for this exact reason.
  3. Lunar != Kinetic. Copying binaries from one version to another is brittle at best. I would not be surprised if there are some hard-coded paths in some of the binaries pointing to /opt/ros/kinetic.
  4. and you probably had valid reasons, and this is not directed at you, more for future readers of this Q&A, but:

    Install from source requires colcon, AWS SDK, and other dependencies that are generating issues. I have put many hours over several days into this.

    is exactly why building packages from source is generally discouraged.

Having written all of that:

ERROR: Unable to load type [lex_common_msgs/AudioTextConversation].

This seems to imply that either:

  1. you don't have lex_common_msgs installed
  2. the Kinetic version you copied has hard-coded paths to locations in /opt/ros/kinetic
  3. you copied the files to incorrect locations

This is all fixable I believe, but I'd first like to know your rationale for wanting to use Lunar so badly.

It's almost impossible to comment on this without sounding pedantic, but there are some things here worth nothing:

  1. Lunar is EOL (since May this year) and thus no longer supported. Kinetic runs on the same version of Ubuntu and would be a better target.
  2. Amazon supports Kinetic and Melodic for this exact reason.
  3. Lunar != Kinetic. Copying binaries from one version to another is brittle at best. I would not be surprised if there are some hard-coded paths in some of the binaries pointing to /opt/ros/kinetic.
  4. and you probably had valid reasons, and this is not directed at you, more for future readers of this Q&A, but:

    Install from source requires colcon, AWS SDK, and other dependencies that are generating issues. I have put many hours over several days into this.

    is exactly why building packages from source is generally discouraged.

Having written all of that:

ERROR: Unable to load type [lex_common_msgs/AudioTextConversation].

This seems to imply that either:

  1. you don't have lex_common_msgs installed
  2. the Kinetic version you copied has hard-coded paths to locations in /opt/ros/kinetic
  3. you copied the files to incorrect locations

This is all fixable I believe, but I'd first like to know your rationale for wanting to use Lunar so badly.

It's almost impossible to comment on this without sounding pedantic, but there are some things here worth nothing:

  1. Lunar is EOL (since May this year) and thus no longer supported. Kinetic runs on the same version of Ubuntu and would be a better target.
  2. Amazon supports Kinetic and Melodic for this exact reason.
  3. Lunar != Kinetic. Copying binaries from one version to another is brittle at best. I would not be surprised if there are some hard-coded paths in some of the binaries pointing to /opt/ros/kinetic.
  4. and you probably had valid reasons, and this is not directed at you, more for future readers of this Q&A, but:

    Install from source requires colcon, AWS SDK, and other dependencies that are generating issues. I have put many hours over several days into this.

    is exactly why building packages from source is generally discouraged.

Install from source requires colcon, [..]

The readme may explain how to use colcon to build the packages, but I doubt it's actually required. I don't see anything in those packages that would make them require colcon as a build tool. I would expect catkin_make and catkin build to work just as well.

Having written all of that:

ERROR: Unable to load type [lex_common_msgs/AudioTextConversation].

This seems to imply that either:

  1. you don't have lex_common_msgs installed
  2. the Kinetic version you copied has hard-coded paths to locations in /opt/ros/kinetic
  3. you copied the files to incorrect locations

This is all fixable I believe, but I'd first like to know your rationale for wanting to use Lunar so badly.

It's almost impossible to comment on this without sounding pedantic, but there are some things here worth nothing:

  1. Lunar is EOL (since May this year) and thus no longer supported. Kinetic runs on the same version of Ubuntu and would be a better target.
  2. Amazon supports Kinetic and Melodic for this exact reason.
  3. Lunar != Kinetic. Copying binaries from one version to another is brittle at best. I would not be surprised if there are some hard-coded paths in some of the binaries pointing to /opt/ros/kinetic.
  4. and you probably had valid reasons, and this is not directed at you, more for future readers of this Q&A, but:

    Install from source requires colcon, AWS SDK, and other dependencies that are generating issues. I have put many hours over several days into this.

    is exactly why building packages from source is generally discouraged.

Install from source requires colcon, [..]

The readme may explain how to use colcon to build the packages, but I doubt it's actually required. I don't see anything in those packages that would make them require colcon as a build tool. I would expect catkin_make and catkin build to work just as well.

Having written all of that:

ERROR: Unable to load type [lex_common_msgs/AudioTextConversation].

This seems to imply that either:

  1. you don't have lex_common_msgs installed
  2. the Kinetic version you copied has hard-coded paths to locations in /opt/ros/kinetic
  3. you copied the files to incorrect locations
  4. you didn't copy everything that was needed

Especially this:

The AudioTextConversation.srv file is located in the lex_common_msgs folder.

makes me think it's something related to bullet #4.

This is all fixable I believe, but I'd first like to know your rationale for wanting to use Lunar so badly.

It's almost impossible to comment on this without sounding pedantic, but there are some things here worth nothing:

  1. Lunar is EOL (since May this year) and thus no longer supported. Kinetic runs on the same version of Ubuntu and would be a better target.
  2. Amazon supports Kinetic and Melodic for this exact reason.
  3. Lunar != Kinetic. Copying binaries from one version to another is brittle at best. I would not be surprised if there are some hard-coded paths in some of the binaries pointing to /opt/ros/kinetic.
  4. and you probably had valid reasons, and this is not directed at you, more for future readers of this Q&A, but:

    Install from source requires colcon, AWS SDK, and other dependencies that are generating issues. I have put many hours over several days into this.

    is exactly why building packages from source is generally discouraged.

  • Install from source requires colcon, [..]

    The readme may explain how to use colcon to build the packages, but I doubt it's actually required. I don't see anything in those packages that would make them require colcon as a build tool. I would expect catkin_make and catkin build to work just as well.

  • Having written all of that:

    ERROR: Unable to load type [lex_common_msgs/AudioTextConversation].
    

    This seems to imply that either:

    1. you don't have lex_common_msgs installed
    2. the Kinetic version you copied has hard-coded paths to locations in /opt/ros/kinetic
    3. you copied the files to incorrect locations
    4. you didn't copy everything that was needed

    Especially this:

    The AudioTextConversation.srv file is located in the lex_common_msgs folder.

    makes me think it's something related to bullet #4.

    This is all fixable I believe, but I'd first like to know your rationale for wanting to use Lunar so badly.

    It's almost impossible to comment on this without sounding pedantic, but there are some things here worth nothing:

    1. Lunar is EOL (since May this year) and thus no longer supported. Kinetic runs on the same version of Ubuntu and would be a better target.
    2. Amazon supports Kinetic and Melodic for this exact reason.
    3. Lunar != Kinetic. Copying binaries from one version to another is brittle at best. I would not be surprised if there are some hard-coded paths in some of the binaries pointing to /opt/ros/kinetic.
    4. and you probably had valid reasons, and this is not directed at you, more for future readers of this Q&A, but:

      Install from source requires colcon, AWS SDK, and other dependencies that are generating issues. I have put many hours over several days into this.

      is exactly why building packages from source is generally discouraged.

    5. Install from source requires colcon, [..]

      The readme may explain how to use colcon to build the packages, but I doubt it's actually required. I don't see anything in those packages that would make them require colcon as a build tool. I would expect catkin_make and catkin build to work just as well.

    Having written all of that:

    ERROR: Unable to load type [lex_common_msgs/AudioTextConversation].
    

    This seems to imply that either:

    1. you don't have lex_common_msgs installed
    2. the Kinetic version you copied has hard-coded paths to locations in /opt/ros/kinetic
    3. you copied the files to incorrect locations
    4. you didn't copy everything that was needed

    Especially this:

    The AudioTextConversation.srv file is located in the lex_common_msgs folder.

    makes me think it's something related to bullet #4.

    This is all fixable I believe, but I'd first like to know your rationale for wanting to use Lunar so badly.


    Edit:

    you don't have lex_common_msgs installed - this is in same package as the lex node

    You may already be aware, but just to make it extra clear: there is a difference between the package being hosted in the same repository and the messages actually being part of the same package. The messages are actually in a separate package, so copying files of the lex_node package would not include the message and service files.

    And in this case I believe it's not the .srv files that are important, but the .h and .py files generated from those. That's what I meant with "you may not have it all installed" and "you didn't copy everything that was needed".

    I would suggest not to copy files around. Instead, do the following:

    1. remove whatever you have copied of the lex_common_msgs
    2. place a copy of the lex_common_msgs package in your Catkin workspace (just that package)
    3. build the workspace using regular catkin_make or catkin build

    make sure to source /path/to/your/catkin_ws/devel/setup.bash, then try the following:

    rossrv show lex_common_msgs/AudioTextConversation
    

    This should display this (just about).

    If that command is successful, you would now have a properly build and 'installed' (depending on whether you're using an install space or not) the package, and anything depending on it should be able to find it.

    Given I'm not positive this issue would be corrected by changing to Kinetic I'm extra hesitant to start over with new distro.

    I'm not going to be able to give you a 100% guarantee, but seeing as everything is actually released for Kinetic, at least the AWS stuff should be an apt install away. The Tensorflow bits I can't say anything about of course.

    4 . you didn't copy everything that was needed - possible - I will go review again

    It's possible that you didn't copy the generated Python package from /opt/ros/lunar/lib/python2.7/dist-packages/lex_common_msgs and the associated egg-info file.

    But again: please just build lex_common_msgs in your Catkin workspace.

    It's almost impossible to comment on this without sounding pedantic, but there are some things here worth nothing:

    1. Lunar is EOL (since May this year) and thus no longer supported. Kinetic runs on the same version of Ubuntu and would be a better target.
    2. Amazon supports Kinetic and Melodic for this exact reason.
    3. Lunar != Kinetic. Copying binaries from one version to another is brittle at best. I would not be surprised if there are some hard-coded paths in some of the binaries pointing to /opt/ros/kinetic.
    4. and you probably had valid reasons, and this is not directed at you, more for future readers of this Q&A, but:

      Install from source requires colcon, AWS SDK, and other dependencies that are generating issues. I have put many hours over several days into this.

      is exactly why building packages from source is generally discouraged.

    5. Install from source requires colcon, [..]

      The readme may explain how to use colcon to build the packages, but I doubt it's actually required. I don't see anything in those packages that would make them require colcon as a build tool. I would expect catkin_make and catkin build to work just as well.

    Having written all of that:

    ERROR: Unable to load type [lex_common_msgs/AudioTextConversation].
    

    This seems to imply that either:

    1. you don't have lex_common_msgs installed
    2. the Kinetic version you copied has hard-coded paths to locations in /opt/ros/kinetic
    3. you copied the files to incorrect locations
    4. you didn't copy everything that was needed

    Especially this:

    The AudioTextConversation.srv file is located in the lex_common_msgs folder.

    makes me think it's something related to bullet #4.

    This is all fixable I believe, but I'd first like to know your rationale for wanting to use Lunar so badly.


    Edit:

    you don't have lex_common_msgs installed - this is in same package as the lex node

    You may already be aware, but just to make it extra clear: there is a difference between the package being hosted in the same repository and the messages actually being part of the same package. The messages are actually in a separate package, so copying files of the lex_node package would not include the message and service files.

    And in this case I believe it's not the .srv files that are important, but the .h and .py files generated from those. That's what I meant with "you may not have it all installed" and "you didn't copy everything that was needed".

    I would suggest not to copy files around. Instead, do the following:

    1. remove whatever you have copied of the lex_common_msgs
    2. place a copy of the sources of lex_common_msgs package in your Catkin workspace (just that package, you could download the zip of the master branch and extract it and keep just that package)
    3. build the workspace using regular catkin_make or catkin build (Colcon is not needed, see also my earlier comment on that)

    make sure to source /path/to/your/catkin_ws/devel/setup.bash, then try the following:

    rossrv show lex_common_msgs/AudioTextConversation
    

    This should display this (just about).

    If that command is successful, you would now have a properly build and 'installed' (depending on whether you're using an install space or not) the package, and anything depending on it should be able to find it.

    Given I'm not positive this issue would be corrected by changing to Kinetic I'm extra hesitant to start over with new distro.

    I'm not going to be able to give you a 100% guarantee, but seeing as everything is actually released for Kinetic, at least the AWS stuff should be an apt install away. The Tensorflow bits I can't say anything about of course.

    4 . you didn't copy everything that was needed - possible - I will go review again

    It's possible that you didn't copy the generated Python package from /opt/ros/lunar/lib/python2.7/dist-packages/lex_common_msgs and the associated egg-info file.

    But again: please just build lex_common_msgs in your Catkin workspace.

    It's almost impossible to comment on this without sounding pedantic, but there are some things here worth nothing:

    1. Lunar is EOL (since May this year) and thus no longer supported. Kinetic runs on the same version of Ubuntu and would be a better target.
    2. Amazon supports Kinetic and Melodic for this exact reason.
    3. Lunar != Kinetic. Copying binaries from one version to another is brittle at best. I would not be surprised if there are some hard-coded paths in some of the binaries pointing to /opt/ros/kinetic.
    4. and you probably had valid reasons, and this is not directed at you, more for future readers of this Q&A, but:

      Install from source requires colcon, AWS SDK, and other dependencies that are generating issues. I have put many hours over several days into this.

      is exactly why building packages from source is generally discouraged.

    5. Install from source requires colcon, [..]

      The readme may explain how to use colcon to build the packages, but I doubt it's actually required. I don't see anything in those packages that would make them require colcon as a build tool. I would expect catkin_make and catkin build to work just as well.

    Having written all of that:

    ERROR: Unable to load type [lex_common_msgs/AudioTextConversation].
    

    This seems to imply that either:

    1. you don't have lex_common_msgs installed
    2. the Kinetic version you copied has hard-coded paths to locations in /opt/ros/kinetic
    3. you copied the files to incorrect locations
    4. you didn't copy everything that was needed

    Especially this:

    The AudioTextConversation.srv file is located in the lex_common_msgs folder.

    makes me think it's something related to bullet #4.

    This is all fixable I believe, but I'd first like to know your rationale for wanting to use Lunar so badly.


    Edit:

    you don't have lex_common_msgs installed - this is in same package as the lex node

    You may already be aware, but just to make it extra clear: there is a difference between the package being hosted in the same repository and the messages actually being part of the same package. The messages are actually in a separate package, so copying files of the lex_node package would not include the message and service files.

    And in this case I believe it's not the .srv files that are important, but the .h and .py files generated from those. That's what I meant with "you may not have it all installed" and "you didn't copy everything that was needed".

    there is indeed a hard coded Kinetic line in one of the CMAKE files in the lex_common_msgs folder - " set(lex_common_msgs_INSTALL_PREFIX /opt/ros/kinetic)"

    That line is from a .cmake file in the share/lex_common_msgs folder. That is only a single folder which contains some metadata consumed by other ROS packages, and the original .srv files. Those are actually not used by other packages, as I mentioned earlier.

    I would suggest not to copy files around. Instead, do the following:

    1. remove whatever you have copied of the lex_common_msgs
    2. place a copy of the sources of lex_common_msgs package in your Catkin workspace (just that package, you could download the zip of the master branch and extract it and keep just that package)
    3. build the workspace using regular catkin_make or catkin build (Colcon is not needed, see also my earlier comment on that)

    make sure to source /path/to/your/catkin_ws/devel/setup.bash, then try the following:

    rossrv show lex_common_msgs/AudioTextConversation
    

    This should display this (just about).

    If that command is successful, you would now have a properly build and 'installed' (depending on whether you're using an install space or not) the package, and anything depending on it should be able to find it.

    Given I'm not positive this issue would be corrected by changing to Kinetic I'm extra hesitant to start over with new distro.

    I'm not going to be able to give you a 100% guarantee, but seeing as everything is actually released for Kinetic, at least the AWS stuff should be an apt install away. The Tensorflow bits I can't say anything about of course.

    4 . you didn't copy everything that was needed - possible - I will go review again

    It's possible that you didn't copy the generated Python package from /opt/ros/lunar/lib/python2.7/dist-packages/lex_common_msgs and the associated egg-info file.

    But again: please just build lex_common_msgs in your Catkin workspace.