HttpWebRequest的MonoDevelop中轰然外

我写了通过HTTP POST提交错误报告的方法。 我运行OSX,狮子和MonoDevelop的。 当应用程序从MonoDevelop的所谓的代码工作。 当我运行的.app它抛出一个异常:

System.TypeInitializationException: An exception was thrown by the type initializer for System.Net.WebRequest ---> System.DllNotFoundException: libc.dylib at (wrapper managed-to-native) System.Platform:uname (intptr) at System.Platform.get_IsMacOS () [0x00000] in <filename unknown>:0 at System.Net.WebRequest..cctor () [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at ch.fangorn.LIF.Access.SubmitCrash.Submit (Int32 projectId) [0x00000] in <filename unknown>:0

此刻,我叫不直接通过抓提交方法。 由于它的工作原理,当一个调试器附加我滞留。 我到目前为止已经试过:

  1. 构建单应用程序包(创建Mac安装)
  2. 建立与目标平台的x86一切
  3. 单声道和​​MonoDevelop的测试版

海事组织导致崩溃的代码。

HttpWebRequest hwr = WebRequest.Create(turi) as HttpWebRequest; string authInfo = user + ":" + password; authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo)); hwr.Headers["Authorization"] = "Basic " + authInfo; hwr.Method = "POST"; hwr.ContentType = "text/xml"; hwr.ContentLength = encData.Length; Stream send = hwr.GetRequestStream(); send.Write(encData, 0, encData.Length); send.Close(); hwr.GetResponse();

MonoDevelop中:2.8.5
单声道:2.10.8

--------------解决方案-------------

故障现象:系统库未找到(System.DllNotFoundException:libc.dylib)当单创建的.app启动M​​onoDevelop的外面。

在由单创建的包装脚本开发:MyApp.app/Contents/MacOS/MyApp DYLD_FALLBACK_LIBRARY_PATH设置不包括违约。 由于空DYLD_FALLBACK_LIBRARY_PATH意味着默认情况下,这将删除默认。 系统库无法找到。

在我opition行应该是:

export DYLD_FALLBACK_LIBRARY_PATH="$MONO_FRAMEWORK_PATH/lib:$DYLD_FALLBACK_LIBRARY_PATH:$(HOME)/lib:/usr/local/lib:/lib:/usr/lib"

或者检查是否DYLD_FALLBACK_LIBRARY_PATH为空,甚至会更好。

我提交了错误报告:http://bugzilla.xamarin.com/show_bug.cgi?id=2727

分类: 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.292 (s). 10 q(s)