Rocket.chat: Install 0.60.0-rc0 on CentOS7

Created on 18 Dec 2017  路  7Comments  路  Source: RocketChat/Rocket.Chat

Hi,

We had a 0.56.0 installed on our test server and wanted to test the upgrade to 0.60.0-rc0 But we encounter real troubles while starting it

Server Setup Information:

Steps to Reproduce:

Install node 8.9.1
Install 0.60.0-rc0
Start Rocket.Chat

Actual behavior:

Load fails

Relevant logs:

During loading we get this :

Dec 18 15:43:38 im02 rocketchat[29286]: module.js:653 Dec 18 15:43:38 im02 rocketchat[29286]: return process.dlopen(module, path._makeLong(filename)); Dec 18 15:43:38 im02 rocketchat[29286]: ^ Dec 18 15:43:38 im02 rocketchat[29286]: Error: /lib64/libstdc++.so.6: versionGLIBCXX_3.4.20' not found (required by /opt/rocketchat/rocket.chat.0.60.0-rc.0/programs/server/node_modules/fibers/bin/linux-x64-57/fibers.
Dec 18 15:43:38 im02 rocketchat[29286]: at Object.Module._extensions..node (module.js:653:18)
Dec 18 15:43:38 im02 rocketchat[29286]: at Module.load (module.js:545:32)
Dec 18 15:43:38 im02 rocketchat[29286]: at tryModuleLoad (module.js:508:12)
Dec 18 15:43:38 im02 rocketchat[29286]: at Function.Module._load (module.js:500:3)
Dec 18 15:43:38 im02 rocketchat[29286]: at Module.require (module.js:568:17)
Dec 18 15:43:38 im02 rocketchat[29286]: at require (internal/module.js:11:18)
Dec 18 15:43:38 im02 rocketchat[29286]: at Object. (/opt/rocketchat/rocket.chat.0.60.0-rc.0/programs/server/node_modules/fibers/fibers.js:24:38)
Dec 18 15:43:38 im02 rocketchat[29286]: at Module._compile (module.js:624:30)
Dec 18 15:43:38 im02 rocketchat[29286]: at Object.Module._extensions..js (module.js:635:10)
Dec 18 15:43:38 im02 rocketchat[29286]: at Module.load (module.js:545:32)
`

If we look to our libstd, we can see that indeed we don't have this version :

[LBG root@im02 rocketchat]# strings /lib64/libstdc++.so.6 | grep GLIBCXX GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLIBCXX_3.4.4 GLIBCXX_3.4.5 GLIBCXX_3.4.6 GLIBCXX_3.4.7 GLIBCXX_3.4.8 GLIBCXX_3.4.9 GLIBCXX_3.4.10 GLIBCXX_3.4.11 GLIBCXX_3.4.12 GLIBCXX_3.4.13 GLIBCXX_3.4.14 GLIBCXX_3.4.15 GLIBCXX_3.4.16 GLIBCXX_3.4.17 GLIBCXX_3.4.18 GLIBCXX_3.4.19 GLIBCXX_DEBUG_MESSAGE_LENGTH

As far as I understand, fiber 2.0.0 is installed and this version requires GLIBCXX_3.4.20 of libstdc++, which is not available on CentOS7

So the question is : does RC still available on CentOS7, if so, could you give us any hints about the dependencies (does it come from node ?).

Thanks for your help.

deployment

Most helpful comment

@fcoppolani I had the same issue. It seems that Centos 7 doesn't have a recent enough version of GLIBC and the node-fibers package has to be rebuilt locally on the Centos 7 machine. I believe the appropriate steps are below but I'm just looking through my cli history.

  • yum install g++ build-essential

  • npm install -g node-gyp

  • cd /opt/Rocket.Chat/programs/server/node_modules/fibers/

  • node-gyp rebuild

  • cp build/Release/fibers.node bin/linux-x64-57/fibers.node

  • systemctl start rocketchat.service

All 7 comments

Hi @fcoppolani

Can you take a look here (https://github.com/meteor/meteor/issues/9269) and see if it solves your problem?

Hi @rodrigok ,
Thanks, but the link concern a problem with 'make' that was not installed (I checked, everything is ok on this side), in our cases it is a lib that is missing . Anyway I asked the same question in the thread you mentioned. Do you have a Centos7 to test the install on your side ?

@fcoppolani I had the same issue. It seems that Centos 7 doesn't have a recent enough version of GLIBC and the node-fibers package has to be rebuilt locally on the Centos 7 machine. I believe the appropriate steps are below but I'm just looking through my cli history.

  • yum install g++ build-essential

  • npm install -g node-gyp

  • cd /opt/Rocket.Chat/programs/server/node_modules/fibers/

  • node-gyp rebuild

  • cp build/Release/fibers.node bin/linux-x64-57/fibers.node

  • systemctl start rocketchat.service

@stalley Thanks, you did point me to the right direction. I tried to install on a fresh CentOS7 and I had no trouble. I noticed that fibers was automatically rebuilt during npm install. on this fresh CentOS7
In fact I guess that on our current platform, I first tried a npm install with the wrong node version and event after installing the right node version, npm install was not using it properly. I will try to make everything clear and post what happen and how to avoid this. The steps given above solve the problem.

Many thanks @fcoppolani your most recent comment helped me out tremendously. I had done exactly what you did. I was upgrading from 0.59.6 to 0.60.4 on CentOS 7. And because I didn't catch the blog entry about node.js 8.x being required, my upgrade failed. Then, seeing (https://github.com/RocketChat/Rocket.Chat/issues/9275), I installed version 8.9.3.

Of course, then when I tried to start up Rocket Chat, I got your error detailed here in this issue. (Error: /lib64/libstdc++.so.6: versionGLIBCXX_3.4.20' not found . . .)

I first tried a npm install with the wrong node version and even after installing the right node version, npm install was not using it properly."

It occurred to me that I needed to run npm install again, since I had upgraded to node.js 8.9.3. With this in mind, I moved my Rockat.Chat directory out of the way, untarred the Rocket Chat 0.60.4 bundle again, changed into the Rocket.Chat/programs/server/ directory and issued a new "npm install". After doing this, my Rocket Chat services started up successfully.

Thanks!

Try it https://github.com/RocketChat/Rocket.Chat/issues/9167#issuecomment-352804066 but got error

`node main.js
module.js:681
return process.dlopen(module, path._makeLong(filename));
^

