INTSourceChangelist:4241091 Availability: NoPublish Title: 构建配置属性页面 Crumbs: Description: 此为程序化生成的markdown页面。 Version: 4.21 ### 读/写属性 $ Type (ModuleType): 模块类型 $ BinariesSubFolder (String): 它是Binaries/PLATFORM文件夹的子文件夹,用于在构建DLL时放入此模块。它仅用于可搜索的模块,例如TargetPlatform或ShaderFormat。如果未将FindModules用于这些搜索,则不会找到任何模块。 $ OptimizeCode (CodeOptimization): 指定何时优化此模块的代码。 $ PrivatePCHHeaderFile (String): 此模块的显式私有PCH。这意味着该模块不使用共享PCH。 $ SharedPCHHeaderFile (String): 此模块提供的共享PCH的标头文件名。它必须是公用C++标头文件的有效相对路径。它仅适用于许多其他C++模块中包含的标头文件。 $ ShortName (String): 为此模块指定中间文件的中间目录,并为该文件指定其他名称。当存在路径长度限制时,这很有用。 $ PCHUsage (PCHUsageMode): 此模块使用预编译标头 $ bTreatAsEngineModule (Boolean): 此模块是否应视为引擎模块(例如,使用引擎定义、PCH、在DebugGame配置中启用优化的情况下编译等)。根据用于生成的汇编规则初始化为默认值。 $ bUseBackwardsCompatibleDefaults (Boolean): 是否使用此模块的向后兼容默认值。默认情况下,引擎模块始终使用最新的默认设置,而项目模块不使用默认设置(以便更轻松地迁移)。 $ bUseRTTI (Boolean): 使用运行时类型信息 $ bUseAVX (Boolean): 使用AVX指令 $ bEnableBufferSecurityChecks (Boolean): 启用缓冲区安全检查。通常应启用此属性,因为它可以防止严重的安全风险。 $ bEnableExceptions (Boolean): 启用异常处理 $ bEnableObjCExceptions (Boolean): 启用objective C异常处理 $ bEnableShadowVariableWarnings (Boolean): 启用阴影变量的警告 $ bEnableUndefinedIdentifierWarnings (Boolean): 在#if表达式中启用使用未定义辨识符的警告 $ bFasterWithoutUnity (Boolean): 如果设置为True并启用Unity构建,则此模块将在没有Unity的情况下构建。 $ MinSourceFilesForUnityBuildOverride (Int32): 在为该模块启用Unity构建之前,此模块中的源文件数。如果设置为-1以外的任何值,则会覆盖由由MinGameModuleSourceFilesForUnityBuild控制的默认设置 $ MinFilesUsingPrecompiledHeaderOverride (Int32): 如果它不为零,则覆盖BuildConfiguration.MinFilesUsingPrecompiledHeader。 $ bBuildLocallyWithSNDBS (Boolean): 模块使用#import,因此必须在编译时使用SN-DBS在本地构建 $ IsRedistributableOverride (Nullable<Boolean>): 此模块的重新分发覆盖标志。 $ bOutputPubliclyDistributable (Boolean): 即使模块上的代码/依赖项(即CarefullyRedist、NotForLicensees、NoRedist)不公开,此模块的输出是否可以公开分发。当要分发二进制文件而不是源代码时才应使用它。 $ WhitelistRestrictedFolders (List<String>): 在编译此二进制文件时可以引用但不传播受限文件夹名称的文件夹列表 $ bEnforceIWYU (Boolean): 将PCHUsage设置为ExplicitOrSharedPCH时强制实施“包括你使用的内容”规则。使用单块标头(例如Engine.h、UnrealEd.h等)将发出警告并检查是否首先包含与源文件匹配的标头。 $ bAddDefaultIncludePaths (Boolean): 是否添加模块的所有默认包含路径(例如Source/Public的Source/Classes文件夹、子文件夹)。 $ bPrecompile (Boolean): 是否预编译此模块。默认值为目标的bPrecompile标志。清除此标志可防止预编译该模块。 $ bUsePrecompiled (Boolean): 此模块是否使用预编译数据。对于从已安装的程序集创建的模块始终设置为True。 $ PublicIncludePathModuleNames (List<String>): 带有标头文件的模块名称列表(无需路径),需要由模块的公共标头访问,但不需要再“导入”或链接。 $ PublicDependencyModuleNames (List<String>): 公共依赖性模块名称列表(不需要路径)(自动包含私有/公共)。这些是公共源文件所需的模块。 $ PrivateIncludePathModuleNames (List<String>): 带有标头文件的模块名称列表(无需路径),需要由模块的私有代码文件访问,但不需要再“导入”或链接。 $ PrivateDependencyModuleNames (List<String>): 私有依赖性模块名称列表。这些是私有代码所依赖的模块,但公共include文件中没有任何依赖。 $ CircularlyReferencedDependentModules (List<String>): 它是遗留的,因此不会在新代码中使用。视为循环引用的模块依赖项列表。此模块必须已添加到公共或私有依赖模块列表中。 $ PublicSystemIncludePaths (List<String>): 系统/库include路径列表,通常用于外部(第三方)模块。在解析标头依赖项时未检查的公共稳定标头文件目录。 $ PublicIncludePaths (List<String>): (当前不需要此设置,因为可以从“Public”文件夹中搜索所有文件)公开给其他模块的include文件的所有路径列表 $ PrivateIncludePaths (List<String>): 此模块内部include文件的所有路径的列表,未公开给其他模块(至少有一个包含在“私有”路径中,如果要避免相对路径,可以添加更多) $ PublicLibraryPaths (List<String>): 系统/库路径列表(.lib文件的目录),通常用于外部(第三方)模块 $ PublicAdditionalLibraries (List<String>): 其他库的列表(包括扩展名的.lib文件的名称),通常用于外部(第三方)模块 $ PublicFrameworks (List<String>): XCode框架列表(iOS和MacOS) $ PublicWeakFrameworks (List<String>): 弱框架列表(用于OS版本转换) $ PublicAdditionalFrameworks (List<UEBuildFramework>): 其他框架的列表,通常用于Mac和iOS上的外部(第三方)模块 $ AdditionalBundleResources (List<UEBuildBundleResource>): 应复制到Mac或iOS应用捆绑包的其他资源的列表 $ PublicAdditionalShadowFiles (List<String>): 对于在远程计算机(例如iOS)上运行的构建,此列表包含为了可以成功链接应用程序而需要复制的其他文件。源/标头文件和PCH会自动复制。它通常只是预编译的第三方库依赖项列表。 $ PublicDelayLoadDLLs (List<String>): 延迟加载DLL列表,通常用于外部(第三方)模块 $ PrivateDefinitions (List<String>): 此模块的私有编译器定义 $ PublicDefinitions (List<String>): 此模块的公共编译器定义 $ DynamicallyLoadedModuleNames (List<String>): 此模块在运行时可能需要的附加模块 $ RuntimeDependencies (RuntimeDependencyList): 此模块在运行时依赖的文件列表。这些文件将与目标一起暂存。 $ AdditionalPropertiesForReceipt (ReceiptPropertyList): 应添加到构建回执的其他属性的列表 $ PrecompileForTargets (PrecompileTargetsType): 此模块预编译用于的目标 $ ExternalDependencies (List<String>): 受到修改就会使makefile失效的外部文件。相对路径是相对于.build.cs文件解析的。 $ bLegacyPublicIncludePaths (Nullable<Boolean>): 此模块是否相对于“公共”文件夹的根目录限定来自其他模块的包含标头。该设置会减少必须传递给编译器的搜索路径数量,从而提高性能并缩短编译器命令行长度。