我正在尝试使用此设备树构建 Android Oreo:https://github.com/BirdSanctuary/device_xiaomi_mido。在我开始编译后不久,我出现以下错误
build/core/binary.mk:1459: error: device/xiaomi/mido/camera/QCamera2/Android.mk: camera.msm8953: C_INCLUDES must be under the source or output directories: /libstagefrighthw /mm-core/inc /libqservice.
有什么解决办法吗?
打开device/xiaomi/mido/camera/QCamera2/Android.mk并查找
LOCAL_C_INCLUDES += \
$(SRC_DISPLAY_HAL_DIR)/libqservice
SRC_DISPLAY_HAL_DIR
未在文件系统根目录中的任何操作系统中定义 /libqservcie
而不是像这样的地方:
./hardware/qcom/display/msm8909/libqservice
./hardware/qcom/display/msm8084/libqservice
./hardware/qcom/display/msm8994/libqservice
./hardware/qcom/display/msm8998/libqservice
./hardware/qcom/display/msm8226/libqservice
./hardware/qcom/display/msm8960/libqservice
./hardware/qcom/display/msm8996/libqservice
如您所见,您有许多不同的 HAL 模块的硬件选项。我不知道你需要哪一个。 您需要在 device/ 中的某个位置为您的供应商和主板特定文件定义它。
同样的故事适用于您的错误打印输出“喊叫”的其余目录。
您在 Android.mk 中未定义 make 变量
通常 Android 源代码包含不同的目标变体。
因此,您需要在开始构建之前选择一个。
这是设置。
第 1 步:使用 /build/envsetup.sh 中的 envsetup.sh 脚本初始化环境
源构建/envsetup.sh
第 2 步:选择午餐时要建立的目标。
午餐产品名称-构建变体
示例:
午餐 aosp_arm-eng
如果您不知道构建变体/目标变体,只需输入
lunch
命令,它将列出所有可以构建的可用变体。
第 3 步:现在开始构建。
制作-j16
注意:每次重启都需要遵循上述步骤。
像这样使用 LOCAL_C_INCLUDES += $(LOCAL_PATH)../../to/header/file/path/
请勿使用直接路径。