Aborted, core dumped
neoserpent opened this issue ยท 8 comments
I've been trying to set up cli-visualizer for using with mpd, but every time I try to launch it, I get the error
/usr/include/c++/11.1.0/bits/stl_vector.h:1045: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](std::vector<_Tp, _Alloc>::size_type) [with _Tp = double; _Alloc = std::allocator<double>; std::vector<_Tp, _Alloc>::reference = double&; std::vector<_Tp, _Alloc>::size_type = long unsigned int]: Assertion '__n < this->size()' failed. Aborted (core dumped)
I'm using cli-visualizer-git downloaded with yay from the AUR, and mpd with pipewire.
This is my mpd.conf file:
#music_directory` "/home/xavier/Music"
music_directory "/mnt/Data150GB/XavierArchData/Music"
playlist_directory "/home/xavier/.config/mpd/playlists"
auto_update "yes"
bind_to_address "127.0.0.1"
port "6600"
restore_paused "yes"
max_output_buffer_size "16384"
audio_output {
type "pulse"
name "pulse audio"
#type "alsa"
#name "ALSA"
}
audio_output {
type "fifo"
name "my_fifo"
path "/tmp/mpd.fifo"
format "44100:16:2"
}
This is my cli-visualizer config file:
#Refresh rate of the visualizers. A really high refresh rate may cause screen tearing. Default is 20.
visualizer.fps=20
#Defaults to "/tmp/mpd.fifo"
/tmp/mpd.fifo
#If set to false the visualizers will use mono mode instead of stereo. Some visualizers will
#behave differently when mono is enabled. For example, spectrum show two sets of bars.
audio.stereo.enabled=false
#Specifies how often the visualizer will change in seconds. 0 means do not rotate. Default is 0.
visualizer.rotation.secs=10
#Configures the samples rate and the cutoff frequencies.
audio.sampling.frequency=44100
audio.low.cutoff.frequency=30
audio.high.cutoff.frequency=22050
##Applies scaling factor to both lorenz and ellipse visualizers. This is useful when the system audio is set
#to a low volume.
#visualizer.scaling.multiplier=1.0
#Configures the visualizers and the order they are in. Available visualizers are spectrum,lorenz,ellipse.
#Defaults to spectrum,ellipse,lorenz
visualizers=spectrum,ellipse,lorenz
#Configures what character the spectrum visualizer will use. Specifying a space (e.g " ") means the
#background will be colored instead of the character. Defaults to " ".
visualizer.spectrum.character=#
#Spectrum bar width. Defaults to 1.
visualizer.spectrum.bar.width=2
#The amount of space between each bar in the spectrum visualizer. Defaults to 1. It's possible to set this to
#zero to have no space between bars
visualizer.spectrum.bar.spacing=1
#Available smoothing options are monstercat, sgs, none. Defaults to sgs.
visualizer.spectrum.smoothing.mode=monstercat
#This configures the falloff effect on the spectrum visualizer. Available falloff options are fill,top,none.
#Defaults to "fill"
visualizer.spectrum.falloff.mode=fill
#Configures how fast the falloff character falls. This is an exponential falloff so values usually look
#best 0.9+ and small changes in this value can have a large effect. Defaults to 0.95
visualizer.spectrum.falloff.weight=0.95
#Margins in percent of total screen for spectrum visualizer. All margins default to 0
visualizer.spectrum.top.margin=0.0
visualizer.spectrum.bottom.margin=0.0
visualizer.spectrum.right.margin=0.0
visualizer.spectrum.left.margin=0.0
#Reverses the direction of the spectrum so that high freqs are first and low freqs last. Defaults to false.
visualizer.spectrum.reversed=false
#Sets the audio sources to use. Currently available ones are "mpd" and "alsa"Sets the audio sources to use.
#Currently available ones are "mpd", "pulse", "port", and "alsa". Defaults to "mpd".
audio.sources=mpd
##vis tries to find the correct pulseaudio sink, however this will not work on all systems.
#If pulse audio is not working with vis try switching the audio source. A list can be found by running the
#command pacmd list-sinks | grep -e 'name:' -e 'index'
#audio.pulse.source=0
#vis tries to find the correct portaudio device (through portaudio default method), however its not for-sure.
#If port audio is not working with vis try switching the audio srouce. A list can be found by setting
#this value to "list" and checking the vis log file. Replace this value with the device name desired
audio.port.source=auto
#This configures the sgs smoothing effect on the spectrum visualizer. More points spreads out the smoothing
#effect and increasing passes runs the smoother multiple times on reach run. Defaults are points=3 and passes=2.
visualizer.sgs.smoothing.points=3
visualizer.sgs.smoothing.passes=2
#Configures what character the ellipse visualizer will use. Specifying a space (e.g " ") means the
#background will be colored instead of the character. Defaults to " ".
visualizer.ellipse.character=#
#The radius of each color ring in the ellipse visualizer. Defaults to 2.
visualizer.ellipse.radius=2
## Turns off overriding the user's terminal colors
colors.override.terminal=false
#Specifies the color scheme. The color scheme must be in ~/.config/vis/colors/ directory. Default is "colors"
colors.scheme=rainbow
And of course, I have a color scheme called "rainbow" in .config/vis/colors/
Can confirm whit Pulseaudio setup.
audio.sources=pulse
audio.pulse.source=0
in the config, else defaults.
Also confirming with pulse/ pipewire, downloaded from the AUR
Confirming with a stock version of EndeavourOS, using yay as my AUR helper
Yea looks like it's strictly an issue with the AUR package cli-visualizer-git.
The good news is that the program works if you build from this repo yourself using the README instructions.
I believe the AUR packages are unmaintained. Anyone know if something's outdated here?
https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=cli-visualizer-git
Helpful/relevant section in Arch Wiki:
https://wiki.archlinux.org/title/Arch_User_Repository#Debugging_the_package_build_process
cli-visualizer-git
package was now fixed in AUR. Thanks AUR user toitenminh.
Edit: non-git package cli-visualizer
fixed as well :)
About the problem and the fix:
https://wiki.archlinux.org/title/Makepkg#Troubleshooting
See section Makepkg fails, but make succeeds
Adding !buildflags
to options array fixed the package, and I can see from toitenminh's initial attempt to fix the PKGBUILD that the offending flags were:
-Wp,-D_GLIBCXX_ASSERTIONS
Wanted to preserve that info here as it's now hidden behind comment edit history.
I can see from toitenminh's initial attempt to fix the PKGBUILD that the offending flags were:
-Wp,-D_GLIBCXX_ASSERTIONS
Wanted to preserve that info here as it's now hidden behind comment edit history.
I have recovered my removed comment on aur page. This is just my temporary walkaround, I also don't know what the flag has any impact on the build process. Waiting for someone to analyze the impact.