分12朝晩はずいぶん冷え込むようになり,家の回りの山々もすっかり晩秋の景色になりました。肌寒さは感じるものの,手指がかじかむほどではない秋の夜長は,プログラミングに最適の時期です。いうわけで(?⁠)⁠,今回は,前回作成したPlamoBuild.fluxbox-1.3.7を用いてPlamoBuildスクリプトの中身を解説します。PlamoBuildスクリプトの詳細まず,make_PlamoBuild.pyで作成したPlamoBuild.fluxbox-1.3.7の全体を行番号付きで紹介しましょう。fiご覧の通り,PlamoBuildスクリプトは100行ほどのシンプルなシェルスクリプトで,頭から順番に,「⁠パッケージに関する必要な情報の設定(3~12行⁠)⁠」⁠,「⁠ソースコードのダウンロード(37~39行⁠)⁠」⁠,「⁠ビルドのための設定(41~64行⁠)⁠」⁠,「⁠実際のビルド(66~74行⁠)⁠」⁠,「⁠仮ディレクトリにインストールしてパッケージ化(76~103行⁠)⁠」⁠,といった作業を行います。それぞれの作業を行うかどうかは$opt_configや$opt_buildといったフラグで管理しており,"download"や"package"といった引数を与えて各作業を指定することもできますし,引数を与えずに実行すれば"config","build","package"が順に実行されます(24~36行⁠)⁠。15行目で読みこんでいる/usr/share/plamobuild_functions.shが汎用的な処理をまとめたサブルーチン集で,38行目のdownload_sources,77行目のcheck_root,89行目のinstall_tweak,95行目のconvert_linksといった処理が定義されています。17行目から22行目で紹介している$Wや$Bといったスクリプト中の一文字変数もこのplamobuild_functions.sh内で定義しているので,ビルド用ディレクトリを別の場所にするなど,これらの変数を変更する場合は15行目以降で設定する必要があります。PlamoBuildスクリプトの再実行さて,それではこのPlamoBuild.fluxbox-1.3.7を使って,実際にパッケージを作る手順を再紹介しましょう。前回はオプション指定無しで一気にパッケージ作成まで進めましたが,今回は設定,ビルド,パッケージ化の各処理を手動で実行してみます。いう警告メッセージが出ていました。--enable-sharedという指定を認識しない⁠」⁠,という意味です。そこで,9行目のOPT_CONFIGを空行に修正します。--enable-shared"という指定は,「⁠静的ライブララリ(.a)は作らず,動的(共有)ライブラリ(.so)を作る」という意味です。Autotoolsは,共有ライブラリが広まる以前に設計されたツールなため,しばらく前までは「静的ライブラリを作り,共有ライブラリは作らない」という動作がデフォルトでした。--enable-shared"を指定して,共有ライブラリ作成を指示する必要があったものの,最近では共有ライブラリがデフォルトで,このオプションが不要なソースコードが増えてきました。OPT_CONFIG行を空行にすると,PlamoBuild.fluxbox-1.3.7は警告なく設定を完了します。'make'configを引数に指定してPlamoBuildスクリプトを実行すると,$opt_configフラグが立って41~64行の処理が行われ,$Bで指定した/tmp/build/以下にMakefile等の必要なファイルが用意されます。Linuxとりまとめ役。人類学的にハッカー文化を研究しようとしていたものの,いつの間にかミイラ取りがミイラになってOSSの世界にどっぷりと漬かってしまいました。最近は田舎に隠棲して半農半自営な生活をしながらソフトウェアと戯れています。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。