termux環境でXML::Simpleのインストール

Androidタブレットのlinux環境、termuxにperlをインストールして普段の仕事環境を構築していくネタ。
XML::Parserのコンパイルでハマったのでメモ。
結論からいうと、expat.h expat_external.hというふたつのファイルをexpatの本家サイトからいただいてきて/usr/include/に配置して解決。
expat本家→https://github.com/libexpat/
perlのXML::SimpleというXMLを解析するためのモジュールは必需品。
WEBで提供されるもろもろのデータのほとんどはXMLかjson形式なので、なくてはならないシロモノだ。
また、ワード(.docx)やエクセル(.xlsx)も、その本体はXMLファイルなので、ワードファイルの解析にもXML::Simpleは必須。というか、XML形式のデータは日常のあちこちに広く深く潜んでいる。
このXML::Simpleというモジュールは、MacOSXでも、WINDOWSのActivePerlでもデフォルトで入っている標準のモジュール(…って記憶が曖昧)
ところが、termuxのperlのパッケージには入っていないので、CPAN(perlのモジュールならなんでも揃う巨大なアーカイブ)から持ってくることにした。
CPANのインストール
pkg install cpan
makeのインストール
pkg install make
XML::Simpleをインストールするために必要なXML::Parserは(ていうか、XML::Simpleは被せもの・ガワでその実体はSAXとかParser)「.xs」ファイルを生成する必要がある、Cコンパイラが必要なので。
Cコンパイラのインストール
pkg install llvm
pkg install clang
これで準備完了。cpanのコマンドラインで
install XML::Simple
とやればインストールできるはずなんだけど、XML::Parserのインストールでエラーとなって止まってしまう。面倒くさいけどインストールのログを見ると
コンパイルに必要な「expat.h」が見つからない、というエラーで終了している。
「XML::Parser cpan expat.h」などとぐーぐる様に訊ねてみたらさくっと解答が出てきたので、expat本家サイトから「expat-2.2.5.tar.bz2」をいただいてきて解凍、その中に入っていたexpat.h(と、expat_external.h)を「/usr/include/」にコピーしたら無事インストールできた。
とりあえず今日はここまで。
というのも、termuxのlinux環境はファイルのpathが独特、というか閉じた中でやってるみたいで、スクリプトの中でファイルのコピー操作が意図どおりにいかない。これは調べなきゃ、だなあ。
termuxというAndroidのlinux環境。こりゃ久しぶりに面白いもの見つけたなあ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
表現の自由と金儲け

表現の自由とか。難しい・面倒くさいことはあまり考えたことがない。
ただ、底辺のエロ本屋で、エロ本エロ漫画をずっと編集してた時、定期的に不健全図書指定を受けて都庁に出向いたり、警視庁に呼び出されたり、宮崎事件の時はメディアスクラムとかいう大騒ぎの渦中に放り込まれたり、それなりに身に染みて思うような出来事を体験してきてる。
結局のところ、生活に直結する。
宮崎事件の後はほぼ1年、コミックスが出せなくなってしまって干上がった。
都条例に引っ掛かると(当時は)年間5回、連続3回で18禁のオビを付けることになる。んなもの、書店が扱ってくれない、休刊となる。食えない、廃業となる。
だからと言って、その言われるように修正をしておとなしいものを作っていたら同業他社に置いてかれる。売れない、休刊となる。
内容が面白ければそれで売れるかというとそれはちょっと牧歌的。性器描写もその修正も、また過激な設定や展開も売るためには求められる。
どこまでやったら引っ掛るか、引っ掛ったら「とりあえず」誌面をどうするか…てなことを20年ぐらいやってたなあ。
ちなみに、正論なんて通用しない世界だ。どうしてこれはOKでこれはアウトなのか、まともな説明などありゃしない。言ったところでどうにもならない。
また、自分たちの出している本は清く正しいもので、こんなエロ雑誌、エロマンガは指定の対象としてしかるべきだろう、という、同じ出版の立場から、いわば味方が背後から撃ってくるようなことも(戦場で一番怖かったのは味方の銃撃、という話がこんなところにも言えるのに吃驚)
と、昔話が長いのは老人だから勘弁してもらおう。
ここ数日で面白い記事がふたつ、twitterで回ってきた。
「「在特会のヘイトも守るべき」ドワンゴ川上量生に反戦平和のジブリは…鈴木敏夫を直撃!」
https://lite-ra.com/2015/06/post-1180.html
ようするに、川上氏のいう「表現の自由」はただの言い訳ではないのか。「今はヘイトが商売になる」という商売上の動機で開設したコンテンツを、今度はKADOKAWAとの経営統合で商売上、邪魔になったから切った。それだけのことにすぎない。
「日本にも「サムの息子」法があれば「酒鬼薔薇聖斗」手記で儲けるなんて許されない」
https://note.mu/lingualina/n/nee602611698e
要するに、自分が犯した罪について発言したいのなら政府機関がそれを止めることはできないが、被害者からの訴えがあれば印税は差し押さえるから、カネ儲けにはならない覚悟でやってね
ふたつとも、乱暴にまとめると、金儲けのために「表現の自由」とやらを利用してんじゃねえよ、ということ。
わたしは、清く正しいひとたちからバッシングを受けていた立場で、なんか正しいひとたちの理不尽さにムカついていたこともあったんで、ヘイトだろうがエログロだろうが、言っても・表現してもかまわないと思っている(だいたい、誰にとっても正しい、心地良い表現なんてありえんし)
自分の考えと違うと思ったら無視するし、イラっとしたら反論もするかもしれないし。
んで、この「サムの息子」に、素直に感心した。
表現の自由と、金儲けを切り離して考えると、はたして、その表現って必要なの?ということ。
商業誌の場合、それで食ってる組織があって関わっている人間がたくさんいるので、「ちょっと勝負してみるか」また逆に、「前回引っ掛ってるしちょっとやばいから押さえるか」ということで「表現を調整」していた。
売れるとか売れないとかいう理由をとり除いた時にどんな表現になるのか。やっぱり、それとは逆に、生活がかかってるからこそ出てくる表現もあるだろうしなあ。
…と、オチも結論もないのも老人の特権で勘弁してもらおう。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
enchant.jsでスマホのゲーム

