ricochet-im / ricochet

Anonymous peer-to-peer instant messaging
https://ricochet.im/
Other
3.69k stars 401 forks source link

Ricochet fails to run with hardening flags on systems with VTV enabled #490

Open grubles opened 7 years ago

grubles commented 7 years ago
$ ricochet
VTV: PID=4138 PPID=4135 Looking for vtable 0x3400c35f3d0 in set (nil).
VTV: PID=4138 PPID=4135 *** Unable to verify vtable pointer (0x3400c35f3d0) in set ((nil)) *** 
VTV: PID=4138 PPID=4135   Backtrace: 
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libvtv.so.0(_Z30__vtv_log_verification_failurePKcb+0x7c)[0x3400e0d6b1c]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libvtv.so.0(_Z17__vtv_verify_failPPvPKv+0xb7)[0x3400e0d5a97]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libvtv.so.0(_Z24__VLTVerifyVtablePointerPPvPKv+0xcc)[0x3400e0d5dac]
ricochet(+0x21091)[0x702e4b1091]
/lib64/libc.so.6(__libc_start_main+0x114)[0x3400b4db754]
ricochet(__VLTprotect+0x39)[0x702e4d4cd9]
*** Unable to verify vtable pointer (0x3400c35f3d0) in set ((nil)) *** 
*** Potential vtable pointer corruption detected!!
 ***: ricochet terminated
