Mac OSX 上の GTKでアプリアイコンが表示できない件

curl を Proxy 越で使う (Mac OSX)
先日入れた GTK for Mac OSX で、アプリケーション作ってみたんですが、どうしてもアプリケーションアイコンが表示できないので色々調べてみました。


どうも、GtkOSXApplication
とかいうのを設定しないといけないようです。

#include <gtkosxapplication.h>

まずヘッダ

GtkOSXApplication *theApp;
theApp=g_object_new(GTK_TYPE_OSX_APPLICATION, NULL);

そして、 gtk_init()の後にこの関数を呼びます。

gtk_osxapplication_set_dock_icon_pixbuf(GtkOSXApplication *self,GdkPixbuf *pixbuf)

pixbufにアイコンのデータを読み込んだらこの関数で表示。

gtk_osxapplication_ready(theApp);

gtk_main()に入る前に上記関数を呼びます。

でも、これだと、

Undefined symbols: “_gtk_osxapplication_get_type”, referenced from:

なんてリンクエラーが出ます。

検索しても解決策がどこにもない
(-dynamiclinkを使うといいと書いてるサイトがあったのですが、使うと実行不能に)
 
仕方ないので、ライブラリの中を検索したらありました。

BASE_DIR= /Users/macuser/gkt/inst
LIB_DIR = ${BASE_DIR}/lib
${LIB_DIR}/libgtkmacintegration.0.dylib
${LIB_DIR}/ libgtkmacintegration.dylib

Makefile に組み込んでやればリンク成功|・ω・)
しかし、このライブラリ使ってる人、検索してみたけどだれもいない(汗)

関数に至っては、日本人でだれも使ってる人がいないみたいなんだけど、みんなどうしてるんだろう。

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です