venkatdevex
Elixir release fails due to GLIBC not found
I am deploying an app with GitHub actions, this fails due to GLIBC version
home/app_user/_build/staging/rel/app/erts-13.2.2.12/bin/beam.smp: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /home/app_user/_build/staging/rel/app/erts-13.2.2.12/bin/beam.smp)
as I checked my image ldd --version it has 2.39 but Erlang expects 2.38, I did try downgrading this to 2.38, but that didn’t help.
here is yml I used to downgrade
name: Elixir CI staging
on:
push:
branches: [ main, master, release ]
jobs:
build:
name: Build and Deploy
runs-on: ubuntu-latest
env:
MIX_ENV: production
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: SSH Agent
uses: webfactory/ssh-agent@v0.7.0
- name: Setup elixir
uses: erlef/setup-beam@v1
with:
otp-version: 25.0
elixir-version: 1.16.0
- name: Restore dependencies cache
uses: actions/cache@v3
with:
path: |
deps
_build
key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }}
restore-keys: ${{ runner.os }}-mix-
- uses: actions/cache@v3
with:
path: |
assets/node_modules
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install GLIBC 2.38
run: |
sudo apt-get update
sudo apt-get install -y wget build-essential
sudo apt-get install gcc-10 g++-10
export CC=gcc-10
export CXX=g++-10
wget http://ftp.gnu.org/gnu/libc/glibc-2.38.tar.gz
tar -xvzf glibc-2.38.tar.gz
cd glibc-2.38
mkdir build
cd build
../configure --prefix=/opt/glibc-2.38 CFLAGS="-O2 -Wno-error"
make -j$(nproc)
sudo make install
sudo ldconfig
export LD_LIBRARY_PATH=/opt/glibc-2.38/lib:$LD_LIBRARY_PATH
- name: Verify GLIBC version
run: ldd --version
- name: Install mix dependecies
run: mix deps.get
- name: Install node dependencies
run: npm install --prefix ./assets --legacy-peer-deps
- name: Deploy assets
run: npm run deploy --prefix assets
- name: Digest assets
run: mix phx.digest
- name: Create Release
run: mix release --overwrite
- name: Verify GLIBC version
run: ldd --version
does anyone has faced this issue ??
First Post!
karlosmid
Hi, github actions runner was updated to ubuntu 24.04.
Check your Dockerfile ubuntu version and put that version in runs-on instead of ubuntu-latest.
Popular in Questions
In the Dialyzer docs ( http://erlang.org/doc/man/dialyzer.html#requesting-or-suppressing-warnings-in-source-files ), there is a way to tu...
New
I have an umbrella app.
Some of the apps inside depend on other apps in the umbrella, unsurprisingly.
I'm writing a test for one of t...
New
Hello,
I am trying to convert my lists to string without losing brackets.For start i have 3 map. They look like these
buyer = %{
id: ...
New
I would like to know what is the best IDE for elixir development?
New
Could someone help me? I'm making my first elixir program, number guessing game. I can't figure out how to convert the user's guess from ...
New
Hey all,
I discovered Elixir and I love it. I always wanted to learn a functional programming and I intended to go for Haskell, but afte...
New
After calling mix ecto.create I get this error:
17:00:32.162 [error] GenServer #PID<0.412.0> terminating
** (Postgrex.Error) FATAL...
New
Sometimes I want to check if the input into a function is not a blank string.
My first approach:
defmodule Example do
def do_stuff(s...
New
About me? ( if you have nothing better to do than reading about some random guy in the internet :stuck_out_tongue: )
Hello all, this is ...
New
Hello again - after a longish gap I’ve decided I really must dig into Elixir and see what’s been happening here - so I have a few questio...
New
Other popular topics
TL;DR: I’ve just released an implementation of Microsoft’s IDE-independent Language Server Protocol for Elixir. It adds language support ...
New
In the Dialyzer docs ( http://erlang.org/doc/man/dialyzer.html#requesting-or-suppressing-warnings-in-source-files ), there is a way to tu...
New
I have followed this StackOverflow post to install the specific version of Erlang.
And When I am running mix ecto.setup then getting fol...
New
I am trying to figure out how Mix knows whether the environment is test, dev, or prod -- where is this set?
Thanks.
New
What is the difference between System.get_env and Application.get_env? For example, what are best practices to use one versus another.
New
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible.
total = 10
while total != 0
...
New
Hi,
I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list....
New
After calling mix ecto.create I get this error:
17:00:32.162 [error] GenServer #PID<0.412.0> terminating
** (Postgrex.Error) FATAL...
New
I have a super simple question about elixir - how would I take a file like this
foo bar baz
and output a new file that enumerates th...
New
Hello again - after a longish gap I’ve decided I really must dig into Elixir and see what’s been happening here - so I have a few questio...
New







