鱼C论坛

 找回密码
 立即注册
查看: 557|回复: 9

[已解决]这种库里没有setup.py, git clone到本地后,该怎么安装呢?

[复制链接]
发表于 2024-1-8 17:50:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
https://github.com/Vaibhavs10/insanely-fast-whisper

pip.jpg

仍然是以下步骤吗?如果是,那pip install . 做了哪些工作?
git clone repo
pip install .
最佳答案
2024-1-9 21:56:28
blackantt 发表于 2024-1-8 18:05
当前目录里没有  setup.py 呀。

不一定要有setup.py,没有setup.py的话pip会解析pyproject.toml
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-1-8 17:50:31 | 显示全部楼层
对于没有setup.py文件的库,你可以使用以下步骤将其安装到本地:

1. 首先,你需要将库的代码克隆到你的本地。可以使用git clone命令完成这一步骤:
  1. git clone https://github.com/Vaibhavs10/insanely-fast-whisper.git
复制代码


2. 进入到库的目录中:
  1. cd insanely-fast-whisper
复制代码


3. 接下来,你可以尝试运行pip install .命令来安装该库:
  1. pip install .
复制代码


这个命令会将当前目录作为一个包进行安装,其中的点(.)表示当前目录。它会在你的Python环境中安装所需的依赖项,并将该库添加到可用的模块列表中。

请注意,pip install命令还可以接受其他参数,用于控制安装行为。例如,你可以使用--editable参数来创建一个可编辑的安装,这样你就可以在不重新安装的情况下进行修改和测试。

希望这个解答能帮到你!如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-1-8 17:52:25 | 显示全部楼层
“这个命令会将当前目录作为一个包进行安装”  是啥意思?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-8 17:52:35 | 显示全部楼层
blackantt 发表于 2024-01-08 17:52
“这个命令会将当前目录作为一个包进行安装”  是啥意 ...


"将当前目录作为一个包进行安装"的意思是将当前目录中的代码文件作为一个可用的Python包进行安装。当你执行pip install .命令时,它会在当前目录中查找setup.py文件,并根据其中的配置信息进行安装。

在Python中,一个包通常是一个包含多个模块文件的文件夹,可以被其他程序导入和使用。安装一个库或包时,Python会将其放置在特定的目录下(例如site-packages目录),以便其他Python程序可以轻松地找到并导入这些包。

当你运行pip install .时,它会读取当前目录中的setup.py文件,并根据其中的信息来确定要安装的包的名称、版本、依赖项等等。然后,它会将该包复制到Python的包安装目录中,使其成为全局可用的包。

因此,通过这种方式,你可以将git克隆到本地的库安装到Python环境中,使得你可以在自己的代码中导入和使用该库。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-1-8 18:05:35 | 显示全部楼层
当前目录里没有  setup.py 呀。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-8 18:05:50 | 显示全部楼层
blackantt 发表于 2024-01-08 18:05
当前目录里没有  setup.py 呀。


如果当前目录中没有setup.py文件,那么这个库可能不符合标准的Python包结构。在这种情况下,你可以尝试使用其他安装方法,如手动复制文件或通过sys.path进行导入。

手动复制文件方法:
1. 打开库的GitHub页面。
2. 在页面上找到该库的源代码,并通过点击"Download"按钮将其下载到本地。
3. 解压下载的文件,得到源代码文件夹。
4. 打开你的Python项目或环境的文件夹(如site-packages目录)。
5. 将库的源代码文件夹中的文件复制到Python项目或环境的文件夹中。

通过sys.path导入方法:
1. 打开库的GitHub页面。
2. 点击页面上的"Clone or download"按钮,选择"Download ZIP"将库的代码下载到本地。
3. 解压下载的ZIP文件,得到源代码文件夹。
4. 在你的Python代码中添加以下代码,将源代码文件夹的路径添加到sys.path中:
  1. import sys
  2. sys.path.append('/path/to/insanely-fast-whisper180891')
复制代码

5. 现在你可以通过import语句导入库的模块并使用它了。

请注意,这些方法是在缺少setup.py文件的情况下的备选方法,当然,最好的方式还是使用有setup.py文件的库,因为它们提供了更简单和标准的安装方式。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-1-9 21:56:28 | 显示全部楼层    本楼为最佳答案   
blackantt 发表于 2024-1-8 18:05
当前目录里没有  setup.py 呀。

不一定要有setup.py,没有setup.py的话pip会解析pyproject.toml
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-1-10 07:33:30 | 显示全部楼层
isdkz 发表于 2024-1-9 21:56
不一定要有setup.py,没有setup.py的话pip会解析pyproject.toml

就等着你呢。 根据提示,找到一个资料,留念。https://blog.csdn.net/qq_33934427/article/details/129152909
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-1-10 07:43:23 | 显示全部楼层
blackantt 发表于 2024-1-10 07:33
就等着你呢。 根据提示,找到一个资料,留念。https://blog.csdn.net/qq_33934427/article/details/12915 ...

可以看到不同的项目,它们的 setup.py 文件真的是一点都不像。原因就是因为以前的规范比较松散,可以理解成只规定了要调用 setuptools.setup 这个函数。

用代码来体现配置的问题还不只是这个,CI/CD 软件要去检查 setup 函数传了什么参数,更加要命的是,如果没有传参数的情况下,还要配置 CI/CD 他们去哪里文件解析参数。

总的来讲用代码来体现软件项目的配置信息,对开发者和 CI/CD 都不太友好。比较现代的方案是通过配置文件来声明配置,pyproject.toml 正是这么一个产物。

pyproject.toml 实践

之前用 setup 的时候不就是因为规范太松散了,每个项目的结构都五花八门。现在好了,pyproject.toml 它在 Python 项目的结构上都有一个推荐风式了。假设我们软件包的名字是 npts ,那么整个项目的目录结构在推荐的风格下看起来应该像这样。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-1-10 09:04:54 | 显示全部楼层
isdkz 发表于 2024-1-9 21:56
不一定要有setup.py,没有setup.py的话pip会解析pyproject.toml

你把FishC打败了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-22 07:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表