背景
單細(xì)胞分許需要的其他軟件或R包都通過(guò)conda安裝好了,最后只剩CellPhoneDB了。有了iTALK的經(jīng)驗(yàn)之后,我有了一點(diǎn)信心:報(bào)錯(cuò)不要緊,我一個(gè)一個(gè)解決。
第一步,直接安裝,報(bào)錯(cuò)
按照老師給的命令直接進(jìn)行安裝:
pip install cellphonedb #安裝python包CellPhoneDB
然后就報(bào)錯(cuò)了,如下:
第二步,分析問(wèn)題+試錯(cuò)
報(bào)錯(cuò)信息刷屏了,看不完,一堆關(guān)于hdf5的warning,最后面這一部分還說(shuō)了error:““fatal error:hdf5.h:No such file or directory”,那我就安裝hdf5,先conda找一下有沒(méi)有hdf5,如下:
這個(gè)命令多試了幾次,網(wǎng)絡(luò)通了,找到如下:
然后安裝:
3個(gè)done表示安裝完成,然后我重新運(yùn)行pip install cellphonedb,還是報(bào)錯(cuò)呢,如下:
但hdf5是安裝成功了,因?yàn)槲襥mport了一下,在python里可以進(jìn)去,沒(méi)報(bào)錯(cuò):
雖然跟上次報(bào)錯(cuò)不太一樣了,但還是有,而且最后還是rolling back uninstall of h5py,我推斷還是跟h5py有關(guān),多半是什么亂起八糟的依賴(lài)沒(méi)搞定,可惜不能conda庫(kù)里沒(méi)有cellphonedb包,不然conda安裝絕對(duì)是最佳選項(xiàng),好吧停止幻想,繼續(xù)解決問(wèn)題。
另外,報(bào)錯(cuò)信息刷屏了,看不完,這不利于我檢查到底哪里有錯(cuò)誤,特別是第一次開(kāi)始出現(xiàn)錯(cuò)誤是在哪里啊?最后說(shuō)“check logs for full command output”,那我怎么check啊,我就把結(jié)果輸出到out文件里,去cat里面的error:
都只跟h5py有關(guān)啊。然后上網(wǎng)搜索,有一篇說(shuō)是沒(méi)安裝cython的問(wèn)題:

我的error里沒(méi)有說(shuō)cython的事兒(因?yàn)槲襣rep了整個(gè)日志的嘛),但是我在python里找了一下確實(shí)沒(méi)有cython:
死馬當(dāng)活馬醫(yī),反正只是多裝一個(gè)cython而已。于是我就在Linux里先conda裝 cython,再conda裝 h5py,最后pip install cellphonedb,竟然一切正常了:
cellphonedb確實(shí)可以用了:
哈哈。