如果在NDK編譯的時候遇到No rule to make target needed by *.o 請抽空看看這篇文章

由於平時寫代碼不小心,多半都是copy paste ,導致了一些自己不容易看出來的問題。

比如我之前有寫soundTouch的JNI 在這個裏面我有將兩個lib 一個動態的一個靜態的都放到 了一個Android.mk中

進行編譯,但是發現莫名奇妙的報了個

“No rule to make target”

的錯誤,我找了大概有大半個小時才找到原因,就是我在一個Android.mk中聲明瞭兩個LOCAL_PATH變量導致ndk-build的時候

出現了語法上的錯誤,所以大家寫Android.mk的時候一定要小心。

另外也有可能是在寫某個變量事後面多加了個空格什麼的,也會導致這個問題,總之要細心。

LOCAL_PATH在一個Android.mk文件中只能聲明一個,而且CLEAR_VARS是不會清除LOCAL_PATH變量的,所以不用擔心

在上面lib中定義的LOCAL_PATH會在下面的lib中用不了了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章