
Estoy en Ubuntu 20.04.3 LTS x86_64
. El programaw3mno se inicia de la siguiente manera:
$ w3m -h
Wrong __data_start/_end pair
Aborted (core dumped)
Yo he tratado
- instalación y reinstalación;
- establecer un límite de tamaño de pila con
ulimit
, como se sugiereaquí.
Sin suerte.
La cuestión también surgió enotro hilo, pero eso es específico del subsistema de Windows para Linux, en el que no estoy.
Editar
Cada vez más cerca: este es un problema del kernel.
La máquina está ejecutando un compilado personalizado.núcleo, actualmente en v5.17-rc3
. Si vuelvo a la versión 5.16
del kernel lo hagonover el problema.
No estoy seguro de cómo han cambiado las cosas para el 5.17
lanzamiento, pero parece que se necesita alguna modificación en la configuración del kernel.
Editar 2
Encontróalgo prometedoren la lista de correo del kernel.
Todavía tengo que probar ese parche, pero encaja con lo que estoy viendo: el problema que aparece después de v5.17-rc1
.
Respuesta1
Esa segunda edición tiene todo lo que necesito: fue un problema del kernel, debido al hecho de que no estoy ejecutando la Ubuntu
versión estándar.
Compilando elultima versióndel kernel (aún v5.17-rc3
mientras escribo esto) con el parche proporcionadoaquíresuelve el asunto.
Así que espero que para cuando Linux 5.17
llegue a los Ubuntu
repositorios, esto se haya solucionado en sentido ascendente. En resumen, ya estoy listo.
Respuesta2
Soy el usuario que publicó la +50
recompensa. En mi caso de uso particular, w3m
se activa mediante Emacs
. La compilación personalizada Emacs
que uso requiere una ulimit
configuración alta para una biblioteca de historial de deshacer/rehacer en particular que me gusta bastante. Estaba iniciando Emacs
con un archivo de escritorio que contenía:
Exec=bash -c 'ulimit -S -s unlimited && /path/to/emacs'
El problema es unlimited
. La solución es utilizar una cantidad fija algo menor que el límite del sistema, en kB
. Desde la terminal, escriba grep MemTotal /proc/meminfo
y el resultado se verá así:
MemTotal: 8141092 kB
Entonces, el cambio ahora se ve así:
Exec=bash -c 'ulimit -S -s 8000000 && /path/to/emacs'