mhanberg

mhanberg

Creator of elixir-tools

Trouble installing Erlang "configure: error: No curses library functions found"

I am suddenly having this issue when installing Erlang with mise (formerly rtx, an asdf alternative that uses asdf plugins).

I am on Ubuntu 23.10 and also use nix+home-manager to manage most of my packages (I still use some from apt).

I was also seeing this on my work macbook the other day when getting home-manager+nix-darwin setup there, but was able to fix it eventually, not really sure how.

Now I’m seeing it on Linux and am very confused.

I was thinking maybe that ncurses wasn’t installed, but I have ncurses6 installed via apt, then I saw something that it doesn’t distribute ncurses5 anymore, which is what asdf-elixir lists as a dependency.

I installed ncurses5 via a nix shell, but get the same result.

Any ideas?

mise ~/.local/share/mise/plugins/erlang/bin/install failed
Downloading kerl...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 74085  100 74085    0     0   453k      0 --:--:-- --:--:-- --:--:--  455k
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  102M  100  102M    0     0  16.0M      0  0:00:06  0:00:06 --:--:-- 24.1M
checking for kstat_open in -lkstat... (cached) no
checking for tgetent in -ltinfo... no
checking for tgetent in -lncurses... no
checking for tgetent in -lcurses... no
checking for tgetent in -ltermcap... no
checking for tgetent in -ltermlib... no
configure: error: No curses library functions found
ERROR: /home/mitchell/.local/share/mise/plugins/erlang/kerl-home/builds/asdf_26.1.2/otp_src_26.1.2/erts/configure failed!
./configure: 370: kill: No such process

Marked As Solved

mhanberg

mhanberg

Creator of elixir-tools

Yes, sorry i should have followed up.

The magic incantation is the following:

$ nix-shell --run "bash -c 'mise use erlang@25.3.2.12'" -p gcc -p mise -p ncurses5 -p autoconf -p automake -p openssl

Update: on Mac, I had to make sure that openssl was installed via homebrew (I was previously trying to remove homebrew entirely, but nix doesn’t seem to put dev headers in the path) and I had to do the following

$ nix-shell -p ncurses5 darwin.apple_sdk.frameworks.AGL darwin.apple_sdk.frameworks.Carbon darwin.apple_sdk.frameworks.Cocoa darwin.apple_sdk.frameworks.WebKit --run "bash -c mise use erlang@27.0 --verbose'"

Where Next?

Popular in Questions Top

Brian
What is the proper way to load a module from a file in to IEX? In the python world, doing something like this pretty standard: from ....
New
gshaw
What is the idiomatic way of matching for not nil in Elixir? E.g., First way: defp halt_if_not_signed_in(conn, signed_in_account) when...
New
sergio_101
I am VERY much an elixir newbie. I have taken one elixir course and one phoenix course on Udemy. During that course, I saw the instructor...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New
sacepums
Hey guys. I'm new to elixir and im really stocked about it. But I ran into a bit of problem - I need to convert a date sting, for examp...
New
hariharasudhan94
I would like to know what is the best IDE for elixir development?
New
mgjohns61585
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
mathew4509
I have a list say x = ["23gh", "56kh", "97mh"] I would like to pass each element to Val in each iteration. Say, in iteration 1 -------...
New
LegitStack
I’m trying to make a websocket server in Phoenix or raw Elixir. I heard about gun, I think I could use cowboy, but since I’m not that sma...
New
Mooodi
Given a string, how can I get access to its character by index? Enum.at("my_string", 2) doesn't work. Or rather, not char, but a substr...
New

Other popular topics Top

sorentwo
Hello! tl;dr Announcing Oban, an Ecto based job processing library with a focus on reliability and historical observability. After spen...
977 41022 311
New
sergio
In Ruby, I can go: User.find_by(email: "foobar@email.com").update(email: "hello@email.com") How can I do something similar in Elixir? ...
New
sergio
I couldn’t find any guides that worked well with Phoenix 1.6.0 and esbuild. I hope this helps people test the waters and eases you into t...
New
lastday4you
I wanted to check elixir version in phoenix because i found that my elixir is 1.5 but when i use Enum.chunk_by it said the function is un...
New
minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New
chensan
I have a User schema with a :from_id field set to type :string: defmodule TweetBot.Repo.Migrations.CreateUsers do use Ecto.Migration ...
New
shahryarjb
Hello, I have map which I want to convert it to string like this: the map: %{last_name: "tavakkoli", name: "shahryar"} the string I ne...
New
Qqwy
Original source of discussion: This topic on the Pragmatic Programmers' Functional Web Development with Elixir, OTP, and Phoenix forum. ...
New
skosch
To my knowledge, put_in, Map.update etc. all have the one limitation of not automatically creating intermediate keys when needed (for exa...
New
siddhant3030
Hi, I have to write a raw query for one of my project. But till now I have used ecto queries and don’t have much experience writing raw ...
New

We're in Beta

About us Mission Statement