मेरे पास कुछ * .cpp स्रोत फ़ाइलें हैं और कुछ * .s एआरएम असेंबलर फ़ाइलें मैं अपने एंड्रॉइड.एमके फ़ाइल में इकट्ठा करना और लिंक करना चाहता हूं (ndk-build स्क्रिप्ट चलाकर)।एंड्रॉइड.एमके - एआरएम असेंबलर फाइलों को इकट्ठा करने और लिंक करने के लिए कैसे करें
मेरे Android.mk फ़ाइल इस तरह दिखता है:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_ARM_MODE := arm
LOCAL_MODULE := libTestJNI
LOCAL_SRC_FILES := Test.cpp TestAS_gas4.s
LOCAL_CFLAGS := -DHAVE_CONFIG_H -DFPM_ARM -ffast-math -O3 -DOPT_ARM
LOCAL_LDLIBS += -llog
include $(BUILD_SHARED_LIBRARY)
दुर्भाग्य * .s फ़ाइल मान्यता प्राप्त नहीं है। ndk-build कहता है:
Gdbserver : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver
Gdbsetup : libs/armeabi/gdb.setup
make: *** No rule to make target `/cygdrive/c/projects/TestAS_gas4.s', needed by `/cygdrive/c/projects/obj/local/armeabi/objs-debug/libTestJNI/TestAS_gas4.o'. Stop.
"सामान्य" मेकफ़ाइल में मुझे नियम में "as" का उपयोग करके इकट्ठा करना होगा। एंड्रॉइड.एमके फाइलों में यह कैसे किया जाता है?
/किम
शर्मिंदगी पसीना नहीं आता। हम सभी समय-समय पर ऐसी चीजें करते हैं। – wallyk