昨日の続き。スマホのゲームを作るために、enchant.jsというjavascriptのフレームワークをごそごそ調べてみた。いやもう恐るべしのひとこと。アクション、シューティング、RPGとなんでもこいで、すでにいくつもゲームが公開されていて、そのクオリティは、え?これjavascirptなの?ブラウザなの?と驚かされるシロモノが。
ノベルゲーム用のプラグイン m3scriptというのも公開されていて、スマホ用にゲームを作るなら enchant.jsが最強の一択っぽい。
https://enchantjs.com/ja/
WEBアプリにしちゃえば、たぶん、facebookのアプリなどに繋げていくこともできそうだし、ネイティブアプリのような集金装置は使えないけど、広がりがあっていろいろ展開した結果、どうにかできそうな、という大雑把な感想も。
ここで何度も言ってるように、今、盛り上がってるのはモバイル。
スマホで、jquery mobileを使ったサイト・enchant.jsを使ったゲーム。このふたつを頑張ればいいような気がしてきた。やっぱりここで100回は確実に言ってるように「あとはネタ次第」だ。たくさん調べものして勉強しなきゃいけないなあ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
PayPalで購入ボタン

購入ボタンまでは不要かな、と思ってたんだけど、宗旨替え。
ブツの通信販売と違って、電子書籍はその場でスグに欲しい。それにはやはりPayPalの「今すぐ購入」ボタンとクレジット決済だよなあ、と。
PayPalの開発環境というかテストサイトのアカウントを取得して、ごそごそテスト&仕様確認中。テストサイト、sandbox、砂場の使い方なんかが書いてあるところを見ると、ダミーのクレジットカード番号が用意されている、とのことだったけど、わたしが確認した限り、それはなくて、自分の本当のカード番号を使わないとテストできない、のがちょっとアレな感じで嫌んだけど、モタモタしたくないんで、目をつぶる。
で、ほぼほぼサンプルコードをそのまんま使ってやってみたところ、あっさり購入ボタンの利用からクレジット決済まで実装できた…て、まだテスト環境だけ。簡単すぎて驚いた。(使ってるレンタルサーバーはlolipop。使用言語はperl)
WEBのページと同期したPDTをページ表示に使って(サンキューページみたいなもの)、非同期に送られてくる IPN のデータを lolipop の MySQL に登録。お金のやりとりは基本的に PayPal の管理ページで確認するので、DBに登録するのは最低限、誰がどのファイルを買ったのか、だけ。後はそれを元にダウンロードしてもらえるようにページを作る。
電子書籍がどーたら。
PDFなら簡単に誰でも作れる(クオリティはまた別の話として)し、おそらくEPUBという形式・規格もすぐにソフトが出揃うだろう。
なんでも同じ。問題はどうやって個人がネットで売るのか。
ほんと、なにを今さら、だろうけど、PayPalを使えば、個人がネットでクレジット決済でお金のやりとりができる、というのがスゲーんだ。何度も繰り返してくどくてすまん。眠っている原稿、塩漬けにされてる原稿があるなら、自分でネットに並べてみませんかー。業者に依頼するまでもないです。ちょっと調べるだけで自分でできます、マジで簡単ですよ。
個人レベルが勝負できる環境を作っていけるんじゃないかと思うですよ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
居眠りには理由がある

