我正在運行Fedora 25,它隨附gcc/g++/libstdc++
版本6.3.1。 我也在運行Anaconda 4.3.1版本,它附帶libstdc++ 6.0.19
。在Anaconda中安裝Orange3:不匹配g ++和libstdC++
當我蟒蛇下安裝Orange3(說「PIP安裝orange3」),一些文件被編譯與軟呢帽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
如果我LD_PRELOAD軟呢帽的libstdC++,一切似乎都正常工作。 如果我在Anaconda外面安裝Orange3(通過使用pip3安裝--user orange3),它也可以工作。
我沒有從conda存儲庫安裝Orange3的原因是因爲它已經過時。
所以:如何使我的Fedora libstdC++的橙色文件鏈接?