gcc/g++/libstdc++
버전 6.3.1과 함께 제공되는 Fedora 25를 실행 중입니다. 나는 또한 libstdc++ 6.0.19
과 함께 제공되는 Anaconda 버전 4.3.1을 실행하고 있습니다. 내가 ("orange3 설치 PIP"말에 의해) 아나콘다에서 Orange3를 설치하면Orange3를 아나콘다에 설치 : 불일치 g ++ 및 libstdC++
는 일부 파일은 페도라 g ++로 컴파일하지만, 아나콘다에 연결되어 된 libstdC++ :
참고 출력의 세 번째 줄 :
$ ldd ~/anaconda3/lib/python3.6/site-packages/Orange/widgets/utils/_grid_density.cpython-36m-x86_64-linux-gnu.so
linux-vdso.so.1 (0x00007ffe9b5a2000)
libpython3.6m.so.1.0 => /home/marhoy/anaconda3/lib/libpython3.6m.so.1.0 (0x00007efc3a6ef000)
libstdc++.so.6 => /home/marhoy/anaconda3/lib/libstdc++.so.6 (0x00007efc3a3d9000)
libm.so.6 => /lib64/libm.so.6 (0x00007efc3a0ad000)
libgcc_s.so.1 => /home/marhoy/anaconda3/lib/libgcc_s.so.1 (0x00007efc39e97000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007efc39c79000)
libc.so.6 => /lib64/libc.so.6 (0x00007efc398b1000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007efc396ad000)
libutil.so.1 => /lib64/libutil.so.1 (0x00007efc394aa000)
librt.so.1 => /lib64/librt.so.1 (0x00007efc392a2000)
/lib64/ld-linux-x86-64.so.2 (0x000055a3c43d1000)
6.3.1과 6.0.19 사이에 차이가 있으므로 문제가 발생합니다. 내가 캐터 플롯 위젯을 사용하려고 할 때, 내가 얻을 :
_grid_density.cpython-36m-x86_64-linux-gnu.so: undefined symbol: __cxa_throw_bad_array_new_length
I LD_PRELOAD 페도라 된 libstdC++의 모든 것이 잘 작동하는 것 같다합니다. 그리고 Orange3를 Anaconda 외부에 설치하면 (pip3 install --user orange3 사용) 작동합니다.
내가 Orange3를 conda 저장소에서 설치하지 않는 이유는 그것이 구형이기 때문입니다.
So : Fedora libstdC++에 대해 Orange-files 링크를 만들려면 어떻게해야합니까?