Вы наверняка слышали о проблеме установки IDE на Mac OS X. Позже разработчики подсуетились и сделали все таки процесс установки IDE Cloud9 легким и понятным. Но вот сегодня решил установить новую версию IDE на чистую систему.
Поставил последнюю версию Node.js 0.8.8 и начал делать все по инструкции, как описано на главной странице GitHub проекта, в надежде, что вот, настанет момент и смогу насладиться программированием на node.js. Как бы не так.
Ход моих действие по установке Cloud9 IDE:
- Установил глобально sm менеджер.
- Склонировал репозиторий посредством git clone.
- И после выполнения команды sm install, увидел в guake описание ошибки:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
*
ERROR *
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
Error
:
NPM
error
:
npm
WARN
package
.
json
packager
@
0.1.0
No
README
.
md
file
found
!
npm
http
GET
https
:
//registry.npmjs.org/libxml/0.0.6
npm
http
GET
https
:
//registry.npmjs.org/asyncjs
npm
http
304
https
:
//registry.npmjs.org/asyncjs
npm
http
304
https
:
//registry.npmjs.org/libxml/0.0.6
&
gt
;
libxml
@
0.0.6
preinstall
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
node_modules
/
libxml
&
gt
;
.
/
build
.
sh
Checking
for
program
g
++
or
c
++
:
/
usr
/
bin
/
g
++
Checking
for
program
cpp
:
/
usr
/
bin
/
cpp
Checking
for
program
ar
:
/
usr
/
bin
/
ar
Checking
for
program
ranlib
:
/
usr
/
bin
/
ranlib
Checking
for
g
++
:
ok
Checking
for
node
path
:
not
found
Checking
for
node
prefix
:
ok
/
usr
/
local
`
configure
`
finished
successfully
(
0.041s
)
Waf
:
Entering
directory
`
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
node_modules
/
libxml
/
support
/
o3
/
build
`
[
1
/
3
]
cxx
:
hosts
/
node
-
o3
/
sh_node
.
cc
-
&
gt
;
build
/
Release
/
hosts
/
node
-
o3
/
sh_node_1
.
o
16
:
35
:
31
runner
system
command
-
&
gt
;
[
`
/
usr
/
bin
/
g
++
`
,
`
-
g
`
,
`
-
O3
`
,
`
-
msse2
`
,
`
-
ffast
-
math
`
,
`
-
fPIC
`
,
`
-
DPIC
`
,
`
-
D_LARGEFILE_SOURCE
`
,
`
-
D_FILE_OFFSET_BITS
=
64
`
,
`
-
D_GNU_SOURCE
`
,
`
-
IRelease
/
include
`
,
`
-
I
.
.
/
include
`
,
`
-
IRelease
/
hosts
`
,
`
-
I
.
.
/
hosts
`
,
`
-
IRelease
/
modules
`
,
`
-
I
.
.
/
modules
`
,
`
-
IRelease
/
deps
`
,
`
-
I
.
.
/
deps
`
,
`
-
I
/
usr
/
local
/
include
/
node
`
,
`
.
.
/
hosts
/
node
-
o3
/
sh_node
.
cc
`
,
`
-
c
`
,
`
-
o
`
,
`
Release
/
hosts
/
node
-
o3
/
sh_node_1
.
o
`
]
[
2
/
3
]
cxx
:
hosts
/
node
-
o3
/
sh_node_libs
.
cc
-
&
gt
;
build
/
Release
/
hosts
/
node
-
o3
/
sh_node_libs_1
.
o
16
:
35
:
32
runner
system
command
-
&
gt
;
[
`
/
usr
/
bin
/
g
++
`
,
`
-
g
`
,
`
-
O3
`
,
`
-
msse2
`
,
`
-
ffast
-
math
`
,
`
-
fPIC
`
,
`
-
DPIC
`
,
`
-
D_LARGEFILE_SOURCE
`
,
`
-
D_FILE_OFFSET_BITS
=
64
`
,
`
-
D_GNU_SOURCE
`
,
`
-
IRelease
/
include
`
,
`
-
I
.
.
/
include
`
,
`
-
IRelease
/
hosts
`
,
`
-
I
.
.
/
hosts
`
,
`
-
IRelease
/
modules
`
,
`
-
I
.
.
/
modules
`
,
`
-
IRelease
/
deps
`
,
`
-
I
.
.
/
deps
`
,
`
-
I
/
usr
/
local
/
include
/
node
`
,
`
.
.
/
hosts
/
node
-
o3
/
sh_node_libs
.
cc
`
,
`
-
c
`
,
`
-
o
`
,
`
Release
/
hosts
/
node
-
o3
/
sh_node_libs_1
.
o
`
]
[
3
/
3
]
cxx_link
:
build
/
Release
/
hosts
/
node
-
o3
/
sh_node_1
.
o
build
/
Release
/
hosts
/
node
-
o3
/
sh_node_libs_1
.
o
-
&
gt
;
build
/
Release
/
o3
.
node
16
:
36
:
15
runner
system
command
-
&
gt
;
[
`
/
usr
/
bin
/
g
++
`
,
`
Release
/
hosts
/
node
-
o3
/
sh_node_1
.
o
`
,
`
Release
/
hosts
/
node
-
o3
/
sh_node_libs_1
.
o
`
,
`
-
o
`
,
`
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
node_modules
/
libxml
/
support
/
o3
/
build
/
Release
/
o3
.
node
`
,
`
-
shared
`
,
`
-
L
/
usr
/
local
/
lib
`
,
`
-
Wl
,
-
Bdynamic
`
,
`
-
lxml2
`
]
/
usr
/
bin
/
ld
:
cannot
find
-
lxml2
collect2
:
выполнение
ld
завершилось с кодом возврата
1
Waf
:
Leaving
directory
`
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
node_modules
/
libxml
/
support
/
o3
/
build
`
Build
failed
:
-
&
gt
;
task
failed
(
err
#1):
{
task
:
cxx_link
sh_node_1
.
o
,
sh_node_libs_1
.
o
-
&
gt
;
o3
.
node
}
File
"/usr/local/bin/node-waf"
,
line
16
,
in
Scripting
.
prepare
(
t
,
os
.
getcwd
(
)
,
VERSION
,
wafdir
)
File
"/usr/local/bin/../lib/node/wafadmin/Scripting.py"
,
line
147
,
in
prepare
error
(
str
(
e
)
)
cp
:
не удалось выполнить
stat
для
"build/Release/o3.node"
:
Нет такого файла или каталога
npm
ERR
!
libxml
@
0.0.6
preinstall
:
`
.
/
build
.
sh
`
npm
ERR
!
`
sh
"-c"
"./build.sh"
`
failed
with
1
npm
ERR
!
npm
ERR
!
Failed
at
the
libxml
@
0.0.6
preinstall
script
.
npm
ERR
!
This
is
most
likely
a
problem
with
the
libxml
package
,
npm
ERR
!
not
with
npm
itself
.
npm
ERR
!
Tell
the
author
that
this
fails
on
your
system
:
npm
ERR
!
.
/
build
.
sh
npm
ERR
!
You
can
get
their
info
via
:
npm
ERR
!
npm
owner
ls
libxml
npm
ERR
!
There
is
likely
additional
logging
output
above
.
npm
ERR
!
System
Linux
3.2.0
-
29
-
generic
npm
ERR
!
command
"/usr/local/bin/node"
"/usr/local/bin/npm"
"install"
"."
"--production"
npm
ERR
!
cwd
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
npm
ERR
!
node
-
v
v0
.
8.8
npm
ERR
!
npm
-
v
1.1.59
npm
ERR
!
code
ELIFECYCLE
npm
ERR
!
npm
ERR
!
Additional
logging
details
can
be
found
in
:
npm
ERR
!
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
npm
-
debug
.
log
npm
ERR
!
not
ok
code
0
In
package
:
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
*
File
:
false
@
false
*
Stack
:
*
Error
:
NPM
error
:
npm
WARN
package
.
json
packager
@
0.1.0
No
README
.
md
file
found
!
*
npm
http
GET
https
:
//registry.npmjs.org/libxml/0.0.6
*
npm
http
GET
https
:
//registry.npmjs.org/asyncjs
*
npm
http
304
https
:
//registry.npmjs.org/asyncjs
*
npm
http
304
https
:
//registry.npmjs.org/libxml/0.0.6
*
*
&
gt
;
libxml
@
0.0.6
preinstall
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
node_modules
/
libxml
*
&
gt
;
.
/
build
.
sh
*
*
Checking
for
program
g
++
or
c
++
:
/
usr
/
bin
/
g
++
*
Checking
for
program
cpp
:
/
usr
/
bin
/
cpp
*
Checking
for
program
ar
:
/
usr
/
bin
/
ar
*
Checking
for
program
ranlib
:
/
usr
/
bin
/
ranlib
*
Checking
for
g
++
:
ok
*
Checking
for
node
path
:
not
found
*
Checking
for
node
prefix
:
ok
/
usr
/
local
*
`
configure
`
finished
successfully
(
0.041s
)
*
Waf
:
Entering
directory
`
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
node_modules
/
libxml
/
support
/
o3
/
build
`
*
[
1
/
3
]
cxx
:
hosts
/
node
-
o3
/
sh_node
.
cc
-
&
gt
;
build
/
Release
/
hosts
/
node
-
o3
/
sh_node_1
.
o
*
16
:
35
:
31
runner
system
command
-
&
gt
;
[
`
/
usr
/
bin
/
g
++
`
,
`
-
g
`
,
`
-
O3
`
,
`
-
msse2
`
,
`
-
ffast
-
math
`
,
`
-
fPIC
`
,
`
-
DPIC
`
,
`
-
D_LARGEFILE_SOURCE
`
,
`
-
D_FILE_OFFSET_BITS
=
64
`
,
`
-
D_GNU_SOURCE
`
,
`
-
IRelease
/
include
`
,
`
-
I
.
.
/
include
`
,
`
-
IRelease
/
hosts
`
,
`
-
I
.
.
/
hosts
`
,
`
-
IRelease
/
modules
`
,
`
-
I
.
.
/
modules
`
,
`
-
IRelease
/
deps
`
,
`
-
I
.
.
/
deps
`
,
`
-
I
/
usr
/
local
/
include
/
node
`
,
`
.
.
/
hosts
/
node
-
o3
/
sh_node
.
cc
`
,
`
-
c
`
,
`
-
o
`
,
`
Release
/
hosts
/
node
-
o3
/
sh_node_1
.
o
`
]
*
[
2
/
3
]
cxx
:
hosts
/
node
-
o3
/
sh_node_libs
.
cc
-
&
gt
;
build
/
Release
/
hosts
/
node
-
o3
/
sh_node_libs_1
.
o
*
16
:
35
:
32
runner
system
command
-
&
gt
;
[
`
/
usr
/
bin
/
g
++
`
,
`
-
g
`
,
`
-
O3
`
,
`
-
msse2
`
,
`
-
ffast
-
math
`
,
`
-
fPIC
`
,
`
-
DPIC
`
,
`
-
D_LARGEFILE_SOURCE
`
,
`
-
D_FILE_OFFSET_BITS
=
64
`
,
`
-
D_GNU_SOURCE
`
,
`
-
IRelease
/
include
`
,
`
-
I
.
.
/
include
`
,
`
-
IRelease
/
hosts
`
,
`
-
I
.
.
/
hosts
`
,
`
-
IRelease
/
modules
`
,
`
-
I
.
.
/
modules
`
,
`
-
IRelease
/
deps
`
,
`
-
I
.
.
/
deps
`
,
`
-
I
/
usr
/
local
/
include
/
node
`
,
`
.
.
/
hosts
/
node
-
o3
/
sh_node_libs
.
cc
`
,
`
-
c
`
,
`
-
o
`
,
`
Release
/
hosts
/
node
-
o3
/
sh_node_libs_1
.
o
`
]
*
[
3
/
3
]
cxx_link
:
build
/
Release
/
hosts
/
node
-
o3
/
sh_node_1
.
o
build
/
Release
/
hosts
/
node
-
o3
/
sh_node_libs_1
.
o
-
&
gt
;
build
/
Release
/
o3
.
node
*
16
:
36
:
15
runner
system
command
-
&
gt
;
[
`
/
usr
/
bin
/
g
++
`
,
`
Release
/
hosts
/
node
-
o3
/
sh_node_1
.
o
`
,
`
Release
/
hosts
/
node
-
o3
/
sh_node_libs_1
.
o
`
,
`
-
o
`
,
`
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
node_modules
/
libxml
/
support
/
o3
/
build
/
Release
/
o3
.
node
`
,
`
-
shared
`
,
`
-
L
/
usr
/
local
/
lib
`
,
`
-
Wl
,
-
Bdynamic
`
,
`
-
lxml2
`
]
*
/
usr
/
bin
/
ld
:
cannot
find
-
lxml2
*
collect2
:
выполнение
ld
завершилось с кодом возврата
1
*
Waf
:
Leaving
directory
`
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
node_modules
/
libxml
/
support
/
o3
/
build
`
*
Build
failed
:
-
&
gt
;
task
failed
(
err
#1):
*
{
task
:
cxx_link
sh_node_1
.
o
,
sh_node_libs_1
.
o
-
&
gt
;
o3
.
node
}
*
File
"/usr/local/bin/node-waf"
,
line
16
,
in
*
Scripting
.
prepare
(
t
,
os
.
getcwd
(
)
,
VERSION
,
wafdir
)
*
File
"/usr/local/bin/../lib/node/wafadmin/Scripting.py"
,
line
147
,
in
prepare
*
error
(
str
(
e
)
)
*
cp
:
не удалось выполнить
stat
для
"build/Release/o3.node"
:
Нет такого файла или каталога
*
npm
ERR
!
libxml
@
0.0.6
preinstall
:
`
.
/
build
.
sh
`
*
npm
ERR
!
`
sh
"-c"
"./build.sh"
`
failed
with
1
*
npm
ERR
!
*
npm
ERR
!
Failed
at
the
libxml
@
0.0.6
preinstall
script
.
*
npm
ERR
!
This
is
most
likely
a
problem
with
the
libxml
package
,
*
npm
ERR
!
not
with
npm
itself
.
*
npm
ERR
!
Tell
the
author
that
this
fails
on
your
system
:
*
npm
ERR
!
.
/
build
.
sh
*
npm
ERR
!
You
can
get
their
info
via
:
*
npm
ERR
!
npm
owner
ls
libxml
*
npm
ERR
!
There
is
likely
additional
logging
output
above
.
*
*
npm
ERR
!
System
Linux
3.2.0
-
29
-
generic
*
npm
ERR
!
command
"/usr/local/bin/node"
"/usr/local/bin/npm"
"install"
"."
"--production"
*
npm
ERR
!
cwd
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
*
npm
ERR
!
node
-
v
v0
.
8.8
*
npm
ERR
!
npm
-
v
1.1.59
*
npm
ERR
!
code
ELIFECYCLE
*
npm
ERR
!
*
npm
ERR
!
Additional
logging
details
can
be
found
in
:
*
npm
ERR
!
/
home
/
cyberlight
/
.
sourcemint
/
install
-
cache
/
https
/
github
.
com
/
ajaxorg
/
packager
/
tarball
/
01597eacd22ad660977d43c44b4001107117b8ea
/
npm
-
debug
.
log
*
npm
ERR
!
not
ok
code
0
*
In
package
:
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
*
at
ChildProcess
.
(
/
usr
/
local
/
lib
/
node_modules
/
sm
/
node_modules
/
sourcemint
-
pm
-
sm
/
node_modules
/
sourcemint
-
pm
-
npm
/
lib
/
npm
.
js
:
77
:
29
)
*
at
ChildProcess
.
EventEmitter
.
emit
(
events
.
js
:
91
:
17
)
*
at
Process
.
_handle
.
onexit
(
child_process
.
js
:
674
:
10
)
*
ERROR *
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
|
После этого я стал сомневаться в том, что установка пройдет нормально.
Итак, я получил сообщение об ошибке, в котором было видно, что отсутствуют некоторые каталоги. В частности build/Release/o3.node. И тогда по прошлому опыту, я решил, что нужно попытать счастье, использовав команду родного npm. Произвел запуск команды npm install и получил длинный листинг в консоли quake, свидетельствующий об успешном завершении установки необходимых пакетов. Мои надежды на npm менеджер, оправдались!
Развязка
Под впечатлением, что теперь все позади и я смогу запустить IDE, в консоли набираю команду bin/cloud9.sh! И тут меня постигло разочарование! Снова ошибка!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
cyberlight
@
cyberlight
-
dt
:
~
/
test
/
cloud9ide
/
cloud9
$
bin
/
cloud9
.
sh
mkdir
-
p
plugins
-
client
/
lib
.
ace
/
www
/
worker
rm
-
rf
/
tmp
/
c9_worker_build
mkdir
-
p
/
tmp
/
c9_worker_build
/
ext
ln
-
s
`
pwd
`
/
plugins
-
client
/
ext
.
language
/
tmp
/
c9_worker_build
/
ext
/
language
ln
-
s
`
pwd
`
/
plugins
-
client
/
ext
.
codecomplete
/
tmp
/
c9_worker_build
/
ext
/
codecomplete
ln
-
s
`
pwd
`
/
plugins
-
client
/
ext
.
jslanguage
/
tmp
/
c9_worker_build
/
ext
/
jslanguage
node
Makefile
.
dryice
.
js
worker
# cloud9 worker ---------
path
.
existsSync
is
now
called
`
fs
.
existsSync
`
.
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
dryice
/
lib
/
dryice
/
index
.
js
:
665
throw
new
Error
(
`
Each
commonjs
root
should
be
a
directory
:
`
+
root
)
;
^
Error
:
Each
commonjs
root
should
be
a
directory
:
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
treehugger
/
lib
at
CommonJsProject
.
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
dryice
/
lib
/
dryice
/
index
.
js
:
665
:
13
)
at
Array
.
map
(
native
)
at
new
CommonJsProject
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
dryice
/
lib
/
dryice
/
index
.
js
:
663
:
27
)
at
Function
.
copy
.
createCommonJsProject
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
dryice
/
lib
/
dryice
/
index
.
js
:
936
:
10
)
at
worker
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
Makefile
.
dryice
.
js
:
43
:
30
)
at
main
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
Makefile
.
dryice
.
js
:
35
:
9
)
at
Object
.
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
Makefile
.
dryice
.
js
:
95
:
5
)
at
Module
.
_compile
(
module
.
js
:
449
:
26
)
at
Object
.
Module
.
_extensions
.
.
js
(
module
.
js
:
467
:
10
)
at
Module
.
load
(
module
.
js
:
356
:
32
)
make
:
*
*
*
[
plugins
-
client
/
lib
.
ace
/
www
/
worker
/
worker
-
language
.
js
]
Ошибка
1
Linux
64
bit
path
.
existsSync
is
now
called
`
fs
.
existsSync
`
.
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
architect
/
architect
.
js
:
265
throw
err
;
^
Error
:
Can
`
t
find
`
vfs
-
architect
/
local
`
relative
to
`
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
plugins
-
server
`
at
resolvePackageSync
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
architect
/
architect
.
js
:
263
:
15
)
at
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
architect
/
architect
.
js
:
30
:
34
at
Array
.
forEach
(
native
)
at
Object
.
resolveConfig
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
node_modules
/
architect
/
architect
.
js
:
23
:
12
)
at
boot
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
server
.
js
:
102
:
33
)
at
Object
.
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
server
.
js
:
87
:
2
)
at
Module
.
_compile
(
module
.
js
:
449
:
26
)
at
Object
.
Module
.
_extensions
.
.
js
(
module
.
js
:
467
:
10
)
at
Module
.
load
(
module
.
js
:
356
:
32
)
at
Function
.
Module
.
_load
(
module
.
js
:
312
:
12
)
|
Из этого листинга видно, что не найдены следующие пакеты vfs-architect и treehugger. Поиск в Google дал ссылки на репозиторий GitHub для данного пакета. Я не стал его клонировать а скачал как zip архив и распаковал его в директорию node_modules под именем vfs-architect.
Затем я так же скачал архивом treehugger из репозитория на GitHub. И так же распаковал его в директорию node_modules под именем treehugger.
После произведенных действий, я попробовал снова запустить IDE при помощи команды bin/cloud9.sh. Но теперь на экран показалась ошибка об отсутствии пакета socket.io:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
cyberlight
@
cyberlight
-
dt
:
~
/
test
/
cloud9ide
/
cloud9
$
bin
/
cloud9
.
sh
mkdir
-
p
plugins
-
client
/
lib
.
ace
/
www
/
worker
rm
-
rf
/
tmp
/
c9_worker_build
mkdir
-
p
/
tmp
/
c9_worker_build
/
ext
ln
-
s
`
pwd
`
/
plugins
-
client
/
ext
.
language
/
tmp
/
c9_worker_build
/
ext
/
language
ln
-
s
`
pwd
`
/
plugins
-
client
/
ext
.
codecomplete
/
tmp
/
c9_worker_build
/
ext
/
codecomplete
ln
-
s
`
pwd
`
/
plugins
-
client
/
ext
.
jslanguage
/
tmp
/
c9_worker_build
/
ext
/
jslanguage
node
Makefile
.
dryice
.
js
worker
# cloud9 worker ---------
path
.
existsSync
is
now
called
`
fs
.
existsSync
`
.
copy
.
source
.
commonjs
is
deprecated
,
pass
{
project
:
.
.
.
includes
:
.
.
.
}
directly
as
a
source
-
ext
/
language
/
worker
.
js
has
require
(
.
.
.
)
with
non
-
string
parameter
.
Ignoring
requirement
.
-
ext
/
language
/
worker
.
js
has
require
(
.
.
.
)
with
non
-
string
parameter
.
Ignoring
requirement
.
cp
node_modules
/
ace
/
build
/
src
/
worker*
plugins
-
client
/
lib
.
ace
/
www
/
worker
Linux
64
bit
path
.
existsSync
is
now
called
`
fs
.
existsSync
`
.
module
.
js
:
340
throw
err
;
^
Error
:
Cannot
find
module
`
socket
.
io
`
at
Function
.
Module
.
_resolveFilename
(
module
.
js
:
338
:
15
)
at
Function
.
Module
.
_load
(
module
.
js
:
280
:
25
)
at
Module
.
require
(
module
.
js
:
362
:
17
)
at
require
(
module
.
js
:
378
:
17
)
at
Object
.
(
/
home
/
cyberlight
/
test
/
cloud9ide
/
cloud9
/
plugins
-
server
/
cloud9
.
socket
/
socket
.
js
:
5
:
16
)
at
Module
.
_compile
(
module
.
js
:
449
:
26
)
at
Object
.
Module
.
_extensions
.
.
js
(
module
.
js
:
467
:
10
)
at
Module
.
load
(
module
.
js
:
356
:
32
)
at
Function
.
Module
.
_load
(
module
.
js
:
312
:
12
)
at
Module
.
require
(
module
.
js
:
362
:
17
)
|
И тут я все таки решил посмотреть как можно проверить, какие пакеты у меня есть, а каких нет. Посмотрев команды sm я видел, что есть возможность запуск диагностики наличия пакетов с использованием команды sm status. Запустив ее я получил вполне себе симпатичный отчет:
Теперь мне стали известны пакеты, которые мне нужно установить/найти. И теперь этот список состоял из:
- packager
- vfs
- socket.io
- socket.io-client
На картинке ниже, я сделал акцент на вывод данных, о недостающих модулях, командой:
1
|
sm
status
|
Как оказалось, очень полезная команда:
Из этого списка, packager, socket.io и socket.io-client, можно поставить при помощи npm менеджера. А вот что касается пакета vfs, то его можно склонировать или скачать вот отсюда. Если будете качать архивом, то распаковать нужно будет так же в node_modules.
Итог
После установки пакетов packager, socket.io и socket.io-client посредством npm и при этом не забыв про vfs, можно кричать "Уррааааа!", потому что после запуска команды bin/cloud9.sh, появляется сообщение в консоле, что сервер стартовал. При этом, браузер не стартует автоматом. Сервер IDE поднимается на порту 3131. Открываем браузер, у меня это Chromium и вводим localhost:3131.
После этого видим:
Заключение
Думаю что данная статья поможет многим, кто столкнется с проблемой установки Cloud9 IDE под Ubuntu. Спасибо за внимание!
Учтите, что хоть в документации и указано "NodeJS >= 0.6.16 (node 0.8.x will not work at the moment!)", IDE прекрасно работает на 0.8.8 версии Node.js.
Я проверил, что работает: отладка, intellisense и строка команд. Вроде бы пока сбоев в работе не наблюдаю. Если что то будет обнаружено, то обязательно отпишусь в этой статье.
Прикладываю скриншоты в качестве доказательств своих утверждений.
- Работает intellisense (пока что по Ctrl + Space)
- Работает отладка
- Работает интерактивная подсказка в командой строке