[MacPorts] #31315: npm: ENOENT, No such file or directory 'ronn.js'
MacPorts
noreply at macports.org
Thu Sep 22 01:49:28 PDT 2011
#31315: npm: ENOENT, No such file or directory 'ronn.js'
--------------------------------+-------------------------------------------
Reporter: matt@… | Owner: ciserlohn@…
Type: defect | Status: closed
Priority: Normal | Milestone:
Component: ports | Version: 2.0.3
Resolution: fixed | Keywords:
Port: npm |
--------------------------------+-------------------------------------------
Comment(by ciserlohn@…):
Replying to [comment:3 ryandesign@…]:
>
> > He asked why you need to patch it for a Mac when it's developed on a
Mac.
>
> You and he are welcome to examine the patchfile to see what we're doing:
>
> [browser:trunk/dports/devel/npm/files/patch-scripts-doc-
build.sh?rev=84119]
>
> As you see we're only patching the line that determines the version of
npm. The original source runs "`npm -v`" to do that; that can't possibly
work in the context of an in-progress MacPorts build since npm won't have
been installed in its final location by that time and so won't be in PATH
yet.
Exactly.
> > also unclear as to why it's running "make" rather than "make install"
but maybe they do that in a second step or something"
>
> Yes, that's exactly how MacPorts works. The build phase runs "make". The
subsequent destroot phase (which you didn't get to with npm because the
build phase failed) would run "make install" (for most ports; the npm port
in fact overrides this usual destroot and writes its own; again I don't
know why "make install" was not sufficient.)
In case of npm "make install" doesn't respect DESTROOT but rather installs
npm right next to the node.js installation. So I had to override the
destroot phase in the portfile.
--
Ticket URL: <https://trac.macports.org/ticket/31315#comment:23>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list