Debug problems

本文介绍了解决在链接过程中出现的LNK2001错误的方法,特别是当遇到未解析的外部符号问题时,如__mbctype等。这通常与C++运行时库的不一致有关。

  Linking...  
  nafxcwd.lib(timecore.obj)   :   error   LNK2001:   unresolved   external   symbol   __mbctype  
  nafxcwd.lib(apphelp.obj)   :   error   LNK2001:   unresolved   external   symbol   __mbctype  
  nafxcwd.lib(filelist.obj)   :   error   LNK2001:   unresolved   external   symbol   __mbctype  
  nafxcwd.lib(appcore.obj)   :   error   LNK2001:   unresolved   external   symbol   ___argv  
  nafxcwd.lib(appcore.obj)   :   error   LNK2001:   unresolved   external   symbol   ___argc  
  Debug/chat.exe   :   fatal   error   LNK1120:   3   unresolved   externals  
  Error   executing   link.exe.

  1.  可能是因为dll编译时使用的C++   runtime   library与你程序所使用的C++   runtime   library不一致的原因吧;
  2.   就是你在你的程序里用到了或是说隐含的使用了一些库函数例如:mbctype,所有你就要使用Debug-MultiThread   Dll   ,而Debug-MultiThread   Dll所对应的函数库里包含你所引用的库函数。

 

看下我添加的代码错在哪?oranges@apple:~/work/Android11/11_r102/packages/apps/Settings$ git diff ./src/com/android/settings/fuelgauge/RequestIgnoreBatteryOptimizations.java diff --git a/src/com/android/settings/fuelgauge/RequestIgnoreBatteryOptimizations.java b/src/com/android/settings/fuelgauge/RequestIgnoreBatteryOptimizations.java index 27bd889afc..0ae4d98fcb 100644 --- a/src/com/android/settings/fuelgauge/RequestIgnoreBatteryOptimizations.java +++ b/src/com/android/settings/fuelgauge/RequestIgnoreBatteryOptimizations.java @@ -31,6 +31,7 @@ import android.util.Log; import com.android.internal.app.AlertActivity; import com.android.internal.app.AlertController; import com.android.settings.R; +import android.content.Context; public class RequestIgnoreBatteryOptimizations extends AlertActivity implements DialogInterface.OnClickListener { @@ -63,6 +64,20 @@ public class RequestIgnoreBatteryOptimizations extends AlertActivity implements return; } + // --- 自动允许 Fully Kiosk Browser --- + if (mPackageName != null && mPackageName.contains("com.fullykiosk")) { + try { + Log.i(TAG, "Auto-allow battery optimization ignore for Fully Kiosk Browser"); + IDeviceIdleController dic = IDeviceIdleController.Stub.asInterface( + ServiceManager.getService(Context.DEVICE_IDLE_SERVICE)); + dic.addPowerSaveWhitelistApp(mPackageName); + finish(); // 直接退出,不弹窗 + return; + } catch (Exception e) { + Log.e(TAG, "Auto allow failed for Fully Kiosk Browser", e); + } + } + PowerManager power = getSystemService(PowerManager.class); if (power.isIgnoringBatteryOptimizations(mPa 出现:javac/classes -D out/soong/.intermediates/packages/apps/Settings/Settings-core/android_common/javac/classes && rm -rf "out/soong/.intermediates/packages/apps/Settings/Settings-core/android_common/javac/srcjars" warning: Supported source version 'RELEASE_8' from annotation processor 'com.android.settingslib.search.IndexableProcessor' less than -source '9' packages/apps/Settings/src/com/android/settings/fuelgauge/RequestIgnoreBatteryOptimizations.java:72: error: cannot find symbol ServiceManager.getService(Context.DEVICE_IDLE_SERVICE)); ^ symbol: variable DEVICE_IDLE_SERVICE location: class Context 1 error 1 warning [ 93% 7271/7801] //frameworks/base/packages/SystemUI:SystemUI-core kapt [common] warning: some JAR files in the classpath have the Kotlin Runtime library bundled into them. This may cause difficult to debug problems if there's a different version of the Kotlin Runtime library in the classpath. Consider removing these libraries from the classpath out/soong/.intermediates/frameworks/base/packages/SettingsLib/SettingsLib/android_common/turbine-combined/SettingsLib.jar: warning: library has Kotlin runtime bundled into it out/soong/.intermediates/prebuilts/tools/common/m2/kotlinx-coroutines-core/android_common/turbine-combined/kotlinx-coroutines-core.jar: warning: library has Kotlin runtime bundled into it 11:42:21 ninja failed with: exit status 1 #### failed to build some targets (04:01 (mm:ss)) ####
最新发布
10-22
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值