4

私は自分のプロジェクトをコンパイルするための Cabal-install の代替品を作成中です (興味がある場合はGithubを参照してください)。ほぼ完全に機能するようになりましたが、1 つの詳細については: 個別のパッケージのドキュメントを生成するとき、Haddock は他のパッケージによって生成されたインターフェイス ファイルを読み取って、他のパッケージの HTML 宛先を見つけることができないようです。

私のビルドシステムが Haddock に対して行う呼び出しと、それに付随する出力は次のとおりです。

haddock --read-interface=/usr/share/doc/ghc/html/libraries/base-4.6.0.1/base.haddock --read-interface=/usr/share/doc/ghc/html/libraries/ghc-prim-0.3.0.0/ghc-prim.haddock --title=vector-0.10.9.1 --source-module=/home/murray/World/%{FILE} -o /home/murray/.world/doc -h --use-contents=/home/murray/.world/doc/index.html --use-index=/home/murray/.world/doc/doc-index.html --optghc=-hide-all-packages --optghc=-package-name --optghc=vector-0.10.9.1 --optghc=-package-id --optghc=world-main --optghc=-optP--include=.build/deps/macros.h --optghc=-I.build/pool --optghc=-i/home/murray/.world/obj --optghc=-package --optghc=base --optghc=-package --optghc=ghc-prim --optghc=-ipackages/vector/0.10.9.1/source --optghc=-XCPP --optghc=-XDeriveDataTypeable --read-interface=file:///home/murray/.world/doc,/home/murray/.world/doc/primitive-0.5.2.1.haddock --read-interface=file:///home/murray/.world/doc,/home/murray/.world/doc/deepseq-1.3.0.2.haddock --read-interface=file:///home/murray/.world/doc,/home/murray/.world/doc/array-0.5.0.0.haddock -D/home/murray/.world/doc/vector-0.10.9.1.haddock .build/pool/Data/Vector/Storable.hs .build/pool/Data/Vector/Generic.hs .build/pool/Data/Vector/Generic/Base.hs .build/pool/Data/Vector/Generic/Mutable.hs .build/pool/Data/Vector/Fusion/Stream.hs .build/pool/Data/Vector/Fusion/Stream/Size.hs .build/pool/Data/Vector/Fusion/Util.hs .build/pool/Data/Vector/Fusion/Stream/Monadic.hs .build/pool/Data/Vector/Internal/Check.hs .build/pool/Data/Vector/Generic/New.hs .build/pool/Data/Vector/Storable/Mutable.hs .build/pool/Data/Vector/Storable/Internal.hs .build/pool/Data/Vector.hs .build/pool/Data/Vector/Mutable.hs .build/pool/Data/Vector/Unboxed.hs .build/pool/Data/Vector/Unboxed/Base.hs .build/pool/Data/Vector/Primitive.hs .build/pool/Data/Vector/Primitive/Mutable.hs

.build/pool/Data/Vector/Fusion/Stream/Size.hs:25:10: Warning:
    No explicit method or default declaration for `*'
    In the instance declaration for `Num Size'

.build/pool/Data/Vector/Fusion/Stream/Size.hs:25:10: Warning:
    No explicit method or default declaration for `abs'
    In the instance declaration for `Num Size'

.build/pool/Data/Vector/Fusion/Stream/Size.hs:25:10: Warning:
    No explicit method or default declaration for `signum'
    In the instance declaration for `Num Size'
Haddock coverage:
 100% (  5 /  5) in 'Data.Vector.Fusion.Util'
 100% (  6 /  6) in 'Data.Vector.Fusion.Stream.Size'
  11% (  1 /  9) in 'Data.Vector.Internal.Check'
  83% (104 /126) in 'Data.Vector.Fusion.Stream.Monadic'
  85% ( 88 /104) in 'Data.Vector.Fusion.Stream'
  64% ( 42 / 66) in 'Data.Vector.Generic.Mutable'
 100% (  3 /  3) in 'Data.Vector.Generic.Base'
  76% ( 37 / 49) in 'Data.Vector.Mutable'
Warning: Couldn't find .haddock for export Data.Primitive.Types.Prim
  74% ( 37 / 50) in 'Data.Vector.Primitive.Mutable'
   5% (  1 / 20) in 'Data.Vector.Generic.New'
  25% (  1 /  4) in 'Data.Vector.Storable.Internal'
  79% ( 46 / 58) in 'Data.Vector.Storable.Mutable'
  93% (215 /232) in 'Data.Vector.Generic'
Warning: Data.Vector.Primitive: Instances of type and data families are not yet supported. Instances of the following families will be filtered out:
  Mutable
Warning: Couldn't find .haddock for export Data.Primitive.Types.Prim
  96% (184 /191) in 'Data.Vector.Primitive'
Warning: Data.Vector.Unboxed.Base: Instances of type and data families are not yet supported. Instances of the following families will be filtered out:
  Mutable, MVector, Vector
  17% (  1 /  6) in 'Data.Vector.Unboxed.Base'
  96% (201 /210) in 'Data.Vector.Unboxed'
Warning: Data.Vector.Storable: Instances of type and data families are not yet supported. Instances of the following families will be filtered out:
  Mutable
  97% (194 /200) in 'Data.Vector.Storable'
Warning: Data.Vector: Instances of type and data families are not yet supported. Instances of the following families will be filtered out:
  Mutable
  94% (199 /212) in 'Data.Vector'
Warning: Data.Vector.Generic.Mutable: could not find link destinations for:
    Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector.Mutable: could not find link destinations for:
    Data.Primitive.Array.MutableArray Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector.Primitive.Mutable: could not find link destinations for:
    Data.Primitive.ByteArray.MutableByteArray Control.DeepSeq.NFData Data.Primitive.Types.Addr Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector.Generic.New: could not find link destinations for:
    Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector.Storable.Mutable: could not find link destinations for:
    Control.DeepSeq.NFData Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector.Generic: could not find link destinations for:
    Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector.Primitive: could not find link destinations for:
    Control.DeepSeq.NFData Data.Primitive.ByteArray.MutableByteArray Data.Primitive.Types.Addr Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector.Unboxed: could not find link destinations for:
    Control.DeepSeq.NFData Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector.Storable: could not find link destinations for:
    Control.DeepSeq.NFData Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState
Warning: Data.Vector: could not find link destinations for:
    Control.DeepSeq.NFData Control.Monad.Primitive.PrimMonad Control.Monad.Primitive.PrimState

--read-interface私はまた、次のようなフラグを書くためのほとんどすべての可能な方法を試しました:

  • ビルド ディレクトリへの相対パスとして
  • file://URLとして
  • HTML リンク ディレクトリを示すと想定される 0、1、および 2 のプレフィックスを使用

ファイルが存在しない場合に Haddock が失敗するため、インターフェイス ファイルが正しく読み取られていることはわかっています。また、HTML ファイルを参照しているため、HTML ファイルが適切な場所にあることもわかっています。それらを見ないでください。

この状況はほぼ 2 か月間私を悩ませてきました。ドキュメントにハイパーリンクがない生活の灰色を受け入れることを学びました。

御時間ありがとうございます、

4

0 に答える 0