首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为xbox360编译f#

为xbox360编译f#
EN

Stack Overflow用户
提问于 2011-11-24 19:59:42
回答 1查看 403关注 0票数 3

我一直在尝试编译一些我用f#编写的库,以便在我为xbox360编写的游戏中工作,但我总是收到"The module/namespace 'System.Net.WebRequest' from compilation unit 'System' did not contain the namespace, module or type 'WebRequest'错误。

我用来编译它的命令是

代码语言:javascript
复制
"C:\Program Files (x86)\Microsoft F#\v4.0\fsc.exe" -o:obj\Release\XBox360.dll --standalone --noframework --define:TRACE --optimize+ --tailcalls+ -r:"C:\Program Files (x86)\Microsoft XNA\XNA Game Studio\v4.0\References\Xbox360\mscorlib.dll" -r:"C:\Program Files (x86)\Microsoft XNA\XNA Game Studio\v4.0\References\Xbox360\System.dll" -r:"C:\Program Files (x86)\Reference Assemblies\Microsoft\FSharp\2.0\Runtime\v2.0\FSharp.Core.dll" --target:library --warn:3 --warnaserror:76 --fullpaths --flaterrors somefile.fs

有没有人知道解决或避免这个问题的方法?

EN

回答 1

Stack Overflow用户

发布于 2011-11-24 20:08:32

xbox xna程序集是普通.net程序集的简化版本(它使用客户端框架+-一些)。

一个主要限制是,在xbox上使用xna时,您只能使用microsoft的实时服务器进行通信。即没有web请求。

您可以通过将受支持的SerializableAttribute page (在受支持的成员和构造函数旁边有xna符号)与不受支持的WebRequest page进行比较来了解这一点。

not All is not lost.核心XNA DLLS似乎要求该类存在于系统中,因此您不能只链接到核心库的F# /xbox版本。

幸运的是,微软的一些人友好地构建了没有这种限制的DLL。请看这里:

https://docs.google.com/presentation/d/1teGhBf-m7qRkMzsbCKvRcIEo-QLwdK9w8VOEWqu1qWQ/edit#slide=id.ge02f430_0_70幻灯片29。

Xbox360上的

XNA + F#不是官方支持的组合。在CLR中缺乏对尾部调用的支持会导致标准F#核心库崩溃。Don Syme和微软的其他人好心地为Xbox360提供了一个定制的F#核心库。需要摆弄.fsproj文件(可以使用脚本自动完成)。

在该演示文稿中,我找到了以下链接:

包含专门为构建的F# DLL的XNA项目(看起来Source中的文件夹FSharpCore就是您想要的):https://bitbucket.org/johdex/xnautils

关于在F#中进行XNA开发的博客:http://sharp-gamedev.blogspot.co.uk/

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8256689

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档