2013-10-12 88 views
4

在我的JNI目錄中,我運行以下命令:如何建立libvpx靜態庫

$ ./libvpx/configure --target=armv7-android-gcc --disable-examples --sdk-path=/home/peter/adt/android-ndk-r9/ 

這導致libvpx產生Android.mk /建設/ make目錄

接下來,我創建Android.mk在JNI目錄:

LOCAL_PATH := $(call my-dir) 
include $(CLEAR_VARS) 
include libvpx/build/make/Android.mk 

當我運行NDK建造,它結束了創建libvpx.so。

但是,我真的很想創建一個靜態庫。

我開始各地跑了一個額外的標誌配置:

$ ./libvpx/configure --target=armv7-android-gcc --disable-examples --sdk-path=/home/peter/adt/android-ndk-r9/ --enable-static 

但是,運行NDK建造仍然導致產生libvpx.so。

是否有任何知道如何配置libvpx來創建靜態庫?預先感謝您的幫助。

回答

1

我能夠成功地構建一個arm靜態庫,儘管我還沒有將它與Android應用程序集成,因爲我將libvpx構建爲另一個本地庫的組件。

請注意,在我的情況下,Android.mk已經存在於目錄樹中,並且不受配置腳本的影響,這顯然與您的體驗相反。要建立靜態庫,我只是調用配置,然後做出:

$ make clean 
$ ./configure --target=armv7-android-gcc --disable-examples --sdk-path=/home/me/android-ndk-r9b/ 
$ make 

在我來說,我不得不做一個乾淨的構建,因爲我已經從早期版本的嘗試,否則將破壞構建留下一些殘餘。

結果是libvpx.a和libvpx_g.a。