Directorio artículo
Versión del sistema: ubuntu16.04
Actualización python3.5 a python3.7
descargar
wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1rc2.tgz
descompresión
tar zxvf Python-3.7.1rc2.tgz
cd Python-3.7.1rc2
Compilar
./configure
sudo make
sudo make install
intérprete Python3.7 ir primera posición, por lo general
/usr/local/bin/python3.7
Eliminar la conexión original suave
rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3
Añadir enlace blando python3
ln -s /usr/local/bin/python3.7 /usr/bin/python3
#添加 pip3 的软链接
ln -s /usr/local/bin/pip3.7 /usr/bin/pip3
notas de emisión
Uno de los problemas: Error ModuleNotFoundError: Sin módulo llamado '' _ctypes
solución
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus
sudo apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev
sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev
sudo apt-get install libssl-dev openssl
sudo apt-get install libffi-dev
问题 二: zipimport.ZipImportError: puede descomprimir datos no; zlib no disponible
soluciones sudo apt-get install zlib
Tercera pregunta: manejo de excepciones requiere ubicaciones TLS / SSL que aparecen
sudo apt-get install gcc libffi-devel zlib* openssl-devel
A continuación, puede volver a editar y python7 instalación
Crear un entorno virtual que se puede ejecutar al mismo tiempo python3 python2 compatibles
Siguiendo en Ubuntu 16.04 x64 y prueba cinética por ROS en
realidad, sólo tiene que añadir python3 tinglado en ficheros .py, el tiempo rosrun llamará automáticamente al intérprete apropiado:
#!/usr/bin/env python3
Sin embargo, al instalar ros-cinético-escritorio con todas, sino que también lo hizo la instalación del paquete relacionado no python3, es necesario instalarlo manualmente.
Creación de un entorno virtualenv
sudo pip install virtualenv
# 我在这使用的是Python3.6rc2,指向系统已安装的python3也可以。
virtualenv -p /usr/bin/python3 venv
source venv/bin/activate
python -V
# Python 3.6.0rc2
virtualenv -p /usr/bin/python3 venv
Este comando crea una carpeta Venv, lo puso a ROS espacio de trabajo, cuando la fuente de lo que podemos utilizar
como se muestra a continuación
preguntas : la aplicación del comando anterior es probable que encuentre
problemas a: Pitón ModuleNotFoundError: ' CommandNotFound '
soluciones en la siguiente:
Compruebe el archivo / usr / lib no encontrado comando /, que está tratando de encontrar el módulo
CommandNotFound, que no se suministra con python3.7 pero lo hace con
Ubuntu en el directorio / usr / lib / python3 / dist-paquetes. Lo que tenemos que
hacer es añadir el directorio a la ruta de importación de Python:
vi .bashrc (o .profile) Añadir una línea de
PYTHONPATH exportación = $ PYTHONPATH: /usr/local/lib/python3.7/site-packages: / usr / lib / python3 / dist-paquetes
Tener en cuenta que puede que tenga que cambiar los
/usr/local/lib/python3.7/site-packages a su propio directorio. salida
y .bashrc fuente (o .profile)
Segundo problema: Ningún módulo named'lsb_release '
determinación en la siguiente:
python3.7 después de las instrucciones de instalación
Ningún módulo named'lsb_release '
Modificar / usr / bin / lsb_release
#! / usr / bin / python3.5m -ES
NOTA
source ros_test/devel/setup.zsh
# 如没有使用virtualenv,下一语句则跳过
source rosenv/bin/activate
rosrun py3test pytest.py//-如果要兼容python2,此语句不要执行
Tenga en cuenta que, virtualenv utiliza incluso en, puntos de pitón a python3, pero no tan largo como archivo python3 tinglado complemento .py, rosrun todavía llama la python2. Esto puede ser fácilmente compatibles paquete python2 del original.