偶爾看到BeyondCompare這款優秀的Windows平臺上的文件對比工具出了Linux版,因而抱着必定要在Linux上運行起來的想法開始了CentOS上的征程。php
簡單說一下操做系統,個人是CentOS 64bits version。這是最最重要的背景。linux
首先從http://www.scootersoftware.com/download.php下載Linux下的tar.gz文件包(版本號是3.3.8.16340),而後解壓並運行install.sh(最好是root權限),將安裝路徑設置爲/usr/local/bc,安裝完畢後將beyondcompare的bin路徑加入path, 簡單講就是在.cshrc or .bashrc中加入$path的設置,例如在csh中能夠set path=($path /usr/bin/bc/bin)便可c++
而後火燒眉毛的去運行bcompare。獲得的確實以下信息:緩存
/lib/ld-linux.so.2: bad ELF interpreter: No such file or directorybash
顯然是沒有這個文件。通常對付Linux下的錯誤,就是根據錯誤提示缺啥補啥。如今缺ld-linux.so.2,那就補一下唄。當時很奇怪爲啥是32位庫,感受應該是64bits纔對,那個應該是/lib64/ld-linux.so.2之類的文件名纔對,沒想那麼多,先運行yum -y install glibc.i686再說。工具
此次應該能夠看到bc的真面目了吧。再次激動的運行bcompare。此次出來的錯誤更多google
Some Shared Libraries were not foundspa
linux-gate.so.1 => (0×00989000)
libz.so.1 => /lib/libz.so.1 (0x00bd5000)
libqtc.so.1 => /home/peter/lib/beyondcompare/libqtc.so.1 (0×00110000)
libX11.so.6 => /usr/lib/libX11.so.6 (0×00626000)
librt.so.1 => /lib/librt.so.1 (0x009d0000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00ed4000)
libdl.so.2 => /lib/libdl.so.2 (0x0075f000)
libc.so.6 => /lib/libc.so.6 (0×00764000)
libqt-mt.so.3 => /home/peter/lib/beyondcompare/libqt-mt.so.3 (0xf708e000)
libXext.so.6 => not found
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x009d9000)
libm.so.6 => /lib/libm.so.6 (0x0091d000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00f37000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0×00947000)
/lib/ld-linux.so.2 (0x008fd000)
libXrender.so.1 => not found
libXrandr.so.2 => not found
libXcursor.so.1 => not found
libXinerama.so.1 => not found
libXft.so.2 => not found
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00ac4000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x0098a000)
libXext.so.6 => not found
libSM.so.6 => not found
libICE.so.6 => not found
libXau.so.6 => /usr/lib/libXau.so.6 (0×00967000)
libexpat.so.1 => /lib/libexpat.so.1 (0x00b5c000)操作系統
從提示中感受是缺qt3,因而問了問google,肯定一下答案是安裝qt3,想yum -y install qt3應該能夠work了。however,錯誤依舊,這是想起剛纔的疑惑,直接去file它的可執行文件/usr/local/bc/lib/beyondcompare/BCompare,果真它是32bit的,那就不用多說了,剛纔安裝的qt3是不匹配的,須要安裝qt3.i686才行(yum -y install qt3.i686)。blog
安裝qt3.i686完畢,運行bcomare,終於看到了久違的BeyondCompare。
剩下的事情各位看官自行解決吧。
此文中的錯誤信息提示來自google搜索結果,由於本人的terminal緩存的信息丟失了。最後再總結一下,beyondcompare沒有出64bit的linux版本,因此安裝所需的包必須是32bit的,這就是爲何必須安裝glibc.i686和qt3.i686的緣由。但願此文可以解決你遇到的問題。
本文轉自blogs.joysight.com之技術研發