前提・実現したいこと
Gentooでhaskell-giを使って公式サイトのHello-Worldを実行したい。
公式サイトの"Hello World"サンプルコードをコンパイル中にエラーとなります。
発生している問題・エラーメッセージ
apo@gentoo ~/Documents/project/make/haskell/haskell-gi_20210514/my-project $ stack build gi-gdkpixbuf> configure gi-gdkpixbuf> [1 of 2] Compiling Main ( /tmp/stack-12c74caaf0fd4f1a/gi-gdkpixbuf-2.0.24/Setup.hs, /tmp/stack-12c74caaf0fd4f1a/gi-gdkpixbuf-2.0.24/.stack-work/dist/x86_64-linux-tinfo6/Cabal-3.2.1.0/setup/Main.o ) gi-gdkpixbuf> [2 of 2] Compiling StackSetupShim ( /home/apo/.stack/setup-exe-src/setup-shim-mPHDZzAJ.hs, /tmp/stack-12c74caaf0fd4f1a/gi-gdkpixbuf-2.0.24/.stack-work/dist/x86_64-linux-tinfo6/Cabal-3.2.1.0/setup/StackSetupShim.o ) gi-gdkpixbuf> Linking /tmp/stack-12c74caaf0fd4f1a/gi-gdkpixbuf-2.0.24/.stack-work/dist/x86_64-linux-tinfo6/Cabal-3.2.1.0/setup/setup ... gi-gdkpixbuf> Configuring gi-gdkpixbuf-2.0.24... gi-gdkpixbuf> build gi-gdkpixbuf> Preprocessing library for gi-gdkpixbuf-2.0.24.. gi-gdkpixbuf> Building library for gi-gdkpixbuf-2.0.24.. gi-gdkpixbuf> [ 1 of 25] Compiling GI.GdkPixbuf.Config gi-gdkpixbuf> [ 2 of 25] Compiling GI.GdkPixbuf.Constants gi-gdkpixbuf> [ 3 of 25] Compiling GI.GdkPixbuf.Enums[boot] gi-gdkpixbuf> [ 4 of 25] Compiling GI.GdkPixbuf.Enums gi-gdkpixbuf> [ 5 of 25] Compiling GI.GdkPixbuf.Flags gi-gdkpixbuf> [ 6 of 25] Compiling GI.GdkPixbuf.Objects.Pixbuf[boot] gi-gdkpixbuf> [ 7 of 25] Compiling GI.GdkPixbuf.Objects.PixbufAnimation[boot] gi-gdkpixbuf> [ 8 of 25] Compiling GI.GdkPixbuf.Objects.PixbufAnimationIter[boot] gi-gdkpixbuf> [ 9 of 25] Compiling GI.GdkPixbuf.Objects.PixbufAnimation gi-gdkpixbuf> [10 of 25] Compiling GI.GdkPixbuf.Objects.PixbufAnimationIter gi-gdkpixbuf> [11 of 25] Compiling GI.GdkPixbuf.Objects.PixbufNonAnim gi-gdkpixbuf> [12 of 25] Compiling GI.GdkPixbuf.Objects.PixbufSimpleAnim gi-gdkpixbuf> [13 of 25] Compiling GI.GdkPixbuf.Objects.PixbufSimpleAnimIter gi-gdkpixbuf> [14 of 25] Compiling GI.GdkPixbuf.Structs.PixbufFormat[boot] gi-gdkpixbuf> [15 of 25] Compiling GI.GdkPixbuf.Objects.PixbufLoader gi-gdkpixbuf> [16 of 25] Compiling GI.GdkPixbuf.Structs.PixbufModule[boot] gi-gdkpixbuf> [17 of 25] Compiling GI.GdkPixbuf.Callbacks gi-gdkpixbuf> [18 of 25] Compiling GI.GdkPixbuf.Objects.Pixbuf gi-gdkpixbuf> [19 of 25] Compiling GI.GdkPixbuf.Objects gi-gdkpixbuf> [20 of 25] Compiling GI.GdkPixbuf.Structs.PixbufModule gi-gdkpixbuf> gi-gdkpixbuf> /tmp/stack-12c74caaf0fd4f1a/gi-gdkpixbuf-2.0.24/GI/GdkPixbuf/Structs/PixbufModule.hs:194:1: error: gi-gdkpixbuf> Could not find module ‘GI.GModule.Structs.Module’ gi-gdkpixbuf> Use -v (or `:set -v` in ghci) to see a list of the files searched for. gi-gdkpixbuf> | gi-gdkpixbuf> 194 | import qualified GI.GModule.Structs.Module as GModule.Module gi-gdkpixbuf> | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ gi-gdkpixbuf> Progress 1/4 -- While building package gi-gdkpixbuf-2.0.24 (scroll up to its section to see the error) using: /tmp/stack-12c74caaf0fd4f1a/gi-gdkpixbuf-2.0.24/.stack-work/dist/x86_64-linux-tinfo6/Cabal-3.2.1.0/setup/setup --builddir=.stack-work/dist/x86_64-linux-tinfo6/Cabal-3.2.1.0 build --ghc-options " -fdiagnostics-color=always" Process exited with code: ExitFailure 1
該当のソースコード
Haskell
1{-# LANGUAGE OverloadedStrings, OverloadedLabels #-} 2{- cabal: 3build-depends: base, haskell-gi-base, gi-gtk == 3.0.* 4-} 5 6import qualified GI.Gtk as Gtk 7import Data.GI.Base 8 9main :: IO () 10main = do 11 Gtk.init Nothing 12 13 win <- new Gtk.Window [ #title := "Hi there" ] 14 15 on win #destroy Gtk.mainQuit 16 17 button <- new Gtk.Button [ #label := "Click me" ] 18 19 on button #clicked (set button [ #sensitive := False, 20 #label := "Thanks for clicking me" ]) 21 22 #add win button 23 24 #showAll win 25 26 Gtk.main
試したこと
・ltsを変えて(lts-9.21, lts-12.26)コンパイルしてみたところ、エラーは変わりましたが、改善しませんでした。cabalのバージョンが低い(2.0以下)とのエラーだったのでltsを元の最新に戻しています。
・stack update、stack upgradeを実行してみたが、変化はありませんでした。
・Hoogleで「GI.GModule.Structs.Module」を検索してみましたが、見つかりませんでした。
・GitHubのIssuesを確認してみましたが、関係ありそうな記事はありませんでした。
・「gentoo GI.GModule.Structs.Module」等でググッてみましたが、有用な情報は見つかりませんでした。
補足情報(FW/ツールのバージョンなど)
Gentoo Ver: Gentoo Base System release 2.7
stack: Version 2.7.1, Git revision 8afe0c2932716b0441cf4440d6942c59568b6b19 x86_64 hpack-0.34.4
下記emergeを実行済み
emerge -av gobject-introspection emerge -av dev-libs/gobject-introspection emerge -av dev-libs/gobject-introspection-common emerge -av dev-perl/Glib-Object-Introspection emerge -av x11-libs/gtksourceview emerge -av dev-cpp/gtksourceviewmm emerge -av dev-perl/Gtk2-SourceView2 emerge dev-haskell/haskell-gi-base
全てのソースコード
https://github.com/ringo-apo/haskell-gi_20210514
Debianで上記HelloWorldを実行した際は、問題なく動作していました。
ご教示よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。