如何诊断柯南安装问题

时间:2019-08-01 06:53:30

标签: python install conan

我有柯南的安装问题

在我的Ubuntu 18.04告诉“命令'conan'未找到”之后,我猜到了Python 版本错误。所以我尝试升级结果

$ sudo apt-get install python
python is already the newest version (2.7.15~rc1-1)

但是

$ locate python
/var/lib/binfmts/python2.7
/var/lib/binfmts/python3.6

在这种状态下,我试图安装柯南

$ pip install conan
Collecting conan
...
Successfully installed Jinja2-2.10.1 MarkupSafe-1.1.1 PyJWT-1.7.1 PyYAML-5.1.2 astroid-1.6.6 attrs-19.1.0 backports.functools-lru-cache-1.5 bottle-0.12.17 certifi-2019.6.16 chardet-3.0.4 colorama-0.4.1 conan-1.18.0 configparser-3.7.4 deprecation-2.0.6 distro-1.1.0 enum34-1.1.6 fasteners-0.15 future-0.16.0 futures-3.3.0 idna-2.8 isort-4.3.21 lazy-object-proxy-1.4.1 mccabe-0.6.1 monotonic-1.5 node-semver-0.6.1 packaging-19.1 patch-1.16 pluginbase-0.7 pygments-2.4.2 pylint-1.9.5 pyparsing-2.4.2 python-dateutil-2.8.0 requests-2.22.0 singledispatch-3.4.0.3 six-1.12.0 tqdm-4.32.2 urllib3-1.25.3 wrapt-1.11.2

然后列出“ conan”已安装,但

$ conan

Command 'conan' not found, did you mean:

即,没有错误消息或警告,只是没有安装。 我发现该路径未在PATH中列出,因此我添加了“〜.local / bin”。现在,故事继续,并显示错误消息

CMake Error at CMakeLists.txt:90 (include):
  include could not find load file:

    Conan

我发现 https://docs.conan.io/en/latest/howtos/cmake_launch.html。 好,我插入了CMakeLists.txt文件行

# Download automatically, you can also just copy the conan.cmake file

if(NOT EXISTS "${CMAKE_BINARY_DIR}/conan.cmake")
   message(STATUS "Downloading conan.cmake from https://github.com/conan-io/cmake-conan")
   file(DOWNLOAD "https://raw.githubusercontent.com/conan-io/cmake-conan/master/conan.cmake"
                  "${CMAKE_BINARY_DIR}/conan.cmake")
endif()

include(${CMAKE_BINARY_DIR}/conan.cmake)

conan_cmake_run(REQUIRES Catch2/2.6.0@catchorg/stable
                BASIC_SETUP)

我也被告知

  Please specify in command line CMAKE_BUILD_TYPE
  (-DCMAKE_BUILD_TYPE=Release)

所以我用

cmake .. -DCMAKE_BUILD_TYPE=Release

而不是

cmake ..

还是,我收到

ERROR: compiler not defined for compiler.libcxx
Please define compiler value first too
FATAL_ERROR;conan install command failed.
STATUS;Conan: Compiler GCC>=5, checking major version 7
STATUS;Conan: Checking correct version: 7

大约两周前,我可以完美地将同一项目安装在另一个系统上。我能以某种方式回到那个状态吗?我希望柯南能够稳定,而不是阿尔法。

编辑2: 我发布了

 conan profile new default --detect --force

回复是

Found gcc 7
gcc>=5, using the major as version

************************* WARNING: GCC OLD ABI COMPATIBILITY ***********************

Conan detected a GCC version > 5 but has adjusted the 'compiler.libcxx' setting to
'libstdc++' for backwards compatibility.
Your compiler is likely using the new CXX11 ABI by default (libstdc++11).

(我真的不知道为什么在新项目中需要向后兼容)

cmake ..

最后似乎有效。由于编译器标准,恐怕还会有其他问题。例如,SystemC的默认值为'98,但是其他一些库使用的功能则需要'14,现在柯南强制使用'11。有没有办法专门针对我的系统来集中处理所有这一切?

关于两个python版本:我没有手动安装,只有其他一些安装程序才安装。我真的不知道为什么以及哪个安装脚本会导致这种情况加倍。顺便说一句:Ubuntu表示V2.7是最新版本,尽管也存在V3.x。我对这些版本号有些困惑。 我只是做了一个新安装,并且在python的第二个版本出现时并没有特别注意。我个人甚至不使用python,只有一些安装脚本可以安装它。

我的系统是否特定:我不这么认为。我刚刚安装了Ubuntu 18.04.2,我的主要目标是安装与SystemC相关的东西。我真的只安装了被声明为丢失的东西。 (加上livetex,git等)

其间,“ cmake ..”终止。看来,柯南的安装终止了。但是,在配置项目时,会显示类似消息

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
SCV_INCLUDE_DIRS

柯南还使用

安装了丢失的文件
[requires]
SystemC/2.3.3@minres/stable
SystemCVerification/2.0.1@minres/stable
doxygen_installer/1.8.15@bincrafters/stable
qt/5.12.0@bincrafters/stable
gtest/1.8.1@bincrafters/stable
flex/2.6.4@bincrafters/stable

我实际上使用的是相同的文件(使用相同的电缆连接到总线的旧磁盘或新磁盘)。大约一个月前进行的安装运行良好,新安装的行为如上所述。

对于我来说,安装和使用柯南似乎太复杂了。我想简化安装而不是使其复杂化。

1 个答案:

答案 0 :(得分:1)

这里列出了许多与安装有关的案例:
https://docs.conan.io/en/latest/installation.html#known-installation-issues-with-pip

我会说已经安装了柯南,但未在您的PATH中列出。您可以在Python软件包文件夹中找到柯南,并使用柯南路径更新PATH:

python -m site # list your package folder
find <package folder> -name conan
echo PATH=${PATH}:<package folder> >> ~/.bashrc
source ~/.bashrc