======= Backtrace: =========
/lib64/libc.so.6(+0x780ef)[0x3400b5330ef]
/lib64/libc.so.6(__fortify_fail+0x4f)[0x3400b5c53cf]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libvtv.so.0(+0x69cb)[0x3400e0d59cb]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libvtv.so.0(+0x6b1a)[0x3400e0d5b1a]
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/libvtv.so.0(_Z24__VLTVerifyVtablePointerPPvPKv+0xcc)[0x3400e0d5dac]
ricochet(+0x21091)[0x702e4b1091]
/lib64/libc.so.6(__libc_start_main+0x114)[0x3400b4db754]
ricochet(__VLTprotect+0x39)[0x702e4d4cd9]
======= Memory map: ========
702e490000-702e659000 r-xp 00000000 08:03 9454937                        /usr/bin/ricochet
702e858000-702e85f000 r--p 001c8000 08:03 9454937                        /usr/bin/ricochet
702e85f000-702e862000 rw-p 001cf000 08:03 9454937                        /usr/bin/ricochet
702e862000-70304e8000 ---p 00000000 00:00 0 
70304e8000-703056b000 rw-p 00000000 00:00 0                              [heap]
33ffc000000-33ffc021000 rw-p 00000000 00:00 0 
33ffc021000-34000000000 ---p 00000000 00:00 0 
34003883000-3400388d000 r-xp 00000000 08:03 9452676                      /usr/lib64/libXrender.so.1.3.0
3400388d000-34003a8c000 ---p 0000a000 08:03 9452676                      /usr/lib64/libXrender.so.1.3.0
34003a8c000-34003a8d000 r--p 00009000 08:03 9452676                      /usr/lib64/libXrender.so.1.3.0
34003a8d000-34003a8e000 rw-p 0000a000 08:03 9452676                      /usr/lib64/libXrender.so.1.3.0
34003a8e000-34003a99000 r-xp 00000000 08:03 9452737                      /usr/lib64/libXcursor.so.1.0.2
34003a99000-34003c98000 ---p 0000b000 08:03 9452737                      /usr/lib64/libXcursor.so.1.0.2
34003c98000-34003c99000 r--p 0000a000 08:03 9452737                      /usr/lib64/libXcursor.so.1.0.2
34003c99000-34003c9a000 rw-p 0000b000 08:03 9452737                      /usr/lib64/libXcursor.so.1.0.2
34003c9a000-34003c9b000 ---p 00000000 00:00 0 
34003c9b000-3400449b000 rw-p 00000000 00:00 0 
34004530000-34004535000 r-xp 00000000 08:03 9448068                      /usr/lib64/libxcb-util.so.1.0.0
34004535000-34004734000 ---p 00005000 08:03 9448068                      /usr/lib64/libxcb-util.so.1.0.0
34004734000-34004735000 r--p 00004000 08:03 9448068                      /usr/lib64/libxcb-util.so.1.0.0
34004735000-34004736000 rw-p 00005000 08:03 9448068                      /usr/lib64/libxcb-util.so.1.0.0
34004736000-3400473a000 r-xp 00000000 08:03 13894222                     /lib64/libuuid.so.1.3.0
3400473a000-34004939000 ---p 00004000 08:03 13894222                     /lib64/libuuid.so.1.3.0
34004939000-3400493a000 r--p 00003000 08:03 13894222                     /lib64/libuuid.so.1.3.0
3400493a000-3400493b000 rw-p 00004000 08:03 13894222                     /lib64/libuuid.so.1.3.0
3400493b000-3400497f000 r-xp 00000000 08:03 9446967                      /usr/lib64/libfontconfig.so.1.8.0
3400497f000-34004b7e000 ---p 00044000 08:03 9446967                      /usr/lib64/libfontconfig.so.1.8.0
34004b7e000-34004b80000 r--p 00043000 08:03 9446967                      /usr/lib64/libfontconfig.so.1.8.0
34004b80000-34004b81000 rw-p 00045000 08:03 9446967                      /usr/lib64/libfontconfig.so.1.8.0
34004b81000-34004bc2000 r-xp 00000000 08:03 9452895                      /usr/lib64/libxkbcommon.so.0.0.0
34004bc2000-34004dc2000 ---p 00041000 08:03 9452895                      /usr/lib64/libxkbcommon.so.0.0.0
34004dc2000-34004dc4000 r--p 00041000 08:03 9452895                      /usr/lib64/libxkbcommon.so.0.0.0
34004dc4000-34004dc5000 rw-p 00043000 08:03 9452895                      /usr/lib64/libxkbcommon.so.0.0.0
34004dc5000-34004dcc000 r-xp 00000000 08:03 9452894                      /usr/lib64/libxkbcommon-x11.so.0.0.0
34004dcc000-34004fcc000 ---p 00007000 08:03 9452894                      /usr/lib64/libxkbcommon-x11.so.0.0.0
34004fcc000-34004fcd000 r--p 00007000 08:03 9452894                      /usr/lib64/libxkbcommon-x11.so.0.0.0
34004fcd000-34004fce000 rw-p 00008000 08:03 9452894                      /usr/lib64/libxkbcommon-x11.so.0.0.0
34004fce000-34004ff2000 r-xp 00000000 08:03 9452096                      /usr/lib64/libxcb-xkb.so.1.0.0
34004ff2000-340051f1000 ---p 00024000 08:03 9452096                      /usr/lib64/libxcb-xkb.so.1.0.0
340051f1000-340051f2000 r--p 00023000 08:03 9452096                      /usr/lib64/libxcb-xkb.so.1.0.0
340051f2000-340051f3000 rw-p 00024000 08:03 9452096                      /usr/lib64/libxcb-xkb.so.1.0.0
340051f3000-340051f5000 r-xp 00000000 08:03 9452105                      /usr/lib64/libxcb-xinerama.so.0.0.0
340051f5000-340053f5000 ---p 00002000 08:03 9452105                      /usr/lib64/libxcb-xinerama.so.0.0.0
340053f5000-340053f6000 r--p 00002000 08:03 9452105                      /usr/lib64/libxcb-xinerama.so.0.0.0
340053f6000-340053f7000 rw-p 00003000 08:03 9452105                      /usr/lib64/libxcb-xinerama.so.0.0.0
340053f7000-340053f9000 r-xp 00000000 08:03 9452537                      /usr/lib64/libxcb-keysyms.so.1.0.0
340053f9000-340055f8000 ---p 00002000 08:03 9452537                      /usr/lib64/libxcb-keysyms.so.1.0.0
340055f8000-340055f9000 r--p 00001000 08:03 9452537                      /usr/lib64/libxcb-keysyms.so.1.0.0
340055f9000-340055fa000 rw-p 00002000 08:03 9452537                      /usr/lib64/libxcb-keysyms.so.1.0.0
340055fa000-340055fd000 r-xp 00000000 08:03 9452090                      /usr/lib64/libxcb-shape.so.0.0.0
340055fd000-340057fc000 ---p 00003000 08:03 9452090                      /usr/lib64/libxcb-shape.so.0.0.0
340057fc000-340057fd000 r--p 00002000 08:03 9452090                      /usr/lib64/libxcb-shape.so.0.0.0
340057fd000-340057fe000 rw-p 00003000 08:03 9452090                      /usr/lib64/libxcb-shape.so.0.0.0
340057fe000-34005811000 r-xp 00000000 08:03 9452100                      /usr/lib64/libxcb-randr.so.0.1.0
34005811000-34005a11000 ---p 00013000 08:03 9452100                      /usr/lib64/libxcb-randr.so.0.1.0
34005a11000-34005a12000 r--p 00013000 08:03 9452100                      /usr/lib64/libxcb-randr.so.0.1.0
34005a12000-34005a13000 rw-p 00014000 08:03 9452100                      /usr/lib64/libxcb-randr.so.0.1.0
34005a13000-34005a15000 r-xp 00000000 08:03 9452095                      /usr/lib64/libxcb-shm.so.0.0.0
34005a15000-34005c15000 ---p 00002000 08:03 9452095                      /usr/lib64/libxcb-shm.so.0.0.0
34005c15000-34005c16000 r--p 00002000 08:03 9452095                      /usr/lib64/libxcb-shm.so.0.0.0
34005c16000-34005c17000 rw-p 00003000 08:03 9452095                      /usr/lib64/libxcb-shm.so.0.0.0
34005c17000-34005c1f000 r-xp 00000000 08:03 9452102                      /usr/lib64/libxcb-xfixes.so.0.0.0
34005c1f000-34005e1f000 ---p 00008000 08:03 9452102                      /usr/lib64/libxcb-xfixes.so.0.0.0
34005e1f000-34005e20000 r--p 00008000 08:03 9452102                      /usr/lib64/libxcb-xfixes.so.0.0.0
34005e20000-34005e21000 rw-p 00009000 08:03 9452102                      /usr/lib64/libxcb-xfixes.so.0.0.0
34005e21000-34005e28000 r-xp 00000000 08:03 9452098                      /usr/lib64/libxcb-sync.so.1.0.0
34005e28000-34006027000 ---p 00007000 08:03 9452098                      /usr/lib64/libxcb-sync.so.1.0.0
34006027000-34006028000 r--p 00006000 08:03 9452098                      /usr/lib64/libxcb-sync.so.1.0.0
34006028000-34006029000 rw-p 00007000 08:03 9452098                      /usr/lib64/libxcb-sync.so.1.0.0
34006029000-3400602f000 r-xp 00000000 08:03 9452536                      /usr/lib64/libxcb-icccm.so.4.0.0
3400602f000-3400622e000 ---p 00006000 08:03 9452536                      /usr/lib64/libxcb-icccm.so.4.0.0
3400622e000-3400622f000 r--p 00005000 08:03 9452536                      /usr/lib64/libxcb-icccm.so.4.0.0
3400622f000-34006230000 rw-p 00006000 08:03 9452536                      /usr/lib64/libxcb-icccm.so.4.0.0
34006230000-34006234000 r-xp 00000000 08:03 9453257                      /usr/lib64/libxcb-image.so.0.0.0
34006234000-34006433000 ---p 00004000 08:03 9453257                      /usr/lib64/libxcb-image.so.0.0.0
34006433000-34006434000 r--p 00003000 08:03 9453257                      /usr/lib64/libxcb-image.so.0.0.0
34006434000-34006435000 rw-p 00004000 08:03 9453257                      /usr/lib64/libxcb-image.so.0.0.0
34006435000-3400644e000 r-xp 00000000 08:03 9452159                      /usr/lib64/libICE.so.6.3.0
3400644e000-3400664e000 ---p 00019000 08:03 9452159                      /usr/lib64/libICE.so.6.3.0
3400664e000-3400664f000 r--p 00019000 08:03 9452159                      /usr/lib64/libICE.so.6.3.0
3400664f000-34006650000 rw-p 0001a000 08:03 9452159                      /usr/lib64/libICE.so.6.3.0
34006650000-34006653000 rw-p 00000000 00:00 0 
34006653000-3400665b000 r-xp 00000000 08:03 9452161                      /usr/lib64/libSM.so.6.0.1
3400665b000-3400685a000 ---p 00008000 08:03 9452161                      /usr/lib64/libSM.so.6.0.1
3400685a000-3400685b000 r--p 00007000 08:03 9452161                      /usr/lib64/libSM.so.6.0.1
3400685b000-3400685c000 rw-p 00008000 08:03 9452161                      /usr/lib64/libSM.so.6.0.1
3400685c000-3400685f000 r-xp 00000000 08:03 9452538                      /usr/lib64/libxcb-render-util.so.0.0.0
3400685f000-34006a5f000 ---p 00003000 08:03 9452538                      /usr/lib64/libxcb-render-util.so.0.0.0
34006a5f000-34006a60000 r--p 00003000 08:03 9452538                      /usr/lib64/libxcb-render-util.so.0.0.0
34006a60000-34006a61000 rw-p 00004000 08:03 9452538                      /usr/lib64/libxcb-render-util.so.0.0.0
34006a61000-34006a71000 r-xp 00000000 08:03 9452103                      /usr/lib64/libxcb-render.so.0.0.0
34006a71000-34006c71000 ---p 00010000 08:03 9452103                      /usr/lib64/libxcb-render.so.0.0.0
34006c71000-34006c72000 r--p 00010000 08:03 9452103                      /usr/lib64/libxcb-render.so.0.0.0
34006c72000-34006c73000 rw-p 00011000 08:03 9452103                      /usr/lib64/libxcb-render.so.0.0.0
34006c73000-34006c83000 r-xp 00000000 08:03 9452732                      /usr/lib64/libXi.so.6.1.0
34006c83000-34006e82000 ---p 00010000 08:03 9452732                      /usr/lib64/libXi.so.6.1.0
34006e82000-34006e83000 r--p 0000f000 08:03 9452732                      /usr/lib64/libXi.so.6.1.0
34006e83000-34006e84000 rw-p 00010000 08:03 9452732                      /usr/lib64/libXi.so.6.1.0
34006e84000-34006f21000 r-xp 00000000 08:03 9454292                      /usr/lib64/libQt5XcbQpa.so.5.6.2
34006f21000-34006f28000 rw-p 0009c000 08:03 9454292                      /usr/lib64/libQt5XcbQpa.so.5.6.2
34006f28000-340070b6000 r--p 00000000 08:03 9841954                      /usr/lib64/locale/locale-archive
340070b6000-340070cb000 r-xp 00000000 08:03 9452112                      /usr/lib64/libbsd.so.0.8.2
340070cb000-340072cb000 ---p 00015000 08:03 9452112                      /usr/lib64/libbsd.so.0.8.2
340072cb000-340072cc000 r--p 00015000 08:03 9452112                      /usr/lib64/libbsd.so.0.8.2
340072cc000-340072cd000 rw-p 00016000 08:03 9452112                      /usr/lib64/libbsd.so.0.8.2
340072cd000-340072ce000 rw-p 00000000 00:00 0 
340072ce000-340072d4000 r-xp 00000000 08:03 9440073                      /usr/lib64/libXdmcp.so.6.0.0
340072d4000-340074d3000 ---p 00006000 08:03 9440073                      /usr/lib64/libXdmcp.so.6.0.0
340074d3000-340074d4000 r--p 00005000 08:03 9440073                      /usr/lib64/libXdmcp.so.6.0.0
340074d4000-340074d5000 rw-p 00006000 08:03 9440073                      /usr/lib64/libXdmcp.so.6.0.0
340074d5000-340074d8000 r-xp 00000000 08:03 9448325                      /usr/lib64/libXau.so.6.0.0
340074d8000-340076d7000 ---p 00003000 08:03 9448325                      /usr/lib64/libXau.so.6.0.0
340076d7000-340076d8000 r--p 00002000 08:03 9448325                      /usr/lib64/libXau.so.6.0.0
340076d8000-340076d9000 rw-p 00003000 08:03 9448325                      /usr/lib64/libXau.so.6.0.0
340076d9000-340076e9000 r-xp 00000000 08:03 13894216                     /lib64/libbz2.so.1.0.6
340076e9000-340078e8000 ---p 00010000 08:03 13894216                     /lib64/libbz2.so.1.0.6
340078e8000-340078e9000 r--p 0000f000 08:03 13894216                     /lib64/libbz2.so.1.0.6
340078e9000-340078ea000 rw-p 00010000 08:03 13894216                     /lib64/libbz2.so.1.0.6
340078ea000-3400792e000 r-xp 00000000 08:03 13893896                     /lib64/libpcre.so.1.2.6
3400792e000-34007b2d000 ---p 00044000 08:03 13893896                     /lib64/libpcre.so.1.2.6
34007b2d000-34007b2e000 r--p 00043000 08:03 13893896                     /lib64/libpcre.so.1.2.6
34007b2e000-34007b2f000 rw-p 00044000 08:03 13893896                     /lib64/libpcre.so.1.2.6
34007b2f000-34007b40000 r-xp 00000000 08:03 9452533                      /usr/lib64/libdrm.so.2.4.0
34007b40000-34007d3f000 ---p 00011000 08:03 9452533                      /usr/lib64/libdrm.so.2.4.0
34007d3f000-34007d40000 r--p 00010000 08:03 9452533                      /usr/lib64/libdrm.so.2.4.0
34007d40000-34007d41000 rw-p 00011000 08:03 9452533                      /usr/lib64/libdrm.so.2.4.0
34007d41000-34007d46000 r-xp 00000000 08:03 9452700                      /usr/lib64/libXxf86vm.so.1.0.0
34007d46000-34007f45000 ---p 00005000 08:03 9452700                      /usr/lib64/libXxf86vm.so.1.0.0
34007f45000-34007f46000 r--p 00004000 08:03 9452700                      /usr/lib64/libXxf86vm.so.1.0.0
34007f46000-34007f47000 rw-p 00005000 08:03 9452700                      /usr/lib64/libXxf86vm.so.1.0.0
34007f47000-34007f4b000 r-xp 00000000 08:03 9452101                      /usr/lib64/libxcb-dri2.so.0.0.0
34007f4b000-3400814b000 ---p 00004000 08:03 9452101                      /usr/lib64/libxcb-dri2.so.0.0.0
3400814b000-3400814c000 r--p 00004000 08:03 9452101                      /usr/lib64/libxcb-dri2.so.0.0.0
3400814c000-3400814d000 rw-p 00005000 08:03 9452101                      /usr/lib64/libxcb-dri2.so.0.0.0
3400814d000-3400816d000 r-xp 00000000 08:03 9452093                      /usr/lib64/libxcb-glx.so.0.0.0
3400816d000-3400836d000 ---p 00020000 08:03 9452093                      /usr/lib64/libxcb-glx.so.0.0.0
3400836d000-3400836f000 r--p 00020000 08:03 9452093                      /usr/lib64/libxcb-glx.so.0.0.0
3400836f000-34008370000 rw-p 00022000 08:03 9452093                      /usr/lib64/libxcb-glx.so.0.0.0
34008370000-340083a1000 r-xp 00000000 08:03 9452084                      /usr/lib64/libxcb.so.1.1.0
340083a1000-340085a0000 ---p 00031000 08:03 9452084                      /usr/lib64/libxcb.so.1.1.0
340085a0000-340085a1000 r--p 00030000 08:03 9452084                      /usr/lib64/libxcb.so.1.1.0
340085a1000-340085a2000 rw-p 00031000 08:03 9452084                      /usr/lib64/libxcb.so.1.1.0
340085a2000-340086f7000 r-xp 00000000 08:03 9451983                      /usr/lib64/libX11.so.6.3.0
340086f7000-340088f6000 ---p 00155000 08:03 9451983                      /usr/lib64/libX11.so.6.3.0
340088f6000-340088f9000 r--p 00154000 08:03 9451983                      /usr/lib64/libX11.so.6.3.0
340088f9000-340088fd000 rw-p 00157000 08:03 9451983                      /usr/lib64/libX11.so.6.3.0
340088fd000-340088fe000 r-xp 00000000 08:03 9448069                      /usr/lib64/libX11-xcb.so.1.0.0
340088fe000-34008afd000 ---p 00001000 08:03 9448069                      /usr/lib64/libX11-xcb.so.1.0.0
34008afd000-34008afe000 r--p 00000000 08:03 9448069                      /usr/lib64/libX11-xcb.so.1.0.0
34008afe000-34008aff000 rw-p 00001000 08:03 9448069                      /usr/lib64/libX11-xcb.so.1.0.0
34008aff000-34008b04000 r-xp 00000000 08:03 9452677                      /usr/lib64/libXfixes.so.3.1.0
34008b04000-34008d04000 ---p 00005000 08:03 9452677                      /usr/lib64/libXfixes.so.3.1.0
34008d04000-34008d05000 r--p 00005000 08:03 9452677                      /usr/lib64/libXfixes.so.3.1.0
34008d05000-34008d06000 rw-p 00006000 08:03 9452677                      /usr/lib64/libXfixes.so.3.1.0
34008d06000-34008d08000 r-xp 00000000 08:03 9450693                      /usr/lib64/libXdamage.so.1.1.0
34008d08000-34008f07000 ---p 00002000 08:03 9450693                      /usr/lib64/libXdamage.so.1.1.0
34008f07000-34008f08000 r--p 00001000 08:03 9450693                      /usr/lib64/libXdamage.so.1.1.0
34008f08000-34008f09000 rw-p 00002000 08:03 9450693                      /usr/lib64/libXdamage.so.1.1.0
34008f09000-34008f1c000 r-xp 00000000 08:03 9448950                      /usr/lib64/libXext.so.6.4.0
34008f1c000-3400911c000 ---p 00013000 08:03 9448950                      /usr/lib64/libXext.so.6.4.0
3400911c000-3400911d000 r--p 00013000 08:03 9448950                      /usr/lib64/libXext.so.6.4.0
3400911d000-3400911e000 rw-p 00014000 08:03 9448950                      /usr/lib64/libXext.so.6.4.0
3400911e000-34009148000 r-xp 00000000 08:03 9452990                      /usr/lib64/libglapi.so.0.0.0
34009148000-34009348000 ---p 0002a000 08:03 9452990                      /usr/lib64/libglapi.so.0.0.0
34009348000-3400934c000 r--p 0002a000 08:03 9452990                      /usr/lib64/libglapi.so.0.0.0
3400934c000-3400934d000 rw-p 0002e000 08:03 9452990                      /usr/lib64/libglapi.so.0.0.0
3400934d000-3400934e000 rw-p 00000000 00:00 0 
3400934e000-34009379000 r-xp 00000000 08:03 9447553                      /usr/lib64/libexpat.so.1.6.2
34009379000-34009578000 ---p 0002b000 08:03 9447553                      /usr/lib64/libexpat.so.1.6.2
34009578000-3400957b000 r--p 0002a000 08:03 9447553                      /usr/lib64/libexpat.so.1.6.2Aborted

