Cmake not working after installed from pip - cmake

After I installed the cmake from pip, I did a symbolic link from where pip has installed the cmake to /usr/bin/cmake, but it seems cmake does not work properly through a symbolic link. Error message:
CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Any thoughts on how to make this work without reinstalling by other means?
Thanks!

Related

CMake 3.18.0 not finding libopenjpeg2

Please forgive my ignorance when is comes to Cmake. I'm trying to install Poppler 0.86.1 on Centos 7 but I am stuck with an error that says CMake Error at CMakeLists.txt:208 (message): Install libopenjpeg2 before trying to build poppler. I have installed libopenjpeg2 including the dev package by running the following:
sudo yum install openjpeg2-devel
I am taking the following steps to install poppler:
wget https://poppler.freedesktop.org/poppler-0.86.1.tar.xz
tar xf poppler-0.86.1.tar.xz
cd poppler-0.86.1/
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
Which results in the following error
CMake Error at CMakeLists.txt:208 (message):
Install libopenjpeg2 before trying to build poppler. You can also decide
to use the internal unmaintained JPX decoder or none at all.
-- Configuring incomplete, errors occurred!
This is where the failure occurs in the CMakeLists.txt
if(ENABLE_LIBOPENJPEG STREQUAL "openjpeg2")
find_package(OpenJPEG)
set(WITH_OPENJPEG ${OpenJPEG_FOUND})
if(NOT OpenJPEG_FOUND OR OPENJPEG_MAJOR_VERSION VERSION_LESS 2)
message(FATAL_ERROR "Install libopenjpeg2 before trying to build poppler. You can also decide to use the internal unmaintained JPX decoder or none at all.")
endif()
...
Can anyone point me in the right direction in figuring out how to get Poppler 0.86.1 to successfully install on Centos 7?
If I remember correctly, I had the same problem when I was trying to use the latest version of the Poppler in my Docker image. I fixed it by installing libopenjp2-7-dev. Please check my answer, specifically, the second row of my Dockerfile where you can see what I installed before running cmake.
I hit this and it was due to https://github.com/uclouvain/openjpeg/issues/1174. I modified my local copy of /lib64/openjpeg-2.3/OpenJPEGConfig.cmake to work around this.

"Could not find triehash executable" error

I was trying to build the apt repository, but ran into the following error when running cmake ..:
CMake Error at CMakeLists.txt:44 (message):
Could not find triehash executable
How do I fix this?
This cmake tries to find triehash utility in your system. Is it installed? If no use sudo apt install triehash

pip3 gives CMake Error in CMakeLists.txt

I am trying to run pip3 install face_recognition. But it gives below problem for cmake.
Building for: NMake Makefiles
CMake Error in CMakeLists.txt:
Generator
NMake Makefiles
does not support platform specification, but platform
x64
was specified.
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
pip3 version is 9.03, Python 3.7 and cmake 3.12.0-rc3. I don't have Visual studio. I don't have admin rights on my PC. Hence I downloaded the all the above packages, extracted and added their bin dir in path. Similar way I have installed MinGW and added its bin directory in path. Nothing is working. Couple of forums talk about removing CMakeCache.txt. I am struggling to find CMakeCache.txt. I think pip command is downloading the package, extracting in temp directory and compiling it. When compilation fails it delete the extracted content. Not sure. Please help
After carefully studying a logs, I realized it's Dlib installation a giving problem. After lots of search, I got the url https://www.learnopencv.com/install-opencv-3-and-dlib-on-windows-python-only. It suggest to use Anaconda. I installed the Anaconda and followed the instruction from article and discussions. It worked perfectly for me.

cmake 3.11 installation in solaris11

I am new to solaris 11 machine. I have a vitual box and I can only interact via command promt. I am trying to install cmake 3.11 version. I tried downloading cmake source code and building it. But failed at one point where in code uses c++11 and the our gcc compiler is not able to compile it.
It will be very greatfull if anyone can give me steps for installing and using cmake in solaris11.
Thanks in advance.
Solaris 11 offers a cmake package in its package repos, so pkg install cmake as root should do it.

Error:Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)

I am using Point cloud library 1.5.1. When I run CMake 3.4.0-rc2 to build my project, it has error:
Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
How do I fix this error?
This error is raised because the pkg-config utility is not available on your system.
Using PkgConfig with CMake is not a truly cross-platform solution, as Windows does not come with the pkg-config utility installed. (The PCL developers should instead use find_package() in their CMake. Perhaps, this is worth opening up a bug report on their Github.) On Linux, this is an easy fix; you can install pkg-config like this:
sudo apt-get install pkg-config
However, on Windows, the process is more involved. There are several solutions for installing pkg-config on Windows documented here. I'm not sure which most directly applies to your situation, so I suggest reading through some of those. After successfully installing the pkg-config utility on your Windows machine, clear your CMake cache, and re-run CMake. This should remove the error, and allow your build to proceed.
Install vcpkg: https://vcpkg.io/en/getting-started.html
Install pkgconf:
.\vcpkg install pkgconf
If use CMake, delete the Cache files/folders: CMakeCache.txt and CMakeFiles. After that, run the command
cmake .. -DCMAKE_TOOLCHAIN_FILE=C:\dev\vcpkg\scripts\buildsystems\vcpkg.cmake
On Fedora 34, it was because of multiple pkg-config
/home/sapillai/go/bin/pkg-config
/home/sapillai/go/bin/pkg-config
/usr/bin/pkg-config
/home/sapillai/go/bin/pkg-config
I deleted the others and kept /usr/bin/pkg-config. Error was gone.