柯南:找不到命令

柯南:找不到命令

我使用的是 RPI 3B

uname -a返回:4.14.98-v7+ #1200 armv71

操作系统是stretch

gcc version is 4.9.3

我正在尝试将我的 RPi 设置为 BLE 网关这个项目在 hackster.io 上。我执行了前几个命令:

git clone --recurse-submodules https://github.com/Wolkabout/WolkGateway.git

sudo apt-get install mosquitto cmake python python-pip && python -m pip install conan

Bash 脚本

然后我运行了一个 bash 脚本 (configure.sh),其中包含以下内容:

!/usr/bin/env bash

cp tools/git/pre-commit .git/hooks/pre-commit
chmod +x .git/hooks/pre-commit

pushd out
conan install -s compiler.libcxx=libstdc++11 --build=missing ..
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ..
popd

Bash 脚本的输出

终端输出:

line 21: conan: command not found

第 21 行是带有 的行conan

然后我得到一个 CMake 错误:

CMakeLists.txt:(20) (include):
include could not find load file:
/home/pi/Wolk...conanbuildinfo.cmake

也许柯南不在我的里面PATH

我的想法是该命令conan不在我的命令中$PATH,所以我检查了PIP

pip show conan

这给了我以下位置conan

/home/pi/.local/lib/python2.7/site-packages

然后我将该路径添加到我的$PATH

export PATH=$PATH:/home/pi/.local/lib/python2.7/site-packages

这不起作用,重新运行上述 bash 脚本(configure.sh)时导致相同的错误

从源代码安装柯南

我去了这里conan从源安装:

 git clone https://github.com/conan-io/conan.git
 cd conan
 pip install -r conans/requirements.txt

将柯南添加到我的 Python 脚本PATH

#!/usr/bin/env python

import sys

conan_repo_path = "/home/pi/conan" 

CONAN 存储库文件夹的绝对路径

sys.path.append(conan_repo_path)
from conans.client.command import main
main(sys.argv[1:])    

这有效。它向我展示了conan commands help输出。

当我执行configure.sh(bash脚本)时,这个python脚本的作用有何不同?

答案1

在 ubuntu 18.04 上,安装软件后执行 pip3 install --user conanpip install --user conan

未将二进制文件正确链接到您的路径中。您通常可以设置路径,因为 --user 将其安装到~/.local/(基于每个用户),因为使用 sudo 全局安装会破坏东西。

一种快速选择是仅通过执行来创建符号链接 sudo ln -s ~/.local/bin/conan /usr/bin/conan

这是一个小解决方案,但是您也可以~/.local/bin这样添加: export PATH=$PATH:/home/<user>/.local/bin

您还可以从这里执行任何已安装的二进制文件。

答案2

安装柯南时:

sudo apt-get install mosquitto cmake python python-pip && python -m pip install conan

后半部分:

python -m pip install conan

应该使用 sudo 安装:

sudo python -m pip install conan

如果这不起作用,请尝试卸载 conan:

pip uninstall conan

然后重新安装:

sudo pip install conan

目前我的 RPi 已成功运行 configure.sh 脚本。

相关内容