Error: The module '/opt/Rocket.Chat/programs/server/node_modules/fibers/bin/linux-x64-57/fibers.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 48. This version of Node.js requires
NODE_MODULE_VERSION 57. Please try re-compiling or re-installing
the module (for instance, using npm rebuild or npm install).
at Object.Module._extensions..node (module.js:681:18)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object. (/opt/Rocket.Chat/programs/server/node_modules/fibers/fibers.js:24:38)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)`

How to fix it?

@fcoppolani I had the same issue. It seems that Centos 7 doesn't have a recent enough version of GLIBC and the node-fibers package has to be rebuilt locally on the Centos 7 machine. I believe the appropriate steps are below but I'm just looking through my cli history.

  • yum install g++ build-essential
  • npm install -g node-gyp
  • cd /opt/Rocket.Chat/programs/server/node_modules/fibers/
  • node-gyp rebuild
  • cp build/Release/fibers.node bin/linux-x64-57/fibers.node
  • systemctl start rocketchat.service

Hi @stalley Many thanks for your contributions, I have executed the commands step by step and now I receive the error that I show below:

`node main.js
module.js:664
return process.dlopen(module, path._makeLong(filename));
^

Error: The module '/opt/Rocket.Chat/programs/server/node_modules/fibers/bin/linux-x64-57/fibers.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 48. This version of Node.js requires
NODE_MODULE_VERSION 57. Please try re-compiling or re-installing
the module (for instance, using npm rebuild or npm install).
at Object.Module._extensions..node (module.js:664:18)
at Module.load (module.js:554:32)
at tryModuleLoad (module.js:497:12)
at Function.Module._load (module.js:489:3)
at Module.require (module.js:579:17)
at require (internal/module.js:11:18)
at Object. (/opt/Rocket.Chat/programs/server/node_modules/fibers/fibers.js:24:38)
at Module._compile (module.js:635:30)
at Object.Module._extensions..js (module.js:646:10)
at Module.load (module.js:554:32)`


Centos Linux Release 7.6.1810 (core)
MongoDB v3.6.9
nmp 5.5.1
node v8.9.3

I'm sorry but I'm new to this, in advance I appreciate your support and that of each of the community's partners... regards!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

royalaid picture royalaid  路  3Comments

neha1deshmukh picture neha1deshmukh  路  3Comments

Buzzele picture Buzzele  路  3Comments

mddvul22 picture mddvul22  路  3Comments

brendanheywood picture brendanheywood  路  3Comments