How can I install rosbag2 plugin in ros2 foxy - ubuntu-20.04

I am trying to install ros2bag plugin, while doing this I am encountering with this error.
Starting >>> ros1_rosbag_storage_vendor
Finished <<< ros1_rosbag_storage_vendor [1.05s]
Starting >>> rosbag2_bag_v2_plugins
--- stderr: rosbag2_bag_v2_plugins
CMake Error at CMakeLists.txt:28 (message):
Failed to find ROS 1 roscpp, cannot build.
---
Failed <<< rosbag2_bag_v2_plugins [0.74s, exited with code 1]
Summary: 1 package finished [2.02s]
1 package failed: rosbag2_bag_v2_plugins
1 package had stderr output: rosbag2_bag_v2_plugins
Can someone please help me.
I tried using git clone and then colcon build

You need to install ROS 1.
It looks like rosbag2_bag_v2_plugins is looking for its dependency roscpp
This means that you don't have ROS 1 (properly) installed. As is mentioned is a requirement here.
If you install rosbag2_bag_v2_plugins from the bloomed debian package like ros-humble-rosbag2-bag-v2-plugins (on Ubuntu), it will automatically install what you need from ros-noetic-*. But since you are doing it from source, and since rosdep can't help you, you need to install ROS 1 manually as as a separate step.

Related

how to download sent2vec library

