# scanelf -n /usr/bin/ngspice /usr/lib64/libngspice.so /usr/bin/kicad
TYPE NEEDED FILE
ET_DYN libdl.so.2,libtinfo.so.6,libm.so.6,libstdc++.so.6,libfftw3.so.3,libreadline.so.8,libXaw.so.7,libXt.so.6,libX11.so.6, libXft.so.2,libfontconfig.so.1,libgomp.so.1,libgcc_s.so.1,libc.so.6 /usr/bin/ngspice
ET_DYN libdl.so.2,libtinfo.so.6,libm.so.6,libpthread.so.0,libstdc++.so.6,libfftw3.so.3,libreadline.so.8,libgomp.so.1,libgcc_s.so.1,libc.so.6 /usr/lib64/libngspice.so
ET_DYN libwx_gtk3u_aui-3.0-gtk3.so.0,libwx_gtk3u_adv-3.0-gtk3.so.0,libwx_gtk3u_html-3.0-gtk3.so.0,libwx_gtk3u_core-3.0-gtk3.so.0,libwx_baseu_net-3.0-gtk3.so.0,libwx_baseu-3.0-gtk3.so.0,libcurl.so.4,libstdc++.so.6,libgcc_s.so.1,libpthread.so.0,libc.so.6 /usr/bin/kicad
openat(AT_FDCWD, "/usr/lib64/libngspice.so.0.0.0", O_RDONLY|O_CLOEXEC) = 19
read(19, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\360\n\0\0\0\0\0"..., 832) = 832
fstat(19, {st_mode=S_IFREG|0755, st_size=7693168, ...}) = 0
mmap(NULL, 7945872, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 19, 0) = 0x7f88e0658000
mmap(0x7f88e0707000, 5890048, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0xaf000) = 0x7f88e0707000
mmap(0x7f88e0ca5000, 704512, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x64d000) = 0x7f88e0ca5000
mmap(0x7f88e0d51000, 385024, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x6f8000) = 0x7f88e0d51000
mmap(0x7f88e0daf000, 249488, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f88e0daf000
close(19) = 0
openat(AT_FDCWD, "/lib64/libtinfo.so.6", O_RDONLY|O_CLOEXEC) = 19
read(19, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\360\0\0\0\0\0\0"..., 832) = 832
fstat(19, {st_mode=S_IFREG|0755, st_size=265416, ...}) = 0
mmap(NULL, 260856, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 19, 0) = 0x7f88e0618000
mprotect(0x7f88e0627000, 180224, PROT_NONE) = 0
mmap(0x7f88e0627000, 110592, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0xf000) = 0x7f88e0627000
mmap(0x7f88e0642000, 65536, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x2a000) = 0x7f88e0642000
mmap(0x7f88e0653000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x3a000) = 0x7f88e0653000
close(19) = 0
openat(AT_FDCWD, "/usr/lib64/libfftw3.so.3", O_RDONLY|O_CLOEXEC) = 19
read(19, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@0\3\0\0\0\0\0"..., 832) = 832
fstat(19, {st_mode=S_IFREG|0755, st_size=2869000, ...}) = 0
mmap(NULL, 2872328, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 19, 0) = 0x7f88e035a000
mprotect(0x7f88e038d000, 2551808, PROT_NONE) = 0
mmap(0x7f88e038d000, 2318336, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x33000) = 0x7f88e038d000
mmap(0x7f88e05c3000, 229376, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x269000) = 0x7f88e05c3000
mmap(0x7f88e05fc000, 114688, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x2a1000) = 0x7f88e05fc000
close(19) = 0
openat(AT_FDCWD, "/lib64/libreadline.so.8", O_RDONLY|O_CLOEXEC) = 19
read(19, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@`\1\0\0\0\0\0"..., 832) = 832
fstat(19, {st_mode=S_IFREG|0755, st_size=338768, ...}) = 0
mmap(NULL, 346608, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 19, 0) = 0x7f88e0305000
mprotect(0x7f88e031b000, 217088, PROT_NONE) = 0
mmap(0x7f88e031b000, 176128, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x16000) = 0x7f88e031b000
mmap(0x7f88e0346000, 36864, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x41000) = 0x7f88e0346000
mmap(0x7f88e0350000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x4a000) = 0x7f88e0350000
mmap(0x7f88e0359000, 2544, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f88e0359000
close(19) = 0
openat(AT_FDCWD, "/usr/lib/gcc/x86_64-pc-linux-gnu/10.3.0/libgomp.so.1", O_RDONLY|O_CLOEXEC) = 19
read(19, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\226\0\0\0\0\0\0"..., 832) = 832
fstat(19, {st_mode=S_IFREG|0755, st_size=256512, ...}) = 0
mmap(NULL, 259536, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 19, 0) = 0x7f88e02c5000
mprotect(0x7f88e02ce000, 217088, PROT_NONE) = 0
mmap(0x7f88e02ce000, 167936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x9000) = 0x7f88e02ce000
mmap(0x7f88e02f7000, 45056, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x32000) = 0x7f88e02f7000
mmap(0x7f88e0303000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x3d000) = 0x7f88e0303000
close(19) = 0
openat(AT_FDCWD, "/lib64/libtinfow.so.6", O_RDONLY|O_CLOEXEC) = 19
read(19, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\360\0\0\0\0\0\0"..., 832) = 832
fstat(19, {st_mode=S_IFREG|0755, st_size=269544, ...}) = 0
mmap(NULL, 265080, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 19, 0) = 0x7f88e0284000
mprotect(0x7f88e0293000, 184320, PROT_NONE) = 0
mmap(0x7f88e0293000, 114688, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0xf000) = 0x7f88e0293000
mmap(0x7f88e02af000, 65536, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x2b000) = 0x7f88e02af000
mmap(0x7f88e02c0000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 19, 0x3b000) = 0x7f88e02c0000
close(19) = 0
......
......
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0xb5} ---
+++ killed by SIGSEGV +++
It seems to find ngspice.so, and loads readline.so, then later gets a SIGSEGV. It does seem like an upstream kicad/eeschema bug.