ricochet was built from the "booboo" gentoo overlay.

fkoester commented 7 years ago

Same problem here on Gentoo, without hardened.

fkoester commented 7 years ago

Ok, I managed to fix this by disabling ricochets makefile own hardening compiler flags by setting CONFIG+=no-hardened. This is my full ebuild, tested with ricochet-1.1.4:

# Distributed under the terms of the GNU General Public License v2
# $Header: $
#
# Not suitable for chatrooms but certainly better for one-on-one conversations
# than anything that goes through servers.      --lynX 2015
#
# http://youbroketheinternet.org

EAPI=6

DESCRIPTION="End-to-end-encrypted instant messaging UI using Tor hidden services"
HOMEPAGE="https://ricochet.im"
LICENSE="BSD GPL-2"

inherit qmake-utils
SRC_URI="https://ricochet.im/releases/1.1.4/ricochet-1.1.4-src.tar.bz2"

KEYWORDS="~amd64 ~arm ~ppc64 ~x86"
SLOT="0"
IUSE=""

DEPEND="
        virtual/pkgconfig
        dev-qt/qtcore:5
        dev-qt/qtmultimedia:5
        dev-qt/qtquickcontrols:5
        dev-qt/qtnetwork:5
        dev-qt/linguist-tools:5
        dev-libs/protobuf
        dev-libs/openssl"
