サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Wikipedia
qiita.com/mrk_21
はじめに みなさん、こんにちは。今回は CMake スクリプトを記述する上で便利なコマンドや変数について紹介していきます。 list()コマンド リストの長さ取得や追加など、リスト操作の便利な機能を提供するコマンドです。CMake: リストで詳しく述べられています。 file()コマンド file()コマンドは、各種ファイル操作やファイルの検索に加えて、ダウンロードやアップロード機能など様々な機能を提供します。よく使いそうな機能を下記に示します。 ファイル生成・削除と入出力 WRITE・APPEND file(WRITE <filename> [<content1> ...]) file(APPEND <filename> [<content1> ...]) WRITEはファイル<filename>に指定した文字列<content1> ...を出力します。このとき、指定したファイルが存在し
はじめに みなさん、こんにちは。CMake Advent Caldendar 2014 もついに最終日となりました。最後は、CMake に関する情報を集める上で、どこを見たらいいのか、などについて書いていきます。また、CMake 3.1.0 での変更点についても触れます。 情報源 CMake は、英語圏を含めてもWeb・書籍ともにまとまった情報が少ないです。ここでは、CMake のまとまった情報が載っているものを記します。 Web 基本的に、公式リファレンスをみることになると思いますが、下記のWebサイトがあります。 CMake Reference Documentation — CMake 3.0.2 Documentation 言わずと知れた公式リファレンス。当然の事ながらここが一番詳しいです。しかし、リファレンスであるので具体的にその機能をどう使えばいいのかがよく分かりませんし、英語
はじめに みなさん、こんにちは。今回は、CMake でのプリコンパイル済みヘッダーの作成と利用方法について書いていきます。 プリコンパイル済みヘッダーとは? C++ において、Boost の使用やテンプレートメタプログラミングは必須といっても過言ではありません。しかしこれらを駆使すると、ビルド時間がすぐに Boooooooooooooooost してしまいます。ビルド時間の増大は開発速度の低下を招き、プログラマの精神的負担にもなります。そのため、どうにかして高速化しなければなりません。高速化の手法にはいくつかありますが、機械的にできるものとしてプリコンパイル済みヘッダーの使用が挙げられます。プリコンパイル済みヘッダーとは、よく使うヘッダーをあらかじめコンパイルしておくことにより、そのヘッダーを使うコードのコンパイル速度を向上させることができるものです。しかし、プリコンパイル済みヘッダーは各
はじめに みなさん、こんにちは。今回は CTest について書いていきます。 CTest とは何か? CTest とは、テストの実行を支援する、いわゆるテストランナーのことで、テストを実行するコマンドを複数登録し、それぞれ実行するというシンプルなものです。しかし、実行するテストの選択・グループ化・並列実行など便利な機能を備えており、テスティングフレームワークや言語を問いません。このため、すべてのテストをCTestを通して行うようにすれば、テストの実行方法が共通化され、テストランナー機能が貧弱なテスティングフレームでのテストも便利に実行することが可能になります。 CTest でのテストは、CMakeLists.txtにテストの設定を記述し、ビルドディレクトリにてctestコマンドを実行することにより行います。そのほかにも、CDash といわれるテストサーバーとの連携や、スクリプトファイルによ
はじめに みなさん、こんにちは。今回は Generator Expressions について書いていきます。 Generator Expressions とはなにか? Generator Expressions とは、ターゲットプロパティでのみ有効な式で、ビルドシステム生成時に評価されます。 Generator Expressions の種類 この Generator Expressions には以下の3種類があります。 Logical Expressions Logical Expressions とは、if式と条件式を扱うものです。指定条件を満たしたときのみ値を出力したい場合に使用します。 if式 if式の構文は以下のようになっています。 条件式<condition>では、1を真、0を偽と評価します。if()コマンドのようにTRUEやFALSE、NOTFOUNDなどはブール定数と評価さ
はじめに みなさん、こんにちは。今回はモジュールについて書いていきます。 モジュールとは何か? モジュールとは、定義したコマンドなどを複数のスクリプトで再利用するためのもので、include()コマンドやfind_package()コマンドなどで読み込まれます。
はじめに みなさん、こんにちは。CMakeの変数には、いままで使用してきたものの他に、キャッシュ変数と環境変数というものが存在します。今回は、これらについて書いていきます。 キャッシュ変数とは、文字通りキャッシュされた変数のことで、値がキャッシュファイルに保存されています。そのため、キャッシュファイルが削除されるまで存在し続けます。主な用途として、使用するコンパイラや、依存ライブラリのパスなどの格納です。これらは、CMakeの実行毎に設定する必要はないので、キャッシュ変数を用いて永続化します。また、キャッシュ変数は、通常の変数と違って、スクリプトのどこからでも参照・設定ができます。 このキャッシュ変数の操作方法は以下のようになっています。 生成・代入 キャッシュ変数の生成や代入には、set()コマンドのCACHEオプションを用います。 変数名<variable>および値<value> ..
はじめに みなさん、こんにちは。今回は条件分岐について書いていきます。 構文 条件分岐にはif()コマンドを使います。このif()コマンドは、elseif()・else()・endif()コマンドとセットで使用します。構文は下記のとおりです。 if(expression) # then section. COMMAND1(ARGS ...) COMMAND2(ARGS ...) ... elseif(expression2) # elseif section. COMMAND1(ARGS ...) COMMAND2(ARGS ...) ... else(expression) # else section. COMMAND1(ARGS ...) COMMAND2(ARGS ...) ... endif(expression) if — CMake 3.0.2 Documentation e
まず、CMakeの言語仕様を知るために、公式ドキュメントの cmake-language という言語仕様について書いてあるページを見てみました。 すると、CMake言語は以下のような構造になっていることがわかりました。 file ::= file_element* file_element ::= command_invocation line_ending | (bracket_comment|space)* line_ending line_ending ::= line_comment? newline space ::= <match '[ \t]+'> newline ::= <match '\n'> command_invocation ::= space* identifier space* '(' arguments ')' identifier ::= <match '[
$ docker run -t -i -v /path/to/host-dir:/path/to/guest-dir your/image /bin/bash ここで、マウントしたディレクトリのアクセス権限は、uid=1000, gid=1000, 755 となっており、 変更することはできない。
はじめに とあるサイトに定期的にログインして利用履歴のCSVを取ってくるというプログラムを AppleScript + Safariで書いていたがいちいち Safari が起動してめんどくさいので、PhantomJS で書きなおすことにした。 さっそく PhantomJS の最新版(1.9.2) をインストールして、スクリプトを書いた。コードは下記のとおりである(簡易化してある)。 page = (require 'webpage').create() callbacks = [ -> # ログイン画面の処理 page.evaluate -> document.getElementById('user').value = 'user' document.getElementById('pass').value = 'pass' e = document.createEvent('Mouse
このページを最初にブックマークしてみませんか?
『qiita.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く