Ros building CMake workspace - c++

I'am trying to build a simulation environment by using gazebo and ROS and I'm facing with the problem bellow with CMake. I have tried to understand what the problem it is - a lost dependence or is there a missing package, but this didn't lead me to the correct solution. Please help.
Build output:
ImportError: "from catkin_pkg.package import parse_package" failed: No module named 'catkin_pkg'
Make sure that you have installed "catkin_pkg", it is up to date and on the PYTHONPATH.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/safe_execute_process.cmake:11 (message):
execute_process(/usr/bin/python3
"/opt/ros/kinetic/share/catkin/cmake/parse_package_xml.py"
"/opt/ros/kinetic/share/catkin/cmake/../package.xml"
"/home/evadro/catkin_ws/build/catkin/catkin_generated/version/package.cmake")
returned error code 1
Call Stack (most recent call first):
/opt/ros/kinetic/share/catkin/cmake/catkin_package_xml.cmake:74 (safe_execute_process)
/opt/ros/kinetic/share/catkin/cmake/all.cmake:168 (_catkin_package_xml)
/opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:20 (include)
CMakeLists.txt:56 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/evadro/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/evadro/catkin_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

Related

problem with eclipse build cmake espidf Error: could not find CMAKE_PROJECT_NAME in Cache

I have a problem with the eclipse IDE with ESP-IDF, every time that i build a project i get this massage-
Building in: C:\Users\eclipse-workspace06\blynk\build
Configuring in: C:\Users\eclipse-workspace06\blynk\build
cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE=D:\espidfeclipse\esp-idf-v5.0\tools\cmake\toolchain-esp32.cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCCACHE_ENABLE=1 -DIDF_TARGET=esp32 C:\Users\eclipse-workspace06\blynk
-- Found Git: C:/Program Files/Git/cmd/git.exe (found version "2.28.0.windows.1")
CMake Error at D:/espidfeclipse/esp-idf-v5.0/tools/cmake/build.cmake:181 (file):
file FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
-- Configuring incomplete, errors occurred!
exactly three arguments.
Call Stack (most recent call first):
D:/espidfeclipse/esp-idf-v5.0/tools/cmake/idf.cmake:53 (__build_init)
D:/espidfeclipse/esp-idf-v5.0/tools/cmake/project.cmake:12 (include)
CMakeLists.txt:5 (include)
CMake Error at D:/espidfeclipse/esp-idf-v5.0/tools/cmake/project.cmake:18 (message):
Internal error, PYTHON build property not set correctly.
Call Stack (most recent call first):
CMakeLists.txt:5 (include)
cmake --build . -- -v
Error: could not find CMAKE_PROJECT_NAME in Cache
Build complete (1 errors, 0 warnings): C:\Users\eclipse-workspace06\blynk\build
Total time taken to build the project: 246 ms
The code is an example code that works on VScode and Arduino, i installed and reinstalled every thing 100 times already. ( and if i build regular c++ it works alright)
I will be grateful for any help i can get.
Thank you #drescherjm and #Tsyvarev for putting me on the right path.
I solved the problem and the solution is very odd. what i did was to delete all the python instances from the different environment variables and it worked for some bizarre reason.

Can't install ros warehouse for ros-noetic

I'm trying to use MongoDB with rviz. Hence, I tried compiling warehouse_ros_mongo after doing a git-clone to ~/catkin_ws/src folder. However, the CMake fails anyone who has any idea on how to fix it. Otherwise, can some recommend a package to use with ROS in order to connect the MongoDB and interact with rviz/moveit.
Error encountered when compiling:
CMake Error at /home/zelix/catkin_ws/devel/share/warehouse_ros/cmake/warehouse_rosConfig.cmake:113 (message): Project 'warehouse_ros' specifies '/home/zelix/catkin_ws/src/warehouse_ros/include' as an include dir, which is not found. It does neither exist as an absolute directory nor in '/home/zelix/catkin_ws/src/warehouse_ros//home/zelix/catkin_ws/src/warehouse_ros/include'. Check the website 'http://ros.org/wiki/warehouse_ros' for information and consider reporting the problem. Call Stack (most recent call first): /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package) warehouse_ros_mongo/CMakeLists.txt:15 (find_package)
-- Configuring incomplete, errors occurred! See also "/home/zelix/catkin_ws/build/CMakeFiles/CMakeOutput.log". See also "/home/zelix/catkin_ws/build/CMakeFiles/CMakeError.log".
You’re missing an include directory from the package.
Do mkdir /home/zelix/catkin_ws/src/warehouse_ros/include

