Java
如何在 FreeBSD 8.1 下建構 snappy-java?(建構錯誤)
我正在嘗試為 FreeBSD 8.1 建構 snappy-java 以將其與 cassandra 一起使用(沒有它就無法啟用列壓縮)。
嘗試從原始碼建構它並收到錯誤:
$ hg 複製 https://snappy-java.googlecode.com/hg/snappy-java $ cd snappy-java $ export JAVA_HOME=/usr/local/openjdk6 && gmake
該過程開始,但一段時間後我收到以下錯誤:
g++ -I/usr/local/openjdk6/include -Ilib/inc_mac -O2 -fPIC - fvisibility=hidden -Ilib/include -I"/usr/local/openjdk6/include/ freebsd" -Itarget/snappy-1.0.4 -o target/snappy-1.0.4-Default/ libsnappyjava.so 目標/snappy-1.0.4-Default/snappy-sinksource.o 目標/snappy-1.0.4-預設/snappy-stubs-internal.o 目標/ snappy-1.0.4-Default/snappy.o 目標/snappy-1.0.4-Default/ SnappyNative.o -shared -static /usr/bin/ld: /usr/lib/crtbeginT.o: 重定位 R_X86_64_32 不能 製作共享對象時使用;使用 -fPIC 重新編譯 /usr/lib/crtbeginT.o:無法讀取符號:錯誤值 gmake: *** [target/snappy-1.0.4-Default/libsnappyjava.so] 錯誤 1
所以 -fPIC 已經打開了……感謝任何幫助。謝謝
沒有它就無法啟用列壓縮
這並不完全正確。DeflateCompressor 在沒有 Snappy 庫的情況下仍然可用。您需要還是更喜歡 Snappy?如果是這樣,我會將Snappy 項目中的可下載 .jar 添加到您的類路徑中。無需執行您自己的建構。
嘗試從編譯器標誌中刪除 -static。您正在建構一個共享庫。