Связывание libcutils с собственным исполняемым файлом

Я хочу, чтобы мой исполняемый файл мог вызывать функции, поддерживаемые libcuils - например, property_get(...),

В Android.mk у меня есть:LOCAL_LDLIBS:=-lcutils

ndk-build возвращает: неопределенная ссылка на property_get

Добавление default.properties target=android-9 не помогло

Я использую Android-ndk-R8e на Ubuntu.

1 ответ

libcutils.so не является частью официального нативного API, он не распространяется с NDK. Вы можете получить его с любого устройства или даже с эмулятора, и он достаточно стабилен для всех версий и модов, поэтому я не отговариваю вас от его использования.

С другой стороны, компоновщик обычно говорит

ld: error: cannot find -lcutils
collect2: ld returned 1 exit status

Если бы это сказал undefined reference, он, вероятно, нашел libcutils.so где-то на своем пути поиска. Возможно, это была неправильная библиотека. Может быть, вы установили LOCAL_LDLIBS для статической библиотеки в вашем Android.mk, и поэтому она игнорируется.

LOCAL_LDLIBS актуально только для

include $(BUILD_SHARED_LIBRARY)

или же

include $(BUILD_EXECUTABLE)
Другие вопросы по тегам