VS2008重新编译LINK : E:/XXXX/Debug/Win32Console.exe not found or not built by the last incremental link; performing full link问题

本文解决了一个关于使用Visual Studio 2008创建Win32控制台应用程序时出现的编译问题,即生成了两个Debug目录,并解释了如何通过修改配置属性来解决这个问题。

Status:

用VS2008创建一个Win32 Console Application,编译后生成两个Debug目录,一个在项目所属的Solution下,这个Debug中会生成.exe等类型程序结果文件。另外的一个在Project的目录中,这个Debug中包含pdb等文件,但是没有生成.exe等程序结果文件。

 

Condition:

当再次重新编译项目时,出现如题的问题。

 

Cause:

引起这个错误的根源在于Microsoft的VS的两个配置项配置冲突造成的: 配置1:Configuration Properties->General->Output Directory默认配置是$(SolutionDir)$(ConfigurationName) 配置2:Configuration Properties->Linker->General->Output Directory默认配置是$(OutDir)/$(ProjectName).exe 上述的两项配置是冲突的。所以在你重新编译的时候这个错误就出现了

 

Solution:

在project的property配置窗口中:Configuration Properties->General:把Output Directory从$(SolutionDir)$(ConfigurationName)改成$(ProjectDir)$(ConfigurationName)

### 问题分析 在 Android 构建过程中,禁用 AAPT2 后出现 `resource android:attr/colorError not found` 错误,通常表明项目中引用了 Android 框架资源,但构建工具无法正确解析这些资源。此问题可能与 Gradle 插件版本、Android SDK 版本或资源合并逻辑有关。 ### 可能原因与解决方案 #### 确保使用兼容的 Gradle 插件版本 某些旧版 Gradle 插件(如 3.x)不支持直接引用 Android 10(API 29)及以上版本中的资源属性,例如 `android:attr/colorError`。升级到较新的插件版本(如 4.1 或更高)可以解决资源识别问题[^1]。更新方式如下: ```gradle buildscript { dependencies { classpath 'com.android.tools.build:gradle:7.2.1' } } ``` #### 使用正确的 `compileSdkVersion` 确保项目的 `compileSdkVersion` 设置为至少 29,因为 `colorError` 是从 API 29 开始引入的标准资源属性之一。若设置较低版本,AAPT 将无法识别该资源并导致编译失败。示例配置如下: ```gradle android { compileSdkVersion 34 } ``` #### 显式定义缺失资源 如果因环境限制无法升级 SDK 或 Gradle 插件,可手动在项目的 `res/values/` 目录下定义缺失的资源属性。例如,在 `res/values/attrs.xml` 中添加以下内容: ```xml <resources> <attr name="colorError" format="color" /> </resources> ``` 随后在 `res/values/styles.xml` 中提供默认值: ```xml <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <item name="colorError">#FF0000</item> </style> ``` 这种方式可在不更改构建工具链的前提下绕过资源缺失问题。 #### 回退至 AAPT 并启用资源合并兼容模式 若决定继续使用 AAPT 而非 AAPT2,应确保资源合并行为符合预期。可以在 `gradle.properties` 中启用兼容模式以提升资源处理稳定性: ```properties android.enableJetifier=true android.useAndroidX=true android.aapt2FromMaven=false ``` 此配置将强制使用 AAPT 工具,并通过 Jetifier 自动转换第三方库资源格式,避免因命名冲突或格式错误导致资源链接失败。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值