zl程序教程

您现在的位置是:首页 >  其它

当前栏目

Android12之报错:error: use of typeid requires -frtti

报错 Error of use requires Android12
2023-09-14 09:09:54 时间

1.报错:

1.Android中使用C++的typeid报错

报错如下:
error: use of typeid requires -frtti

2.解决

# emacs Android.bp
cc_binary {
    name: "test_01",
    srcs: ["typeid.cpp"],

    shared_libs: [
        "libutils",
        "libcutils",
        "liblog",
    ],
	rtti: true,
    cflags: [
        "-fexceptions",
        "-frtti",
    ],
}


Or
# emacs Android.mk
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := typeid.cpp
LOCAL_MODULE := test_01

LOCAL_MODULE_TAGS := optional
LOCAL_SHARED_LIBRARIES := libutils libcutils liblog

LOCAL_CFLAGS := -fexceptions -frtti
include $(BUILD_EXECUTABLE)
# emacs typeid.cpp
#include <stdio.h>
#include <utils/Log.h>
#include<typeinfo>

int main(){ 
	int dd;
	ALOGE("xxx------------->%s(), line = %d, typeid(dd).name() = %s",__FUNCTION__,__LINE__,typeid(dd).name());
	return 0;
}