PC6001VX を Macでビルドしようぜ
http://eighttails.seesaa.net/article/305067428.html#more
PC6001VX の Ver.2.11 がでているようですね。
これを、Macで、ビルドしてみましょう。
まず、前提条件としては、
OSは、El Capitan です。
PC6001VX_2.11_src.tar.gz を落として、適当なディレクトリー(~/hoge) に展開します。
テキストエディターで、PC6001VX.pro を開きます。
20行目から、下記の2行の先頭の # マークを削除します。#DEFINES += NOJOYSTICK
#DEFINES += NOAVI↓
DEFINES += NOJOYSTICK
DEFINES += NOAVI
src/Qt/osdQt.cpp 11行目の SDL2/ を削除 (NOJOYSTICK の前の # マークを削除していれば、不要です)
#ifndef NOJOYSTICK
#include <SDL2/SDL.h>
#endif↓
#ifndef NOJOYSTICK
#include
#endif
src/pc6001v.h 98行目から
IMG_EXTと、" の間に、空白を1文字挿入する。
#define FONTZ_FILE "fontz12."IMG_EXT /* 半角フォントファイル */
#define FONTH_FILE "fonth12."IMG_EXT /* 全角フォントファイル */↓
#define FONTZ_FILE "fontz12." IMG_EXT /* 半角フォントファイル */
#define FONTH_FILE "fonth12." IMG_EXT /* 全角フォントファイル */
というか、パッチファイルを作れという話ですよね。。(^^;;
動画を作成するライブラリを入れるのに挫折したので、-DNOAVI で、除外しています。
他環境では、何故か、SDL2/ を付けないと行けないようです(?)
でも、MacのSDLのインクルードファイルは、SDL2/ ではなく、SDL/ に有るので、これがついていると、上手くいきません。
C++11 では、"リテラル"と、識別子は、くっついていると、ダメなようです。これも、意味不明。それも、警告じゃなくて、コンパイルエラーですからね。。 まぁ、くっついていると、見にくいから。。というのはありますが。。
具体的なエラーは下記の通り。。
src/Qt/../pc6001v.h:98:31: error: invalid suffix on literal; C++11 requires a
space between literal and identifier [-Wreserved-user-defined-literal]
ここに対処方法が書かれていました。要するに、空白文字を1文字入れるしかないようです。。
http://wlog.flatlib.jp/item/1627