Bonjour,
J'ai voulu testé soundscape et pour cela j'ai installé golang-1.10 dans ma debian testing, ce qui aboutit à l'installation des paquets suivants:
golang-1.10
golang-1.10-doc
golang-1.10-go
golang-1.10-src
golang-doc
golang-go
golang-src
Mon souci est que dès que je tente un go
, indépendamment de l'endroit où je le lance dans mon arborescence, je me vois répondre instantanément Segmentation fault
quelques soient les arguments accompagnant la commande.
Un backtrace sous gdb go
me donne le très instructif:
(gdb) run
Starting program: /usr/bin/go
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Program received signal SIGSEGV, Segmentation fault.
0xffffffffff600000 in ?? ()
(gdb) backtrace
#0 0xffffffffff600000 in ?? ()
#1 0x0000000000458443 in ?? ()
#2 0x00007ffff7fec000 in ?? ()
#3 0x0000000000000000 in ?? ()
et un strace me donne ceci:
execve("/usr/bin/go", ["go"], 0x7fff4452aa10 /* 41 vars */) = 0
brk(NULL) = 0x1670000
uname({sysname="Linux", nodename="profix", ...}) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=222718, ...}) = 0
mmap(NULL, 222718, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f42de857000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@b\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=138216, ...}) = 0
mmap(NULL, 2217088, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f42de44c000
mprotect(0x7f42de465000, 2093056, PROT_NONE) = 0
mmap(0x7f42de664000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7f42de664000
mmap(0x7f42de666000, 13440, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f42de666000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\33\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1800248, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f42de855000
mmap(NULL, 3906272, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f42de092000
mprotect(0x7f42de243000, 2093056, PROT_NONE) = 0
mmap(0x7f42de442000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b0000) = 0x7f42de442000
mmap(0x7f42de448000, 15072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f42de448000
close(3) = 0
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f42de852000
arch_prctl(ARCH_SET_FS, 0x7f42de852740) = 0
mprotect(0x7f42de442000, 16384, PROT_READ) = 0
mprotect(0x7f42de664000, 4096, PROT_READ) = 0
mprotect(0x7f42de88e000, 4096, PROT_READ) = 0
munmap(0x7f42de857000, 222718) = 0
set_tid_address(0x7f42de852a10) = 21436
set_robust_list(0x7f42de852a20, 24) = 0
rt_sigaction(SIGRTMIN, {sa_handler=0x7f42de451cb0, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f42de45df50}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {sa_handler=0x7f42de451d50, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7f42de45df50}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
brk(NULL) = 0x1670000
brk(0x1691000) = 0x1691000
sched_getaffinity(0, 8192, [0, 1, 2, 3]) = 64
mmap(0xc000000000, 65536, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc000000000
munmap(0xc000000000, 65536) = 0
mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f42de812000
mmap(0xc420000000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc420000000
mmap(0xc41fff8000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc41fff8000
mmap(0xc000000000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc000000000
mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f42de87e000
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xffffffffff600000} ---
+++ killed by SIGSEGV (core dumped) +++
Segmentation fault
Bref, pour ce qui me concerne, rien de très utile.
Une recherche sur bugs.debian.org ou plus largement sur le web ne m'a pas permis de trouver d'autres personnes dans mon cas.
Avez-vous rencontré le même souci ?
Si oui, à votre avis qu'est ce qui pourrait en être la cause et avez-vous trouvez une solution ?
merci
# Installer le package gloang-dbg?
Posté par Christophe --- . Évalué à 3.
Bonjour,
Une piste qui ne t'aidera pas beaucoup, mais pour avoir des info «intéressantes», c'est bien avec gdb que ça se passe mais il te faut installer le paquet «golang-dbg».
Il est possible que «gdb» ne charge toujours pas les symboles par défaut, il faut voir du côté de la variable debug-file-directory.
Ainsi tu aurais les noms des fonctions ainsi que les noms de fichier avec numéro de ligne.
Christophe.
[^] # Re: Installer le package gloang-dbg?
Posté par Anonyme . Évalué à 2.
A moins d'avoir mal cherché, il n'y a pas de paquets avec les debug symbols pour go.
[^] # Re: Installer le package gloang-dbg?
Posté par Christophe --- . Évalué à 1.
D'après Qwant (premier résultat), il existe.
Mais j'avais aussi constaté chez moi (apt search) qu'il n'existe plus, j'avais compté sur le fait que tu aurais plus de «chance» que moi…
Il ne te reste donc comme solution probablement que de recompiler le package toi-même? Sachant qu'il faudra peut-être modifier les options pour inclure les symboles de debug (puisqu'apparemment ils ne sont pas inclus par défaut), et sachant aussi que tu n'auras peut-être plus non plus le crash… Bref, que du bonheur en perspective :-/
Je compatis…
[^] # Re: Installer le package gloang-dbg?
Posté par Guillaume Smet (site web personnel) . Évalué à 1.
Pas utilisateur de Debian mais quelqu'un avait parlé du fait qu'ils avaient migré les paquets debug sur un dépôt séparé.
Une rapide recherche mène là : https://wiki.debian.org/fr/SourcesList#Paquets_de_symboles_de_d.2BAOk-bogage .
[^] # Re: Installer le package gloang-dbg?
Posté par Anonyme . Évalué à 2.
merci ! j'avais loupé cette info.
malheureusement il n'y a rien pour amd64
[^] # Re: Installer le package gloang-dbg?
Posté par Anonyme . Évalué à 2.
il existe pour wheezy oui, pas pour testing
quant à la recompilation de go, je vais passer mon tour.
Par contre si tu pouvais me dire si
go
plante aussi chez toi, cela me permettrait de me sentir moins seul: je ne vois aucune raison pour que ma machine soit la seule victime.merci
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.