Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
18
Help us understand the problem. What is going on with this article?
@hideyukisaito

ofxCef のビルド手順

More than 5 years have passed since last update.

ofxCef とは

CEF (Chromium Embedded Framework) を openFrameworks から使えるようアドオン化したもの。ざっくり言うと oF に Chrome を組み込めます。
作者は Zach 先生だけど実質 Dpt. の Hugues Bruyère 氏がメインコントリビュータの模様。

Web + ネイティブだと最近は Electron が有名ですが、あちらもベースは Chromium です。

何が嬉しいか

Chromium の資産がまるごと oF (C++) で使えます。

  • Canvas
  • WebGL
  • WebSocket

などなど。
また Google Maps や YouTube など C++ から使うのが難しかったコンテンツも埋め込めます。嬉しいですね!

ビルドする

環境

  • Xcode Version 6.4 (6E35b)
  • openFrameworks v0.8.4

1.ソース類をダウンロード

CEF をここから、ofxCef をここからダウンロードします。
CEF はいくつかリビジョンがありますが、今回は cef_binary_3.2171.1979_macosx32 を使います。oF が 32bit なので合わせます。

2015.08.23 追記
Brunch 2272 以降 Mac OS X 32bit のサポートは終了したそうです。
oF v0.9.0 以降は 64bit に対応するので Release Brunches から落としてきたほうがよさげです。

2.addons フォルダに配置

ofxCef を解凍して他のアドオンと同様に addons フォルダに置きます。
中身は以下の通り。

  • CEF
    • include ... CEF 本体のヘッダ群
    • lib ... ライブラリ類
  • src ... ofxCef のソース
  • example-ofxCEF ... サンプルプロジェクト

とりあえず example-ofxCEF に入っている Xcode プロジェクトを開くと example の他に cefHelper というターゲットがあるのがわかります。
スクリーンショット 2015-08-22 21.48.01.png

README を読むとまずこのヘルパーアプリをビルドしてねと書いてありますが、ビルドすると libcef_dll_wrapper が無いために下記のエラーが出ます。

ld: library not found for -lcef_dll_wrapper
clang: error: linker command failed with exit code 1 (use -v to see invocation)

3.libcef_dll_wrapper をリンクして cefHelper をビルド

ここでさっき落としてきた CEF 本体を使用します。
解凍し中した中にある cefclient.xcodeproj がを開くとターゲットに libcef_dll_wrapper があるので、これを指定してビルドします。
スクリーンショット 2015-08-22 22.06.55.png

cef_binary_3.2171.1979_macosx32/xcodebuild/Debug に libcef_dll_wrapper.a ができているので、これをさっきの cefHelper にリンクします。
スクリーンショット 2015-08-22 22.14.23.png

この状態で cefHelper のビルドをおこなうと無事成功するはず。

4.example のビルド

次にターゲットをexample-ofxCEF Debug に変更して、同じように libcef_dll_wrapper.a をリンクします。
ビルドして http://mrdoob.com/ が表示されれば成功です。おめでとうございます!
1.png

Next...

続編として projectGenerator を使用してイチから ofxCef なプロジェクトを作成する方法を書きます。

書きました -> ofxCef を使用した app を作る

18
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
hideyukisaito
必要とあらばなんでもやる系フリーランス。Web のフロントエンド全般や Unity 等の 3DCG プラットフォームでのアプリケーション開発、DX 改善業務などなど。
uniba
ユニバ株式会社は、"さわれるインターネット(Embodied Virtuality)"の会社です。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
18
Help us understand the problem. What is going on with this article?