Installing OpenCV 3.1.0 with CMake on Windows 7, opencv_ffmpeg.dll invalid hash

I'm trying to install OpenCV 3.1.0 with MSVC2015 compiler using CMake. I get an error saying that the file hash is different from the expected hash. I have no access to internet on the PC this needs to be installed on. I tired to install it successfully on a PC with internet to see if I could copy those files to the PC without internet. But that didn't work as CMake deletes the files, and tries to do it it's own way. I also tried this solution, but it didn't work.
Here is the error message:
CMake Warning at cmake/OpenCVUtils.cmake:872 (message):
Download: Local copy of opencv_ffmpeg.dll has invalid MD5 hash:
d41d8cd98f00b204e9800998ecf8427e (expected:
89c783eee1c47bfc733f08334ec2e31c)
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:206 (include)
CMakeLists.txt:536 (include)
Downloading opencv_ffmpeg.dll...
CMake Error at cmake/OpenCVUtils.cmake:895 (file):
file DOWNLOAD HASH mismatch
for file: [C:/OpenCV/opencv/sources/3rdparty/ffmpeg/downloads/89c783eee1c47bfc733f08334ec2e31c/opencv_ffmpeg.dll]
expected hash: [89c783eee1c47bfc733f08334ec2e31c]
actual hash: [d41d8cd98f00b204e9800998ecf8427e]
status: [6;"Couldn't resolve host name"]
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:206 (include)
CMakeLists.txt:536 (include)
CMake Error at cmake/OpenCVUtils.cmake:899 (message):
Failed to download opencv_ffmpeg.dll. Status=6;"Couldn't resolve host
name"
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:206 (include)
CMakeLists.txt:536 (include)
I would like to be able to install this without internet, but it proves very diffucult. Does anyone have any solutions to this?
Thanks in advance.
I found sub-string ffmpeg.dll in opencv\sources\3dparty\ffmpeg\ffmpeg.cmake:
set(FFMPEG_BINARIES_COMMIT "8aeefc4efe3215de89d8c7e114ae6f7a6091b8eb")
set(FFMPEG_FILE_HASH_BIN32 "89c783eee1c47bfc733f08334ec2e31c")
set(FFMPEG_FILE_HASH_BIN64 "35fe6ccdda6d7a04e9056b0d73b98e76")
set(FFMPEG_FILE_HASH_CMAKE "8606f947a780071f8fcce8cbf39ceef5")
set(FFMPEG_DOWNLOAD_URL https://raw.githubusercontent.com/Itseez/opencv_3rdparty/${FFMPEG_BINARIES_COMMIT}/ffmpeg/)
ocv_download(PACKAGE ...)
Download files:
https://raw.githubusercontent.com/Itseez/opencv_3rdparty/8aeefc4efe3215de89d8c7e114ae6f7a6091b8eb/ffmpeg/{opencv_ffmpeg.dll,opencv_ffmpeg_64.dll,ffmpeg_version.cmake}
and copy it to:
opencv\sources\3rdparty\ffmpeg\downloads\%HASH%\
Then cmake.exe -G "CodeBlocks - MinGW Makefiles" .
and mingw32-make.exe

OpenCV 3.0.0 "configure" fails, ffmpeg not downloaded

I get the following error when trying to configure OpenCV using CMAKE on windows:
CMake Warning at cmake/OpenCVUtils.cmake:865 (message):
Download: Local copy of opencv_ffmpeg.dll has invalid MD5 hash:
d41d8cd98f00b204e9800998ecf8427e (expected:
89c783eee1c47bfc733f08334ec2e31c)
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:193 (include)
CMakeLists.txt:527 (include)
Downloading opencv_ffmpeg.dll...
CMake Error at cmake/OpenCVUtils.cmake:888 (file):
file DOWNLOAD MD5 mismatch
for file: [C:/research/opencv300/sources/3rdparty/ffmpeg/downloads/89c783eee1c47bfc733f08334ec2e31c/opencv_ffmpeg.dll]
expected MD5 sum: [89c783eee1c47bfc733f08334ec2e31c]
actual MD5 sum: [d41d8cd98f00b204e9800998ecf8427e]
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:193 (include)
CMakeLists.txt:527 (include)
CMake Error at cmake/OpenCVUtils.cmake:892 (message):
Failed to download opencv_ffmpeg.dll. Status=1;"unsupported protocol"
Call Stack (most recent call first):
3rdparty/ffmpeg/ffmpeg.cmake:10 (ocv_download)
cmake/OpenCVFindLibsVideo.cmake:193 (include)
CMakeLists.txt:527 (include)
Configuring incomplete, errors occurred!
I tried downloading opencv_ffmpeg.dll manually, but the configure process didn't work.
Can you help me, how to fix that?
Had the same problem recently with opencv 3.1.0. Resolved the situation by using corresponding dll(s) from the ./build/bin directory of an opencv extract. As for ffmpeg_version.cmake, grabbed it from the link given. Replace the files under ./sources/3rd party/ffmpeg then reconfigure cmake.
You have to copy the files into your source folder, where you want to built from.
In my case it is then
C:\opencv_source\3rdparty\ffmpeg\downloads\35fe6ccdda6d7a04e9056b0d73b98e76
C:\opencv_source\3rdparty\ffmpeg\downloads\89c783eee1c47bfc733f08334ec2e31c
C:\opencv_source\3rdparty\ffmpeg\downloads\8606f947a780071f8fcce8cbf39ceef5
An they include these files in the same order
opencv_ffmpeg_64.dll
opencv_ffmpeg.dll
ffmpeg_version.cmake
Have a look into the file ffmpeg_cmake what CMake expects as md5-hash as folder label
Iam running into the same issue. In my opinion it is an issue through our company network and proxyserver.
So i tried to download the file manually from home and put it on my USB flash drive. Please look into your OpenCV source path. There you can find an structure like ...
"...\3rdparty\ffmpeg\downloads\HASH\opencv_ffmpeg.dll"
CMake tries to download the file, but can't pass through proxy, so the file is 0 Byte and md5 checksum fails.
In "...\OpenCV_SOURCE_FOLDER\3rdparty\ffmpeg" you can find a makefile named "ffmpeg.cmake" with the URL CMake tries to download from.
In my case I downloaded the file from the following URL:
https://raw.githubusercontent.com/Itseez/opencv_3rdparty/89c783eee1c47bfc733f08334ec2e31c/ffmpeg/opencv_ffmpeg.dll
Your checksum parameter could be different (depending probably on your OpenCV version)! It is possible that you have to do the same for "opencv_ffmpeg_64.dll" and "ffmpeg_version.cmake".
Best regards
I had the same problem; when I switched to Ubuntu, I didn't have this problem anymore. Maybe you can change your OS?
The checksum error happens because it is an issue in the software package and the files might not be there in the directory but openCV will download it in the process, just make sure that you are connected to internet without using VPN or proxy as it will get blocked by the firewall.

Unsupported Compiler

This is the error I'm getting on the CMake GUI:
CMake Error at cmake/Config.cmake:106 (message):
Unsupported compiler
Call Stack (most recent call first):
CMakeLists.txt:20 (include)
Configuring incomplete, errors occurred!
See also "C:/cygwin/home/sfml-build/CMakeFiles/CMakeOutput.log".
See also "C:/cygwin/home/sfml-build/CMakeFiles/CMakeError.log".
I'm not sure what causes this. I clicked "Configure" and that is what happened.
This is line 20:
# include the configuration file
include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/Config.cmake)
I'm new to CMake so I'm not sure what that means.
SFML doesn't support cygwin at the moment. ref