Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GObject Introspection入門のMacOS向けの補足 #2

Open
youchan opened this issue Jul 6, 2018 · 4 comments
Open

GObject Introspection入門のMacOS向けの補足 #2

youchan opened this issue Jul 6, 2018 · 4 comments

Comments

@youchan
Copy link

youchan commented Jul 6, 2018

https://github.com/RubyData/workshop-materials/blob/master/gobject-introspection/introduction.md

をMacOSでやってみたところいくつかはまるポイントがあったので、MacOS向けの補足があったほうがよいかと思います。

まだ最後までやれていないので、最後まで出来たらまとめようかと思います。

@kou
Copy link
Member

kou commented Jul 6, 2018

そうですね!
私が書いた時はLinux前提ですが、おいおいmacOS向けにも調整できるといいなぁと思っていたので、まとめたらどうやって反映するのがいいか考えていきましょう!

@ginkouno
Copy link
Contributor

現時点での補足をメモしておきます。

その1: buildで失敗する例

% ninja -C ../opencv-glib.build install
-- 中略 -- 
opencv-glib/meson.build:25:6: ERROR:  gobject-introspection dependency was not found, gir cannot be generated.

解決方法

とりあえず、blogにメモっておきました
http://ginkouno.hatenablog.jp/entry/2018/10/07/192933

その2: 実行時にdylibが見つからない例

% GI_TYPELIB_PATH=/tmp/local/lib/girepository-1.0 LD_LIBRARY_PATH=/tmp/local/lib ruby opencv-glib-test.rb
(null)-WARNING **: Failed to load shared library '@rpath/libopencv-glib.1.dylib' referenced by the typelib: dlopen(@rpath/libopencv-glib.1.dylib, 9): image not found

解決方法

  • MacだとLD_LIBRARY_PATHではなくDYLD_LIBRARY_PATH
  • rvm / rbenvだと環境変数が通らないので、rbenvの場合はrbenv-varsを使うなど工夫が必要

rbenv/rbenv#962
https://gitter.im/red-data-tools/ja?at=5b3eecc03d8f71623d60a861

@kou
Copy link
Member

kou commented Oct 16, 2018

PKG_CONFIG_PATH="$(brew --prefix libffi)/lib/pkgconfig"ですね!

@ginkouno
Copy link
Contributor

blogの方更新しました 🙇

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants