在FreeBSD 8.1上安装Python

问题描述 投票:1回答:4

所以我使用以下命令在我的FreeBSD盒子上安装了python:

#portsnap fetch

#portsnap extract

#portsnap update

#cd /usr/ports/lang/python32

#make install clean

一切正常,我没有收到错误消息。安装进展顺利。但是当我在shell中键入python时,我得到:

python: Command not found.

救命?

python python-3.x freebsd
4个回答
4
投票

你可以搜索它:

find /usr/bin /bin/ /usr/local/bin -iname 'python*'

6
投票

我知道这是一个老帖子,但仍然没有完全回答。

来自guettli的接受回答的命令将返回如下内容:

$ find /usr/bin /bin/ /usr/local/bin -iname 'python*'
/usr/local/bin/python2.7
/usr/local/bin/python2.7-config
/usr/local/bin/python3.6m-config
/usr/local/bin/python3.6
/usr/local/bin/python3.6-config
/usr/local/bin/python3.6m

这意味着要输入python shell,您需要输入“python3.6”。

要使用“python”,您可以创建一个符号链接:

ln -s /usr/local/bin/python3.6 /usr/local/bin/python

如果您没有创建符号链接的权限(或者您只是不想),您也可以通过为您的用户编辑默认shell dotfile来创建别名,例如: 〜/ .tcshrc添加以下行:

echo 'alias python python3.6' >> ~/.tcshrc

在重新登录shell或“重新加载”.tcshrc中的更改之前,Alias不会自动在当前会话中工作:

source ~/.tcshrc

通过编辑dotfile,别名将成为永久性的。 要仅为当前会话创建临时别名,您可以直接在shell中设置别名:

alias python python3.6

注销后临时别名将消失,但在当前会话中可以“unaliased”:

unalias python

1
投票

如果输入完整路径(/ usr / local / bin / python)怎么办?你可能忘了键入“rehash”。您的shell需要重新构建PATH中可用的程序缓存。


1
投票

嗯,但.bashrc是错误的选择,因为问题仍然存在..请参阅bash(1)联机帮助页

当启动不是登录shell的交互式shell时,如果该文件存在,bash将从〜/ .bashrc读取并执行命令。

和..

如果shell是交互式的,请不要读取和执行个人初始化文件〜/ .bashrc。如果以sh调用shell,则默认情况下此选项处于启用状态。

好的解决方案

echo 'alias python=python2.7' >>~/.bash_profile

更新:根据FreeBSD发行说明的真正解决方案

pkg install lang/python

which python /usr/local/bin/python

© www.soinside.com 2019 - 2024. All rights reserved.