fs.watch() doesn't work on IBM i
This is very unfortunate because many useful packages like nodemon rely on this.
Comments (14)
-
-
-
assigned issue to
@mengxumx , please handle. Thanks!
-
assigned issue to
-
Account Deactivated @TaskForce_Kerim This is issue should be fixed in the latest Node.js 8.12.0/10.11.0 and the nodemon package is tested. You my upgrade Node.js and try it again.
-
Account Deactivated - changed status to resolved
-
reporter - changed status to open
Hey @mengxumx
I was a bit preoccupied for a while. I tried upgrading our Node.js from version 8.11.3 to 8.12.0 but when I run node, I get the following issue:
gueney@TFSVRTST:~ $ yum install nodejs8 Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package nodejs8.ppc64 0:8.12.0-1 will be installed --> Finished Dependency Resolution [...] Install 1 Package Total size: 19 M Installed size: 68 M Is this ok [y/N]: y Downloading Packages: Running Transaction Check Running Transaction Test Transaction Test Succeeded Running Transaction Installing : nodejs8-8.12.0-1.ppc64 1/1 Installed: nodejs8.ppc64 0:8.12.0-1 Complete! gueney@TFSVRTST:~ $ node -v Could not load program node: rtld: 0712-001 Symbol _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-002 fatal error: exiting.
-
reporter Node10 throws a similar error
gueney@TFSVRTST:~ $ /QOpenSys/pkgs/lib/nodejs10/bin/node Could not load program node: rtld: 0712-001 Symbol _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-002 fatal error: exiting.
I downgraded to 8.11.3 and that one works.
OS version 7.3
-
reporter Well, something broke :/
I tried another node 8 installation but it didn't work, so I downgraded back to 8.11.3 but now I get an error here as well
gueney@TFSVRTST:~ $ /QOpenSys/pkgs/lib/nodejs8/bin/node Could not load program node: rtld: 0712-001 Symbol memcpy was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol memmove was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol strcat was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol strcmp was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol strcpy was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol strncpy was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-002 fatal error: exiting.
-
reporter Never mind. I found the issue. For some reason it's not possible to call the the node binaries directly through their actual location (e.g. /QOpenSys/pkgs/lib/nodejs10/bin/node) if there's no symbolic link in /QOpenSys/pkgs/bin/node. After the symbolic link was created by nodever, things worked just fine.
-
reporter Well... not resolved after all. I tried to install node 8.12.0 on our production machine running 7.2 but here I can't even run nodever
gueney@TFSVR1:/QOpenSys/pkgs/bin $ nodever Could not load program node: rtld: 0712-001 Symbol _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-001 Symbol _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv was referenced from module node(), but a runtime definition of the symbol was not found. rtld: 0712-002 fatal error: exiting.
I got it to work by installing libstdcplusplus6 and libstdcplusplus-devel
-
Account Deactivated Hello @TaskForce_Kerim Yum is expected to resolve the dependencies automatically so it is weird. nodever itself is a shell script to manage the global links of different versions of node.js. It dose not depend on the libstdcpp libs. But it calls nodejs to retrieve the versions and nodejs depends on these libstdcpp libs.
So when you install nodejs, yum should install these libstdcpp libs automatically. I do not know why they are not there.
But generally, it is recommended to use nodever to manage the effective version of node.js.
-
reporter Hi @mengxumx
iirc node.js 8.12.0 didn't download any dependencies, node.js 10.11.0 did have one dependency but that was libopenssl. I tried to check out what dependencies are defined in the RPM package but couldn't open the cpio archive.
gueney@TFSVR1:~/tp $ cpio -idmv < node.cpio Out of phase! cpio attempting to continue... skipping 655912 bytes to get back in phase! One or more files lost and the previous file is possibly corrupt Can't read input
-
Account Deactivated You may try
rpm -qp --requires nodejs10-10.11.0-0.ibmi7.2.ppc64.rpm
to get the dep list. -
reporter Thanks a bunch. The dependencies seem correct.
Odd, odd. Well, either way this issue is resolved. Much thanks!
-
reporter - changed status to resolved
- Log in to comment
@TaskForce_Kerim , I believe this is partially fixed in the latest build of Node.js version 10 (only). What version of Node are you running?