Nodejs co-urllib包安装问题

Nodejs co-urllib包安装问题

有兴趣看看koa,下载个项目,npm install 然后就卡住了。完全没有头绪为神马 安装co-urllib的时候 提示我 make clean install …make 找不到 这。。我win7系统,不是应该是默认用node-gyp么 不是很懂,求指点 还是说有些包只能在linux下安装么

11 回复

当然可以,以下是关于“Nodejs co-urllib包安装问题”的详细解答:


Nodejs co-urllib包安装问题

问题描述

在尝试使用npm安装co-urllib时遇到错误,提示make clean install ... make 找不到。这似乎是因为你的Windows 7系统中缺少某些必要的工具或依赖项。

解决方案

  1. 安装Visual Studio Build Tools

    • co-urllib可能需要编译C++代码。在Windows上,这通常需要Microsoft Visual C++的构建工具。
    • 你可以通过以下步骤安装:
  2. 安装Python

    • co-urllib的安装过程可能会使用Python脚本。确保你已经安装了Python,并且版本不低于2.7.9(建议使用3.x版本)。
    • 安装完成后,确保将Python添加到系统的PATH环境变量中。
    • 检查Python是否正确安装:
      python --version
      
  3. 安装node-gyp

    • node-gyp是一个用于编译Node.js的原生插件的工具。如果你还没有安装它,可以通过npm全局安装:
      npm install -g node-gyp
      
  4. 配置node-gyp

    • 确保node-gyp能够找到正确的Python版本。你可以通过以下命令设置:
      node-gyp configure --python <path-to-python>
      
    • 例如:
      node-gyp configure --python C:\Python39\python.exe
      
  5. 重新安装co-urllib

    • 完成上述步骤后,再次尝试安装co-urllib
      npm install co-urllib
      

示例代码

假设你已经成功解决了安装问题,下面是一个简单的示例代码来展示如何使用co-urllib

const co = require('co');
const urllib = require('co-urllib');

function* fetchData() {
    const url = 'http://example.com';
    const res = yield urllib.request(url);
    console.log(res.status); // 输出响应状态码
    console.log(res.data.toString()); // 输出响应数据
}

co(fetchData);

总结

以上步骤应该能帮助你在Windows 7系统上解决co-urllib的安装问题。如果仍然遇到问题,请检查是否有其他依赖项未安装,或者查看npm安装日志以获取更多详细信息。希望这些信息对你有所帮助!


囧了. 这是个问题,忘记 windows 没有 make 了,我想想有没有办法

安装Cygwin 中的make即可~

感动。竟然有大神回帖 btw,win7下用cygwin总是有些奇奇怪怪的问题 我安装Cygwin 中的make以后,重新npm install 无法定位问题,感觉像是make过程中某些命令win7不支持

133 info co-urllib@0.2.1 Failed to exec prepublish script 134 error addLocalDirectory Could not pack “c:\Users\bidlink\AppData\Local\Temp\npm-6624-maStP0Ka\co-urllib-0.2.11397783219238-0.5562195857055485\package” to "C:\Users\bidlink\AppData\Roaming\npm-cache\co-urllib\0.2.1\package.tgz" 135 silly lockFile a0935bc1-lib-download-co-urllib-0-2-1-tgz http://r.cnpmjs.org/co-urllib/download/co-urllib-0.2.1.tgz 136 silly lockFile a0935bc1-lib-download-co-urllib-0-2-1-tgz http://r.cnpmjs.org/co-urllib/download/co-urllib-0.2.1.tgz 137 silly lockFile dc059dd2-co-urllib-0-2-1 co-urllib@0.2.1 138 silly lockFile dc059dd2-co-urllib-0-2-1 co-urllib@0.2.1 139 silly lockFile df4b7391-co-urllib co-urllib@* 140 silly lockFile df4b7391-co-urllib co-urllib@* 141 error co-urllib@0.2.1 prepublish: make clean build 141 error Exit status 2 142 error Failed at the co-urllib@0.2.1 prepublish script. 142 error This is most likely a problem with the co-urllib package, 142 error not with npm itself. 142 error Tell the author that this fails on your system: 142 error make clean build 142 error You can get their info via: 142 error npm owner ls co-urllib 142 error There is likely additional logging output above. 143 error System Windows_NT 6.1.7601 144 error command “D:\nodejs\\node.exe” “D:\nodejs\node_modules\npm\bin\npm-cli.js” "install" 145 error cwd C:\Users\bidlink\Desktop\node\koa\examples\cnpmjs.org 146 error node -v v0.11.9 147 error npm -v 1.3.15 148 error code ELIFECYCLE 149 verbose exit [ 1, true ]

看了下co-urllib的Makefile,里面有不少linux下的命令,估计得安装齐那些命令才行~ 例如:rm,mkdir 等那些命令~

这个时候得上grunt …

现在流行gulp了~

这个。。其实我也尝试了下 感觉都安装了 可能命令执行效果有些不一样。比如他的mkdir -p build 在cmd里面执行会生成 -p 和build两个文件夹

哦。仔细再看了一遍。。 SRC = $(wildcard lib/*.js) BUILD = $(subst lib/,build/,$(SRC)) subst 有但是 这个wildcard我找不到命令行 cygwin也搜索不到。好了。可以放弃治疗了??

我在MinGW32下安装成功~

为啥 install 时会 exec prepublish script?

根据你的描述,你在 Windows 系统上尝试安装 co-urllib 包时遇到了一些问题。这个问题通常是因为 co-urllib 是一个基于 C++ 的模块,需要编译。Windows 上默认使用 node-gyp 来进行编译,但有时可能会缺少必要的工具。

以下是一些解决步骤:

  1. 确保安装了 Pythonnode-gyp 需要 Python。你可以从 Python 官网 下载并安装 Python 2.7.x 或 3.x 版本。

  2. 安装 Visual Studio Build Tools:你需要安装 Visual Studio 的构建工具,这包含了编译 C++ 代码所需的工具。你可以通过运行以下命令来安装:

    npm install --global windows-build-tools
    

    这个工具会自动安装 Visual Studio Build Tools 和其他必要的依赖项。

  3. 配置环境变量:确保 PYTHON 环境变量指向你安装的 Python 解释器路径,并且 PATH 中包含 node-gypwindows-build-tools 所需的路径。

  4. 清理缓存并重新安装

    npm cache clean --force
    npm install
    
  5. 尝试安装特定版本:如果上述步骤仍然无法解决问题,可以尝试安装特定版本的 co-urllib 包,可能是某些新版本与你的系统不兼容。

    npm install co-urllib@x.y.z
    

    其中 x.y.z 是具体的版本号。

如果这些步骤仍然无法解决问题,可能需要进一步检查错误日志或查看 co-urllib 的文档是否有特定的要求。希望这些步骤能帮助你解决问题!

回到顶部