RDEPEND="${DEPEND}
        net-misc/tor"

src_configure() {
        eqmake5 ${PN}.pro DEFINES+=RICOCHET_NO_PORTABLE CONFIG+=release CONFIG+=no-hardened
}

src_install() {
        dobin "${S}/ricochet"
        doicon -s 48x48 "${S}/icons/ricochet.png"
        doicon -s scalable "${S}/icons/ricochet.svg"
        domenu "${S}/src/ricochet.desktop"
}

Using this, also a lot of compiler warnings disappear.

Still don't know why the hardened build failed with "Unable to verify vtable pointer", though. My gcc is built with enabled vtv (virtual table verification) support:

sys-devel/gcc-4.9.4::gentoo was built with the following:
USE="cxx fortran (multilib) nls nptl openmp sanitize vtv (-altivec) (-awt) -cilk -debug -doc (-fixed-point) -gcj -go -graphite (-hardened) (-libssp) -nopie -nossp -objc -objc++ -objc-gc -regression-test -vanilla" ABI_X86="64"
special commented 7 years ago

The issue here might be that ricochet just doesn't work with -fvtable-verify=std. It doesn't exist on most systems because it requires system-level support outside the compiler.

It would not surprise me if Qt breaks under VTV. Seeing the full backtrace out of a debug build would be interesting.