我正在尝试编译第三方c ++项目,该项目表示它是用于我的Windows PC上的64位Ubuntu和cygwin,并且在制作项目时遇到以下错误:
BuildPrefix.mak:212: *** Invalid configuration Unable to determine compiler version.. Stop.
我很确定是makefile会抛出这个错误,但我不确定为什么或如何修复它。 makefile非常大,但这里是抛出错误的行:
# Validate we built the same as we received. Anything else is invalid.
ifneq ($(ACTIV_BUILD_OPTIONS),$(__ACTIV_BUILD_OPTIONS_VALIDATION))
$(error Invalid configuration $(CFG))
endif
是在它做了一堆我不确定的事情之后发生的:
# Optional options field?
ifeq($(CFG_LIST_LENGTH),5) ACTIV_BUILD_OPTIONS:= $(呼叫字,4,$(CFG_LIST)) ACTIV_CONFIGURATION_TYPE:= $(呼叫字,5,$(CFG_LIST))
# C++11?
ifneq ($(call findstring,cxx11,$(ACTIV_BUILD_OPTIONS)),)
ACTIV_CXX11 := 1
__ACTIV_BUILD_OPTIONS_VALIDATION := $(call merge,-,$(__ACTIV_BUILD_OPTIONS_VALIDATION) cxx11)
endif
# STLport?
ifneq ($(call findstring,stlport,$(ACTIV_BUILD_OPTIONS)),)
IS_STLPORT := 1
__ACTIV_BUILD_OPTIONS_VALIDATION := $(call merge,-,$(__ACTIV_BUILD_OPTIONS_VALIDATION) stlport)
endif
# vstring?
ifneq ($(call findstring,vstring,$(ACTIV_BUILD_OPTIONS)),)
ACTIV_STRING_IMPLEMENTATION := vstring
__ACTIV_BUILD_OPTIONS_VALIDATION := $(call merge,-,$(__ACTIV_BUILD_OPTIONS_VALIDATION) $(ACTIV_STRING_IMPLEMENTATION))
endif
# libc++?
ifneq ($(call findstring,libcxx,$(ACTIV_BUILD_OPTIONS)),)
__ACTIV_BUILD_OPTIONS_VALIDATION := $(call merge,-,$(__ACTIV_BUILD_OPTIONS_VALIDATION) libcxx)
ACTIV_LIBCXX := 1
endif
# Boost string?
ifneq ($(call findstring,bstring,$(ACTIV_BUILD_OPTIONS)),)
ACTIV_STRING_IMPLEMENTATION := bstring
__ACTIV_BUILD_OPTIONS_VALIDATION := $(call merge,-,$(__ACTIV_BUILD_OPTIONS_VALIDATION) $(ACTIV_STRING_IMPLEMENTATION))
endif
Theres还有很多文件,所以请告诉我是否应该发布更多内容,任何提示/线索/可能的行动方案将不胜感激。