So I'm trying to download sent2vec (this one: https://github.com/epfml/sent2vec) on windows, and I have issues with that.
to my understanding, pip installs won't work because it will get a different package with the same name.
I tried to download the library by manually git cloning the sent2vec and fastText libraries and then using pip install . (I got the idea from another thread).
When trying to pip install sent2vec, I get this error:
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: numpy>=1.17.1 in c:\python38\lib\site-packages (from sent2vec==0.0.0) (1.24.0)
Requirement already satisfied: Cython>=0.29.13 in c:\python38\lib\site-packages (from sent2vec==0.0.0) (0.29.32)
Building wheels for collected packages: sent2vec
Building wheel for sent2vec (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for sent2vec (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [2 lines of output]
cl : Command line error D8021 : invalid numeric argument '/Wno-cpp'
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.27.29110\\bin\\HostX86\\x86\\cl.exe' failed with exit code 2
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for sent2vec
Failed to build sent2vec
ERROR: Could not build wheels for sent2vec, which is required to install pyproject.toml-based projects
sent2vec requires Facebook's FastText library which builds on Unix (Linux distributions and modern Mac OS). The list of compiler flags is clearly for GCC, they don't work with MSVC.
The bottom line is: the library cannot be built on w64.
sent2vec repository includes a Dockerfile so you can try to use Docker. Or you can try WSL2. Both the Dockerfile and WSL2 run Ubuntu, a Linux distribution.
Upd. The Dockerfile was not updated in 3 years, last commit was on Aug 29, 2019, so it's a bit outdated. The simplest fix currently seems to be editing it after cloning and setting a version in the 1st line: make it FROM ubuntu:18.04

Creating\Updating conda venv with yml file fails in pip dependencies part with gym[rom]

Im trying to create a virtual enviorment based on an enviorment.yml file with the command:
"mamba env update -f environment.yml -n cs236781-hw".
The yml file contains this part:
- pip:
- nbmerge
- gym[atari,accept-rom-license,box2d]==0.21.0
which seems to fail as I get this error in my minicinda prompt:
Building wheel for AutoROM.accept-rom-license (pyproject.toml): started
Building wheel for AutoROM.accept-rom-license (pyproject.toml): finished with status 'error'
Failed to build AutoROM.accept-rom-license
Pip subprocess error:
error: subprocess-exited-with-error
× Building wheel for AutoROM.accept-rom-license (pyproject.toml) did not run successfully.
ImportError: DLL load failed while importing libtorrent: The specified module could not be found.
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for AutoROM.accept-rom-license
ERROR: Could not build wheels for AutoROM.accept-rom-license, which is required to install pyproject.toml-based projects
failed
CondaEnvException: Pip failed
Ive tried so many things to fix this (reinstalling conda, python even vscode and its c++ build tools) with no success.
Does anyone have any clue?
I assume you are working on Windows x64?
If yes, you will probably need OpenSSL 1.1.x.
Please try to install e.g. Win64OpenSSL_Light-1_1_1s.exe first, to get the required SSL libraries.
https://slproweb.com/products/Win32OpenSSL.html
Regards,
Konstantin

Issue while Haskell instaling Euterpea's dependency, HCodecs did not skip version check for a later version installed

While I was installing Euterpea today, I found HCodecs-0.5.1 (a dependency for Euterpea) was tend to always to beult-fail
So I go to Hackage.Haskell.org, checked that HCodecs offers a latest version: HCodecs-0.5.2, and I installed it successfully by cabal v1-install (strictly followed the instruction from Euterpea.com & Haskell.org)
However, after I installed the HCodecs-0.5.2, the install of Euterpea still failed in installing the HCodecs-0.5.1; Which id quite weird for the dependency check did not skip the older version package for a later one available locally;
Here is the log of 2 installation, hoping anyone could give me a help on either bypass the version check, or solve the HCodecs-0.5.1's build fail:
=================Install of HCodecs-0.5.2==========================
PS C:\WINDOWS\system32> cabal v1-install HCodecs-0.5.2
Resolving dependencies...
Downloading fail-4.9.0.0
Downloaded fail-4.9.0.0
Starting fail-4.9.0.0
Building fail-4.9.0.0
Completed fail-4.9.0.0
Downloading HCodecs-0.5.2
Downloaded HCodecs-0.5.2
Starting HCodecs-0.5.2
Building HCodecs-0.5.2
Completed HCodecs-0.5.2
===continue install Euterpea, HCodecs-0.5.1 did not skip and fail again ====
PS C:\WINDOWS\system32> cabal v1-install Euterpea
Resolving dependencies...
Starting HCodecs-0.5.1
Building HCodecs-0.5.1
Failed to install HCodecs-0.5.1
Build log ( C:\Users\12798\AppData\Roaming\cabal\logs\ghc-8.10.2\HCodecs-0.5.1-KovArVTnpFnLaEvHYYD8GP.log ):
Preprocessing library for HCodecs-0.5.1..
Building library for HCodecs-0.5.1..
[1 of 7] Compiling Codec.ByteString.Builder ( src\Codec\ByteString\Builder.hs,
dist\build\Codec\ByteString\Builder.o )
src\Codec\ByteString\Builder.hs:79:1: warning: [-Wunused-imports]
The import of `Data.Semigroup' is redundant
except perhaps to import instances from `Data.Semigroup'
To import instances alone, use: import Data.Semigroup()
|
79 | import Data.Semigroup
| ^^^^^^^^^^^^^^^^^^^^^
[2 of 7] Compiling Codec.ByteString.Parser ( src\Codec\ByteString\Parser.hs, dist\build\Codec\ByteString\Parser.o )
src\Codec\ByteString\Parser.hs:143:5: error:
`fail' is not a (visible) method of class `Monad'
|
143 | fail err = Parser $ \(S _ _ bytes) ->
| ^^^^
cabal: Leaving directory 'C:\Users\12798\AppData\Local\Temp\cabal-tmp-13328\HCodecs-0.5.1'
cabal.exe: Error: some packages failed to install:
Euterpea-2.0.7-16Dwojok2ejBacdiDIytTu depends on Euterpea-2.0.7 which failed
to install.
HCodecs-0.5.1-KovArVTnpFnLaEvHYYD8GP failed during the building phase. The
exception was:
ExitFailure 1
That's the whole log I have for issue on dependency's version
The problem is that Euterpea has a dependency on exactly version 0.5.1 of HCodecs, and support for the MonadFail Proposal (fully implemented as of GHC 8.8.1) was only added to HCodecs in version 0.5.2. Until Euterpea updates its dependency list, you have two choices to work around this: either pass the --allow-newer command line flag to cabal, which will cause it to ignore upper version bounds, or downgrade your GHC to 8.6.5, the final version that didn't fully implement the MonadFail Proposal. In this case, I recommend the former.

Error while installing sentry `unable to execute 'clang': No such file or directory`

I am trying to install sentry by following the instruction from the link:
However when I try to execute command pip install -U sentry, I receive the error InstallationError: Command python setup.py egg_info failed with error code 1 in /webapps/sentry/env/build/symsynd
Here is the detail from log file:
self.run_setup(setup_script, setup_base, args)
File "/webapps/sentry/env/local/lib/python2.7/site-packages/setuptools/command/easy_install.py", line 1003, in run_setup
raise DistutilsError("Setup script exited with %s" % (v.args[0],))
distutils.errors.DistutilsError: Setup script exited with 1
Complete output from command python setup.py egg_info:
unable to execute 'clang': No such file or directory
unable to execute 'clang': No such file or directory
No working compiler found, or bogus compiler options
passed to the compiler from Python's distutils module.
See the error messages above.
It would be nice if someone can figure out what am I doing wrong.
Thank you,
Vady
You need a C compiler to build the symsynd dependency.
If you are on a Debian based distribution (Ubuntu, etc.) just do :
sudo apt-get install clang
It seems that specifying a C compiler will be ok, but not. In some packages clang is hard-coded. The only way is to install clang.

How to build a shared library for TensorFlow on Travis-CI

I'm assisting in building a Ruby-wrapper for TensorFlow. Obviously. we'd want to setup automatic test of the project and so I'm currently trying struggling to configure Travis-CI to build the project and run tests like I can on my own machine (OSX El Capitan).
My question is: What is the magic that needs to go in the .travis.yml-file to properly bazel build a shared lib (tensorflow.so) for TensorFlow?
As far as I can tell, I've successfully installed TensorFlow's dependencies, including Google's build tool Bazel, but Travis-CI still can't build. As of this writing the bazel build command fails with the message:
...
...
INFO: Building...
[1 / 13] Writing file external/gif_archive/libgif.so-2.params
[3 / 13] Compiling external/gif_archive/giflib-5.1.4/lib/egif_lib.c
ERROR: /home/travis/.cache/bazel/_bazel_travis/1a58902034d650eeef2a9da5b1248179/external/gif_archive/BUILD:14:1: C++ compilation of rule '#gif_archive//:gif' failed: namespace-sandbox failed: error executing command
(cd /home/travis/.cache/bazel/_bazel_travis/1a58902034d650eeef2a9da5b1248179/execroot/tensorflow && \
exec env - \
...
...
The command "bazel build --verbose_failures=1 #gif_archive//:gif" failed and exited with 1 during .
https://travis-ci.org/chrhansen/tensorflow.rb/builds/145716589
Note: I've noticed that the guys over at github.com/node-tensorflow/node-tensorflow successfully made this happen: https://travis-ci.org/node-tensorflow/node-tensorflow/builds
UPDATE: https://github.com/tensorflow/tensorflow/issues/3374
The issue has been solved (https://github.com/tensorflow/tensorflow/issues/3374), you should be able to build tensorflow with sandbox enabled.

Resources