zoukankan      html  css  js  c++  java
  • 编译 Deedle

    编译 Deedle


    Deedle 中含有 RProvider。

    要编译 Deedle。须要先下载 R。地址:

    http://cran.cnr.berkeley.edu/bin/windows/base/

    还要在 R 控制台中安装 zoo 包:

    install.packages("zoo")

    可是。測试时另一个错误:

    未能载入文件或程序集“FSharp.Core, Version=4.3.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。

    系统找不到指定的文件。

    这是因为在 estsDeedle.TestsinRelease 文件夹下没有 FSharp.Core.dll

    那么,原因何在?

    是因为 estsDeedle.TestsDeedle.Tests.fsproj 中

        <Reference Include="FSharp.Core, Version=$(TargetFSharpCoreVersion), Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
          <Private>False</Private>
        </Reference>

    把这个属性改成 True 就能够了。


    另外,打开測试项目。发现有很多引用不存在。


    再看測试项目,当中有很多引用的 .dll 不存在:

    FSharp.Literate

    FSharp.CodeFormat

    是须要安装 FSharp.Formatting 包。即,在 VS 包控制台中运行:

    install-package FSharp.Formatting

    还有三个:

    FSharp.CompilerBinding

    FSharp.Data.DesignTime

    FSharp.PowerPack.Metadata


    =============================

    Deedle-master estsDeedle.Documentation.TestsDeedle.Documentation.Tests.fsproj

      <ItemGroup>
        <Reference Include="FSharp.CodeFormat">
          <HintPath>....packagesFSharp.Formatting.2.0.2lib et40FSharp.CodeFormat.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.CompilerBinding">
          <HintPath>....packagesFSharp.Formatting.2.0.2lib et40FSharp.CompilerBinding.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.Data.DesignTime">
          <HintPath>....inFSharp.Data.DesignTime.dll</HintPath>
        </Reference>
        <Reference Include="FSharp.Literate">
          <HintPath>....packagesFSharp.Formatting.2.0.2lib et40FSharp.Literate.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.Markdown">
          <HintPath>....packagesFSharp.Formatting.2.0.2lib et40FSharp.Markdown.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.MetadataFormat">
          <HintPath>....packagesFSharp.Formatting.2.0.2lib et40FSharp.MetadataFormat.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.PowerPack.Metadata">
          <HintPath>....packagesFSharp.Formatting.2.0.2lib et40FSharp.PowerPack.Metadata.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="mscorlib" />
        <Reference Include="nunit.framework">
          <HintPath>....packagesNUnit.2.6.3lib unit.framework.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="RazorEngine">
          <HintPath>....packagesRazorEngine.3.3.0lib et40RazorEngine.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="System" />
        <Reference Include="System.Core" />
        <Reference Include="System.Numerics" />
        <Reference Include="System.Web" />
        <Reference Include="System.Web.Razor">
          <HintPath>....packagesMicrosoft.AspNet.Razor.2.0.30506.0lib et40System.Web.Razor.dll</HintPath>
          <Private>True</Private>
        </Reference>
      </ItemGroup>

    实际上重点就是三个:FSharp.Formatting、FSharp.CompilerBinding、FSharp.Data。

    为什么这三个不放在包里自己主动安装?

    改一下路径。也就好了:

     <ItemGroup>
        <Reference Include="FSharp.CodeFormat">
          <HintPath>....packagesFSharp.Formatting.2.4.17lib et40FSharp.CodeFormat.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.CompilerBinding">
          <HintPath>....packagesFSharp.CompilerBindinginDebugFSharp.CompilerBinding.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.Data.DesignTime">
          <HintPath>....packagesFSharp.Data.2.0.8lib et40FSharp.Data.DesignTime.dll</HintPath>
        </Reference>
        <Reference Include="FSharp.Literate">
          <HintPath>....packagesFSharp.Formatting.2.4.17lib et40FSharp.Literate.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.Markdown">
          <HintPath>....packagesFSharp.Formatting.2.4.17lib et40FSharp.Markdown.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.MetadataFormat">
          <HintPath>....packagesFSharp.Formatting.2.4.17lib et40FSharp.MetadataFormat.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="FSharp.PowerPack.Metadata">
          <HintPath>....packagesFSharp.Formatting.2.4.17lib et40FSharp.PowerPack.Metadata.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="mscorlib" />
        <Reference Include="nunit.framework">
          <HintPath>....packagesNUnit.2.6.3lib unit.framework.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="RazorEngine">
          <HintPath>....packagesRazorEngine.3.3.0lib et40RazorEngine.dll</HintPath>
          <Private>True</Private>
        </Reference>
        <Reference Include="System" />
        <Reference Include="System.Core" />
        <Reference Include="System.Numerics" />
        <Reference Include="System.Web" />
        <Reference Include="System.Web.Razor">
          <HintPath>....packagesMicrosoft.AspNet.Razor.2.0.30506.0lib et40System.Web.Razor.dll</HintPath>
          <Private>True</Private>
        </Reference>
      </ItemGroup>

    另一个问题,即 Documentation.Tests.fs 中有一段不能编译。

        Literate.ProcessScriptFile
          ( Path.Combine(sources, file), template, Path.Combine(output, file),
            errorHandler = errorHandler,
            fsharpCompiler = compiler )

    应该是 ProcessScriptFile 做过改动。没有后面的两个參数。因此,去掉后面的两个參数就能编译了。

        Literate.ProcessScriptFile
          ( Path.Combine(sources, file), template, Path.Combine(output, file))


  • 相关阅读:
    ubuntu16.04服务自启动(弹控制台)
    第十集 爱在天路唐古拉,青藏梦止长江源
    第九集 生死穿越风火山,感受尘世间轮回
    第八集 昆仑初度尘未洗,夜宿禁区五道梁
    第七集 久历风尘凡间路,终见西域玉珠峰
    第六集 飞沙走石共患难,夜扎昆仑饮圣泉
    第五集 插肩而过茶卡湖,朝发夕至格尔木
    辞职之后在家的挣扎与老爸的工作
    2018,怎么这么难,我该怎么办,我的ai和感情
    17年11月兄弟小聚
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/6831801.html
Copyright © 2011-2022 走看看