我刚从git clone wget http://www.cmake.org/files/v2.8/cmake-2.8.3.tar.gz在Linux服务器上的新文件夹中安装了Cmake。编译工作但从其他路径无法识别cmake命令。我应该将cmake-2.8.0文件夹的全部内容复制到usr / local / bin吗?或者是需要复制的bin文件夹的内容?
由于
答案 0 :(得分:0)
构建后,使用'sudo make install'。这将确保将正确的库和二进制文件复制到适当的位置。
通常这会将二进制文件安装到/ usr / local / bin。
确保PATH变量包含此内容。
答案 1 :(得分:0)
sudo make install由于某种原因没有复制到/ usr / local / bin /,所以我复制了CMAKE / bin的内容。对于usr / local / bin,它有效。
cp -a bin /。的/ usr / local / bin中/
答案 2 :(得分:0)
在Linux和其他基于Unix的系统上,常见的安排是将包安装到/opt
并将相关条目添加到PATH
环境变量以使其可用。这适用于本机包管理器或发行版未提供的包。通过选择适当的目录结构,可以通过允许同时安装不同版本的方式完成,用户可以通过将相关目录添加到PATH
来选择他们想要的版本。
对于CMake在问题中询问的特定情况,您可以使用/opt/cmake/<version>
之类的目录结构,然后将相关的/opt/cmake/<version>/bin
目录添加到PATH
(例如{{1}对于3.8.2 CMake版本)。您甚至可以download官方预先构建的CMake tarball,解压缩它们并将顶级目录移动到/opt/cmake/3.8.2/bin
区域作为您下载的特定版本。我在Linux,MacOS和Solaris上成功使用过它,因为我确实有很多其他人。
请注意,一旦您在特定源树上运行CMake,/opt/cmake
可执行文件就不再需要cmake
了。如果需要重新运行PATH
,构建将自行执行,并在其自己的缓存中记录cmake
可执行文件的完整路径,因此cmake
不是{0}}甚至咨询过(这对于确保相同版本的CMake继续用于所有版本都是必不可少的,无论PATH
如何,因为PATH
可以在登录会话之间改变,等等。如果您打算手动调用PATH
或首次在源代码树上运行cmake
,则PATH
只需要cmake
,但在这两种情况下,您始终只需要cmake
如果您愿意,请使用bin
可执行文件的完整路径。
我还应该补充说,CMake包中提供的整个文件集是必需的,而不仅仅是package
目录。 CMake广泛使用其他目录中的文件,例如它附带的各种模块。如果您从源代码构建CMake,您可能需要构建router.post('/signup', function(req, res, next){
var user= {
username: req.body.username,
email: req.body.email,
pass: req.body.pass
}
db.users.find({ email: req.body.email}).forEach(function (err, doc) {
if (doc.email!= req.body.email) {
db.users.save(user, function (err, usr) {
if (err) {
res.send(err);
}
res.json(usr);
}, (err) => {
console.log("err", err);
})
}
else {
console.log("the email has been taken");
}
})
目标,以便获得可重定位的tarball或类似内容,其中包含在系统上提供CMake软件包时应包含的所有内容。