Search code examples
node.jsaws-amplifyglibcamazon-linux

Using NodeJS 18 in AWS Amplify on Amazon Linux 2 fails


Trying to upgrade an existing React app running on AWS Amplify from node v16 to v18
The image used is the provided Amazon Linux 2

Expected it to install node 18 on the machine it spun up and build the application, since this is the LTS version

Here is the error I get in the build process:

2022-11-15T19:19:02.924Z [WARNING]: node: /lib64/libm.so.6: version GLIBC_2.27' not found (required by node)
node: /lib64/libc.so.6: version GLIBC_2.28' not found (required by node)

Solution

  • Amazon Linux 2 includes Glibc 2.26 or under. To use a higher glibc version, you need to consider other AMI, for example Amazon Linux 2022 (al2022-ami) as it includes glibc 2.34.

    You can also revert back to Node.js 16 as it uses a lower version of Glibc.