从文件夹中排除 cpp 而不删除

Exclude cpp from folder without deleting

本文关键字:删除 cpp 排除 文件夹      更新时间:2023-10-16

我目前正在为Android应用程序使用JNI进行Java项目。我的项目需要使用外部库,这些库以 .h/.cpp 文件的形式存储在我的计算机上,在项目文件夹之外。

我通过创建"链接文件夹"包含了包含所需文件的文件夹。我的问题是这些文件夹还包含不需要包含的文件。这些文件也在编译中,尽管事实上我没有在我的 Android.mk 中提到它们

我尝试使用属性 -> C/C++ 构建 -> 从构建中排除来手动排除它们,但它不起作用,我收到来自日食的 NullPointer 错误。

请问我该怎么办?谢谢。

如果你想编译目录中的大部分文件,只排除其中的一些文件,你可以使用wildcard,然后排除文件,filter-out

# set SRC_FILES_LIST to all the .cpp files in $(LOCAL_PATH)/foo/bar/
SRC_FILES_LIST := $(wildcard $(LOCAL_PATH)/foo/bar/*.cpp)
# exclude $(LOCAL_PATH)/foo/bar/baz.cpp
SRC_FILES_LIST := $(filter-out $(LOCAL_PATH)/foo/bar/baz.cpp, $(SRC_FILES_LIST))
# set LOCAL_SRC_FILES to the files in SRC_FILES_LIST, without the initial $(LOCAL_PATH)/
LOCAL_SRC_FILES := $(SRC_FILES_LIST:$(LOCAL_PATH)/%=%)