自作スクリーンセーバをLinuxに対応させたい。自作スクリーンセーバをLinuxに対応させたい。その2C++とOpenGLを使った自作スクリーンセーバをLinuxにも対応させようとしているところ。GLFWを使ったデモプログラムとして動かすつもり。2.38)上でビルドしようとしたらリンクエラーが出てしまって悩んでしまったけれど。ソースコードに手を入れたら改善した。実行バイナリに埋め込んだpngやjpgを展開させる際、サイズの求め方を変えてみたらエラーが出ない状態になった。使ってバイナリファイルをオブジェクトファイルに変換する方法を選んだ。sprites.pngこうしてできたオブジェクトファイルをリンクしてやることで、実行バイナリの中に画像バイナリを含めることができる。3つのシンボルを、C/C++側から参照できる状態になる。使って、オブジェクトファイルに含まれている情報をダンプしてみた例。並んでることが分かる。_binary_sprites_png_startC/C++側からこれらのシンボルを利用したい時は、以下のように書いておく。これで各シンボルが参照できるようになる。sizeこのシンボルを利用して、実行バイナリ内の画像バイナリの展開処理を行うわけだけど...。使って処理してた(つもりだった)。サイズを求めるように修正してみた。img_size);このように書き換えてみたところ、エラーが出なくなってビルドが通るようになった。実行バイナリも期待した通りに動作してくれた。テクスチャの展開が時々失敗する問題も何故か解決してしまった。何度試しても、必ず展開できる...。