「Goでバイナリファイルにqmlをパッキングする方法 - Goとキュート(Qt)な日々」からの転載。
環境
- go version go1.5.2 darwin/amd64
- OS El Capitan
方法
goでバイナリファイルにqmlをパッキングは"genqrc"というコマンドを使用します。
そのため、まずはターミナルを開き以下を実行し"genqrc"を取得しておきます。
go get gopkg.in/qml.v1/cmd/genqrc
具体的なqmlリソースのパッキング方法を、以下のディレクトリ構成を例に説明します。
┣main.go ・・・ ソースファイル
┗assets ・・・ ディレクトリ
┗goqml.qml ・・・qmlファイル
まずは"main.go"に、どこでもよいので以下の様に、"//go:generate genqrc" の後にリソースファイルの含まれるディレクトリ名を記述した1行を記入します。
//go:generate genqrc assets
qmlをロードする際にパスを"qrc:///"に続けて記述します。
以下に"assets"ディレクトリ下の"goqml.qml"ファイルをロードする際の例を示します。
component, err := engine.LoadFile("qrc:///assets/goqml.qml")
その後、ソースコードのあるディレクトリで以下を実行します。
go generate
go build
qmlをパッキングしたバイナリファイルが生成されます。
以上です。