蒸し暑い今日も部屋でひたすらぼーっと&ごろごろと。サンデープロジェクトの田原はますますボケが進行してきたな、と呆れながらも見てしまうのは、すっかりテレビ局にハメられてるということになるのか。政治をワイドショーにしたテレビ朝日、田原総一郎の功績は大きいと思う。いや、おっさん連中の討論というか罵り合いというか、面白いもんだ。当然それなりに声のデカさが売り物の連中だし。テレビでの失言が増えたのも出演機会が増えたからだろうな。
んで、サンデープロジェクト前のNHK。山崎拓が郵政民営化進行の現状を鉄道に例えて、投身自殺ならまだ男らしいが、などと思わず腰を抜かす発言。一瞬シラっとした空気が流れたけど、これ、民主党からうるさいのが出てたらひと騒動起こしてたかも。
スリリングであります。
その後部屋でパソコンをいじってごろごろしてるうちに不覚にもうたたねぶっこく。
PostgresQLの解説本を読んでたんだけど、簡単なデータベース、りんご・値段、てなものの解説ページから、いきなりPostgresQLのデータ型・SQL文・管理といった項目に入って、WEBアプリの作成ページとなる。こら。こんな構成で素人についてこいというのは無茶だろ。
このソフトはこれこれこういう仕組みで内部構造はこんなになってますよ、という前に、こんなことができますよ、という実例・サンプルから入ってくれ。まずは夢を語ってくれ。
WEBアプリというのも perl なら perl だけにしてほしいのが、CPANからいろいろモジュールを持ってくる必要がある。PHP の項目もご同様。オプションのモジュールがインストールされているプロバイダばかりではないぞ。
しかたなく、データ型などに関して流し読みでもいいから読んで、データベースのお作法をちょろっと感じておくか、と思ったのがうたたねの原因だった。
競馬のデータをいじくりたおすぞっという目的があって、パソ通内に仲間内がいて一緒にやっていたから perl はそれなりに使えるようになったようなもの。awk から流れて perl に移った時もけっこう手ごわくて四苦八苦してた記憶がある。当時のモチベーションがないから、眠気に負けるのだ。しょぼいぞ。
いくつかのモジュールをインストールするにはすでにインストール済みのものをいくつかバージョンUPしてインストールしなおさないとダメだというのがわかって、解説本を諦めた。
起きてからネットで検索。
ここ と ここ のおかげで、とりあえずCSVファイルをインポートしたデータベースからSELECTでずら〜っと一覧することはできるようになった。
ここからはPHP5の解説本も一冊欲しいところか。うまく構築できそうだったらzaurusに持ちこんでみよう。
しかし、蒸し暑い一日だなぁ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
メガネを作ってみた

例によって。景虎とか一の蔵とか浦霞とかの週末だったりするんだけど、やむにやまれず、メガネを12600円なり。メタルフレームの細いフォルムのめがねはどんなものをかけてみても、たとえば道で肩が当たったら、その相手は目の前で土下座して謝るとか・おまえどこのもんやねん、とかにしか見えない。眉毛が薄いし顔のつくりが希薄なのでメガネの印象で顔がガラっと。
それならいっそのこと「はい、わたし、メガネをかけておりますよ」というのを狙って黒ぶちのしっかりしたフレームのものを買ってみた。つまらないネタしかない売れない芸人のような風貌になっても、頭文字が「や」の自由業のひとに見えるよりゃよっぽどマシかも。
見てくれはともかく。
わたしは大学5年まではずっと視力は1.5と、へたすりゃマサイ並に良かったんだけど、会社に入って連日ライトボックスでポジをトリミングするうちにみるみる視力が落ちてきて、先日の検診では視力が左右とも0.3。で、このメガネで久しぶりに視力0.7の世界にまで戻してみたら…こんなに違ってたのか、と愕然。
歳を食うと、髪とか歯とか目とか、いろいろ大変になってくるんだなぁ。しみじみ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」