python相关

一、虚拟环境
pyenv: 用于python多版本管理
virtualenv: 用于python给各版本提供纯净的虚拟环境

  1. pyenv 安装 (可参考git官网 https://github.com/pyenv)
    1) 首选通过pyenv_installer来安装。命令如下:
curl https://pyenv.run | bash
  1. 若安装失败,可考虑手动安装
#安装依赖
yum install gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel xz-devel

#拉取源码编译
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
cd ~/.pyenv && src/configure && make -C src

#配置环境变量(~/.bashrc)
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
souce ~/.bashrc

#验证生效
pyenv --version

2. 安装pyenv-virtualenv 插件 (可参考git官网:https://github.com/pyenv/pyenv-virtualenv)
pyenv自动安装时, pyenv virtualenv 似乎已经安装好
```shell
##拉取源码
git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv

## 添加到bashrc
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc

  1. 使用
pyenv --version  #查看pyenv 的版本
pyenv versions #查看已安装的python版本
pyenv install --list #查看可安装的python版本
pyenv install x.x.x #安装python版本
pyenv uninstall x.x.x   # 删除python版本

pyenv virtualenv x.x.x   ${env-name}  #创建python虚拟环境
  1. pybind11 cpp cmake配置例子
#c++ -O3 -Wall -shared -std=c++11 -fPIC $(python3 -m pybind11 --includes) spam.cpp -o spam.so   #mannal
cmake_minimum_required(VERSION 3.0.0)
project(spam VERSION 0.1.0)

# set(CMAKE_CXX_STANDARD 11)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(CMAKE_CXX_FLAGS "-Wall")
set(CMAKE_CXX_FLAGS "-fPIC")
set(CMAKE_CXX_FLAGS "-std=c++11")

include(CTest)
enable_testing()


#python  package find
set(Python3_ROOT_DIR  "/home/xxx/.pyenv/versions/3.9-dev")   # 设定python更目录  需要cmake版本足够高,最好 > 3.15,以下find 相同
find_package (Python3 COMPONENTS Interpreter Development  REQUIRED)
find_package(pybind11  CONFIG  PATHS "/home/xxx/.pyenv/versions/env39dev/lib64/python3.9/site-packages/pybind11" REQUIRE)

message(${Python3_FOUND})
message(${pybind11_FOUND})

# add_subdirectory()

include_directories(${pybind11_INCLUDE_DIRS})

# set(CMAKE_SHARED_LIBRARY_PREFIX "")
# set(CMAKE_STATIC_LIBRARY_PREFIX "")
add_library(spam SHARED spam.cpp)
set_target_properties(spam PROPERTIES SUFFIX  "_add")
# set_target_properties(spam PROPERTIES RELEASE_PREFIX "")   # 可执行文件后缀
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值