I want to update cmake,the old version is 2.8.But when is uninstall the old version cmake it doesn't work.
[chaos#localhost ~]$ cmake --version
cmake version 2.8.10.2
[lichao#localhost ~]$ yum info cmake
Available Packages
Name : cmake
Arch : x86_64
Version : 2.8.12.2
Release : 2.el7
Size : 7.1 M
Repo : base
Summary : Cross-platform make system
URL : http://www.cmake.org
License : BSD and MIT and zlib
Description : CMake is used to control the software compilation process using simple
: platform and compiler independent configuration files. CMake generates
: native makefiles and workspaces that can be used in the compiler
: environment of your choice. CMake is quite sophisticated: it is possible
: to support complex environments requiring system configuration, preprocessor
: generation, code generation, and template instantiation.
[chaos#localhost ~]$ sudo yum remove cmake -y
[sudo] password for lichao:
No Match for argument: cmake
No Packages marked for removal
the cmake you use was installed manually, not using yum.
yum info shows you the information of the package that is available in your repositories (base), it is not installed, otherwise it would say
Repo : installed
so since cmake is not installed using yum, you cannot remove it using yum.
NOTE: you can also see that the version numbers differ...
If you want to update it's not required to remove the package before. You can directly execute update command:
yum update cmake
Related
I have CentOS 7 and CentOS 8 installed on 2 VMs. Both have epel enabled.
CentOS 7:
$ cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)
$ yum repolist
...
repo id repo name status
base/7/x86_64 CentOS-7 - Base 10070
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13445
extras/7/x86_64 CentOS-7 - Extras 413
updates/7/x86_64 CentOS-7 - Updates 1127
repolist: 25055
CentOS 8:
$ cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)
$ yum repolist
repo id repo name
AppStream CentOS-8 - AppStream
BaseOS CentOS-8 - Base
PowerTools CentOS-8 - PowerTools
epel Extra Packages for Enterprise Linux 8 - x86_64
epel-modular Extra Packages for Enterprise Linux Modular 8 - x86_64
extras CentOS-8 - Extras
On CentOS 7, cmake3 is available from the epel repo, and provides cmake version 3.17.
$ yum provides cmake3
...
cmake3-3.17.3-3.el7.x86_64 : Cross-platform make system
Repo : epel
On CentOS 8, cmake3 is available from the AppStream repo, and provides cmake version 3.11.
$ yum provides cmake3
...
cmake-3.11.4-7.el8.x86_64 : Cross-platform make system
Repo : #System
Matched from:
Provide : cmake3 = 3.11.4-7.el8
I tried to disable all repos except for epel, but it's still coming back with the one from AppStream (which seems counter intuitive to me - surely it should come back with nothing if I've disabled all the other repos?)
$ yum --disablerepo=* --enablerepo=epel info cmake
Last metadata expiration check: 0:21:06 ago on Fri 11 Sep 2020 09:44:08 AM UTC.
Installed Packages
Name : cmake
Version : 3.11.4
Release : 7.el8
Architecture : x86_64
Size : 24 M
Source : cmake-3.11.4-7.el8.src.rpm
Repository : #System
From repo : AppStream
Summary : Cross-platform make system
URL : http://www.cmake.org
License : BSD and MIT and zlib
Description : CMake is used to control the software compilation process using simple
: platform and compiler independent configuration files. CMake generates
: native makefiles and workspaces that can be used in the compiler
: environment of your choice. CMake is quite sophisticated: it is possible
: to support complex environments requiring system configuration, preprocessor
: generation, code generation, and template instantiation.
I searched on pkgs.org, and it certainly does seem that cmake-3.11 is the latest version available to CentOS 8.
Apart from building from source, is there any other way to obtain a newer version of cmake on CentOD 8?
The cmake: 3.11.4 version will still be listed when you run yum info because it is already installed, so disabling the AppStream repo won't affect what is shown. If you only want to show available packages (based on your enabled yum repos), you can run this instead:
yum --disablerepo=* --enablerepo=epel info cmake --available
If you want to install the latest version of CMake (or some other version), you can always download the binary distribution from the CMake download page.
Once downloaded, you can extract the package to somewhere you have access to on your machine, e.g.:
mkdir ~/cmake
tar xvzf ~/Downloads/cmake-3.18.2-Linux-x86_64.tar.gz -C ~/cmake
Finally, make sure you add the extracted bin directory to your PATH environment variable so you can run the cmake executable from the command line.
I am trying to install the new ITK version which needs a cmake version higher than 3.9
I have just download the cmake 3.10 version.
and when I install it there is no ccmake in the bin folder. usually the new ccmake version is here.
when I want to install ccmake using apt it links it to the 3.5 cmake version.
How can I do to have a ccmake version linked to the 3.10 version of cmake ?
Turning my comment into an answer
You can use the following tutorial to build and install the latest CMake version: How do I install the latest version of cmake from the command line?
But - as for the time of your question - it was lacking the hint to install the curses library/headers first (see here,
you don't get ccmake built and installed without it ). So I had the same problem on my Ubuntu and was able to install and rebuild it with the following steps:
# sudo apt-get install libncurses-dev
# cd ~/temp/cmake-3.10.2
# cmake .
...
# make -j8
...
# sudo make install
...
# ccmake
Usage
ccmake <path-to-source>
ccmake <path-to-existing-build>
Specify a source directory to (re-)generate a build system for it in the
current working directory. Specify an existing build directory to
re-generate its build system.
Run 'ccmake --help' for more information.
The binary ccmake is a target of the make file.
To get all, perform:
./configure
make all
sudo make install
To just get ccmake, perform:
make ccmake
I tried to install mcsema on my debian linux but I am stopped by error
Cmake 3.1 or higher is required. You are running 3.0.2. On debian this is the only version could be installed by apt-get install. Building CMake from sources, I get several errors as well. Does anyone know how to install the latest version of Cmake on Debian 8?
Download latests cmake release and follow the README.rst instructions:
UNIX/Mac OSX/MinGW/MSYS/Cygwin ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
You need to have a compiler and a make installed. Run the
bootstrap script you find in the source directory of CMake. You
can use the --help option to see the supported options. You may
use the --prefix=<install_prefix> option to specify a custom
installation directory for CMake. You can run the bootstrap script
from within the CMake source directory or any other build directory of
your choice. Once this has finished successfully, run make and
make install. In summary::
$ ./bootstrap && make && make install
I installed PCL using the following commands.
sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt-get install libpcl-all
When I compiled my PCL program with the following lines in CMakeLists.txt
find_package(PCL 1.3 REQUIRED COMPONENTS)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
I have errors as
CMake Error at CMakeLists.txt:17 (find_package):
By not providing "FindPCL.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "PCL", but
CMake did not find one.
Could not find a package configuration file provided by "PCL" (requested
version 1.3) with any of the following names:
PCLConfig.cmake
pcl-config.cmake
Add the installation prefix of "PCL" to CMAKE_PREFIX_PATH or set "PCL_DIR"
to a directory containing one of the above files. If "PCL" provides a
separate development package or SDK, be sure it has been installed.
I can't locate PCLConfig.cmake and pcl-config.cmake in my system.
I did like
locate PCLConfig.cmake
/home/ttt/.local/share/Trash/files/PCLConfig.cmake
/home/ttt/.local/share/Trash/files/DemoApplications-master/Calculus/tv_auto_on_off/voxel-sdk/libvoxelpcl/VoxelPCLConfig.cmake.in
/home/ttt/.local/share/Trash/files/config/VoxelPCLConfig.cmake.in
/home/ttt/.local/share/Trash/files/voxelsdk.2/config/VoxelPCLConfig.cmake.in
/home/ttt/.local/share/Trash/info/PCLConfig.cmake.trashinfo
/home/ttt/Softwares/voxelsdk/config/VoxelPCLConfig.cmake.in
/usr/lib/cmake/VoxelPCL/VoxelPCLConfig.cmake
Does it make sense?
I tried like
set(PCL_DIR "/home/ttt/.local/share/Trash/files/PCLConfig.cmake")
find_package(PCL 1.3 REQUIRED COMPONENTS)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
But still have the same error.
How to locate PCLConfig.cmake in my system?
Thanks
you should specify the PCL dir for the CMake to find it.
In a terminal run :
$ locate PCLConfig.cmake
Then, add the found folder (without the filename) to your CMakeLists like the following :
set(PCL_DIR "/found/folder/")
#change X.x to whatever version yo installed
Sidenote : /usr/share/pcl-x.x is the usual path to your pcl folder.
I had the same problem when I followed the steps mentioned on the website http://www.pointclouds.org/downloads/linux.html, for Ubuntu 18.
You simply need to run
sudo apt install libpcl-dev
as bionic is not mentioned in the distributions (http://ppa.launchpad.net/v-launchpad-jochen-sprickerhof-de/pcl/ubuntu/dists/)
Attempting to install Banshee from source on a CentOS 7 machine (migrating from Ubuntu and I want to retain my playlists and settings).
./configure results in:
configure: error: Package requirements (mono >= 2.4.3) were not met:
No package 'mono' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables MONO_MODULE_CFLAGS
and MONO_MODULE_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
which mono
/bin/mono
echo $PKG_CONFIG_PATH
/usr/local/lib/pkgconfig
but if I check for pkgconfig,
which pkgconfig
/usr/bin/which: no pkgconfig in (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
yum provides pkgconfig
1:pkgconfig-0.27.1-4.el7.i686 : A tool for determining compilation options
Repo : base
yum install pkgconfig
Package 1:pkgconfig-0.27.1-4.el7.x86_64 already installed and latest version
A similar question was asked last year with no accepted answer. One of the answers pointed to a now non-existent page with a purported solution.
I believe pkg-config itself is working all right, configure is not complaining about that. What's missing is the entry for mono in the pkg-config database. Make sure you have mono.pc in /usr/local/lib/pkgconfig, or add wherever you have this file to PKG_CONFIG_PATH as instructed. On some linux distributions, development packages need to be separately installed, such as libmono-cil-dev on debian.