タグ

2018年3月10日のブックマーク (17件)

  • CMakeで大きめのプロジェクトを構成するためのメモ - Qiita

    ここ2週間ぐらい、CMakeジェネレータのqtpmの改良を続けてきました。生成されたファイル自身は、いろいろな試行錯誤の結果が凝縮されたものです。こういう意図をもってこのように変更してきたよ、というのをまとめます。 ちなみに、生成するCMakeLists.txtはライブラリ用とアプリ用と2パターンあり、ライブラリ用の完成品は上記のリンクに貼っています。アプリ用の完成品はこのページの下部にあります。あと、書きながらちょちちょいミスを見つけて手修正したところもあるので、まだ検証が漏れている所も少しあります。特にWindows周り。検証して間違いがあったら適宜修正していきます。 大規模とは何か? まずは大きいプロジェクトとは何か、というところから。簡単に説明すると、独立した部品に分けられるようなアプリを想定しています。独立した部品は個別のパッケージに入ります。その中には、サンプルコードとテストコ

    CMakeで大きめのプロジェクトを構成するためのメモ - Qiita
  • Visual Studio 2017のCMake対応機能の使い方 - 新 masafumi's Diary

    Visual Studio 2017ではC++でCMakeに対応したのですが、いまいち使い方がわかってませんでしたが、いろいろと試していたらようやくわかりました。 リリースノート https://www.visualstudio.com/ja-jp/news/releasenotes/vs2017-relnotes ファイルメニューので、「開く」の「フォルダー」でCMakeLists.txtのおいてあるフォルダを開けば、メニューにCMakeが追加されるのかー。 CMakeメニューの中身は下記のような感じですね。glslangで試しています。 ビルドがそのままできます。ビルド構成の変更も対応しています。

    Visual Studio 2017のCMake対応機能の使い方 - 新 masafumi's Diary
  • CMake 簡易まとめ - Qiita

    autotools に比べてとても使いやすい。 CMakeLists.txt ビルド対象のディレクトリーに CMakeLists.txt を配置することで cmake コマンドが対象だと認識してくれるようになる。 最低限必要な設定は次になる。 cmake_minimum_required CMakeLists.txt に記載されている内容を実行するにあたって必要な CMake のバージョンを明示する add_executable 実行ファイル名と、そのビルドに必要な c / cpp ファイルの指定 ヘッダーファイルはここに指定しなくても、更新すると勝手に認識してリビルド対象にしてくれる target_link_libraries リンクするライブラリーの指定 gcc に -lfoo と指定していた場合、 foo とだけ書く ビルド対象の分割 複数のビルド対象がある場合、ひとつの CMake

    CMake 簡易まとめ - Qiita
  • CMake に入門&対処事例

    Visual Studio の各バージョンごとに vcxproj を用意して… というのが辛くなったため、 CMake によるプロジェクト生成という流派にちょっと入門してみました。 現時点において、 Visual Studio のバージョンが違っても割とプロジェクトは開くことが出来ますし、ツールセットなどの設定をプルダウンメニューから変更する程度で対応できるような状態になっているため、以前ほど対応に時間がかかるような問題ではありません。 しかしながら、ユーザーの操作が伴いますし、各バージョンごとにビルドチェックしたい!といった点ではできないようなので、 CMake 方式に変更してみた次第です。 事例色々 ここでは入門してみて、Visual Studio でのあれそれが、 CMake ではどうやるの?といったことを挙げていきたいと思います。 また、こんなところに躓きました、という点も合わせて

    CMake に入門&対処事例
  • モノリシックなバージョン管理の利点 | POSTD

    以下は、私がよく交わす会話の一例です。 人物A:FacebookやGoogleは、巨大なモノリシックリポジトリ(モノレポ)を使っているんだってよ。 私:みたいだね。あれは当に便利だと思う。 人物A:僕に言わせれば最悪の愚行さ。全てのコードを単一のリポジトリに入れるのがヒドイ考えだと、FacebookやGoogleはなぜ思わないんだろうか。 私:FacebookやGoogleエンジニアたちも小さなリポジトリには精通しているだろうけど( 濱野純(Junio Hamano) 氏はGoogle勤務だし)、単一の大きなリポジトリの方が、きっと”ある理由”で好みなんだよ。 人物A:なるほどね。僕としては、まだちょっと違和感はあるけど、モノレポが使われる理由は分かったような気がするよ。 “ある理由”はかなり長いので、同じ会話を何度も繰り返さなくていいように、ここに書き留めておこうと思います。 シンプ

    モノリシックなバージョン管理の利点 | POSTD
  • Excelファイルを比較するツールを作ってみた - Qiita

    はじめに Excelファイルの比較にはWinMergeにxdocdiffのプラグインを入れて使っていたのですが、 列が揃ってなかったり、ヘッダを固定できなかったりと少し不便に感じていました。 そんなわけでExcelファイルを比較するツールを自作してみたので、紹介と使い方を書いていこうと思います。 注意 このツールは筆者の仕事環境において必要最低限の要件で作成しています インストール ここ から最新の.msiをダウンロードする ダウンロードしてインストーラーを実行する ※電子署名をしていないので、以下のウィンドウが表示されると思います。「詳細」→「実行」で実行できます。 Nextを選択 インストールするディレクトリと、ユーザーを選択 (特に指定がなければそのままNext) Nextを選択 起動方法 ショートカットアイコン インストールが完了すると、デスクトップにショートカットアイコンが作成さ

    Excelファイルを比較するツールを作ってみた - Qiita
  • 普段使ってるツールをまとめてみた2017(Windows向け) - Qiita

    2017年も終わるので普段使ってる便利っぽいツールをまとめてみました ※基的にWindows向け ファイラー あふw System AKT 2画面ファイラー 基的にキーボードで操作する デフォルトではマウス操作不可 インクリメンタルサーチmigemoが使える(重要) カスタマイズ性がパない エディタで開く用のメニューファイルを作って気分、用途によってエディタを変えるとか ランチャー CraftLaunch(2系) CraftLaunch - craftware 登録型コマンドラインランチャー コマンドに引数も渡せる 3系を使わない理由は並び順も大事だから 3系は確か使うとリストの上に表示されるようになる つまりAaa,Aabの順で登録したメニューがAab,Aaaの順に表示されることがある 常に同じ感覚で使いたいので並び順が勝手に変わらない2系を継続利用 fenrir B@r09u3 S

    普段使ってるツールをまとめてみた2017(Windows向け) - Qiita
  • NimScript

    gigs123
    gigs123 2018/03/10
  • CMakeの使い方(その1) - Qiita

    はじめに 2月のはじめ頃、CMakeを使ってビルドを自動化しようと思い、色々ググってCMakeLists.txtを作り試行錯誤したのですが、その時は結局断念しました。というのも、abcというステップがあるとすると、ググッて得られる解説はabcのaやbが抜けていきなりcから解説されたものが多く、初心者にはきつかったからです。特にcmake.orgのチュートリアルはまさにその典型で、チュートリアルのStep 1からして長過ぎて、当に何が必要なのかわかりにくい・・・orz ところが、今学期受けているHigh Performance Computingという講義で行われたCMakeの使い方の解説がわかり易すぎて、あっという間に自作ライブラリをCMakeでコンパイルすることができるようになり、CMakeの便利さに感動してしまいました。私と同じくCMake初心者という方にこの感動を共有すべく、ここに

    CMakeの使い方(その1) - Qiita
  • cmake module for running nimrod compiler

  • CMake: モジュール - Qiita

    はじめに みなさん、こんにちは。今回はモジュールについて書いていきます。 モジュールとは何か? モジュールとは、定義したコマンドなどを複数のスクリプトで再利用するためのもので、include()コマンドやfind_package()コマンドなどで読み込まれます。

    CMake: モジュール - Qiita
  • pyenvが必要かどうかフローチャート - Qiita

    pyspaの統合思念体の渋川です。 「pyenv使いましょう!」系の記事、全部ゴミ — Yoshifumi YAMAGUCHI (@ymotongpoo) September 29, 2016 これはpyenvがダメではなくて、pyenvをとりあえずインストールしておきましょう記事がダメという意味だそうです。すでにとんぷーが5年前にこの問題について書いています。これを読んで分かる人には不要です。 この記事では「便利」と「必要」は分けて考えています。後者にフォーカスしています。 前提知識 Environment Isolation Tool(環境分離ツール)というカテゴリの開発補助ツールがあります。pip install Sphinxとか書いたら、ライブラリはグローバル空間に入っちゃいます。複数バージョン入れられません。そんなときに使うのが、この環境分離ツールです。最近はいろいろな言語がこれ

    pyenvが必要かどうかフローチャート - Qiita
  • Windows版のChrome 64以降はClangでコンパイルされている | スラド IT

    WindowsGoogle Chromeでは、2月に安定版がリリースされたChrome 64以降でコンパイラーにClangが使われているそうだ(LLVM Project Blogの記事、 Ars Technicaの記事、 BetaNewsの記事、 Neowinの記事)。 Microsoft Visual C++(MSVC)からClangに移行する計画は数年前から進められており、MSVCビルドとClangビルドによるA/Bテストも実施していたそうだ。既に他のOS版はClangでコンパイルされているため、Windows版の移行によりClangへの移行が完了したことになる。ただし、ClangはVisual Studioに加えて使われるもので、置き換えるものではないという。現在もWindowsChromeではMicrosoftのヘッダーやライブラリ、SDKバイナリを使用しているほか、Windo

  • C++初心者ならビルドはBazelでラクしちゃいましょう - will and way

    この記事は 初心者C++er Advent Calendar 2015, Qiita C++ Advent Calendar 2015 15 日目の記事です. 注意 UbuntuもしくはMac OSXの環境が作れない方はそっと閉じてください。(VagrantでUbuntuはすぐ準備できる) スマホアプリ畑の人間が書くので、それに向けた内容も多くなっています。 PCからの閲覧をおすすめします。スマホで読むと、コードのレイアウトが崩れるようなので。 ビルドツールについて みなさんはビルドオートメーションツールには何を使っていますか? 玄人界隈ではcmakeが定番です。 私が携わっているプロジェクトではgypと呼ばれるツールを使っています。 元々Chromiumで開発されていたGoogleのオープンソースの一つで、node.jsにも使われているビルドツールです。 特殊なフォーマットに従ってファイ

    C++初心者ならビルドはBazelでラクしちゃいましょう - will and way
  • Googleが開発する最新ビルドツール「Bazel」を使ってみよう | さくらのナレッジ

    Bazelの特徴2:ビルドによってディレクトリを汚染しない Bazelでは、ソースコードやテストデータなどが格納されているディレクトリとは別のディレクトリでビルドやテストなどを行う仕組みになっている。makeコマンドでは意図的に設定や操作を行わない限りソースコードと生成物が同じディレクトリに混在する事態になることが多いが、Bazelではこういった問題が発生しない。 また、ビルドやテストはデフォルトではサンドボックス化された環境で行われるため、ビルドやテストがそれを実行しているシステムに影響を及ぼす可能性が最小限に抑えられている。 Bazelの特徴3:並列ビルド 大規模なソフトウェアではビルド対象が増えるため、ビルドにかかる時間も増える傾向がある。Bazelでは生成物どうしの依存性を自動的に把握し、可能な限り並列でビルドを実行する仕組みになっている。これにより、ビルド時間の短縮が期待できる。

    Googleが開発する最新ビルドツール「Bazel」を使ってみよう | さくらのナレッジ
  • 新世代のビルドツール Bazel で Java プロジェクトのビルドからユニットテストまで - willard379’s blog

    この記事はアプレッソ Advent Calendar 2016 19日目のエントリーです。 新世代のビルドツール Bazel を使って、Java プロジェクトをビルドしてみたいと思います。 Bazel とは? Bazel とは、Google 社内で使われているビルドツール Blaze をオープンソース化したものです。 2016.12 現在 Beta 版として公開されており、2017.4Q 公開予定の Stable 版へ向けて着々と開発が進んでおります。 Bazel の特徴 公式ページ によると、Speed、Scalability、Flexibility、Correctness、Reliability、Repeatability という6つの軸で語られています。 最適化された依存性分析、高度なキャッシング、ビルドアクションの並列化による Speed ヤン○ーディー○ルばりに「小さなものから大

    新世代のビルドツール Bazel で Java プロジェクトのビルドからユニットテストまで - willard379’s blog
  • サイト閉鎖のお知らせ | iPhonePLUS

    アプリ開発者の皆様 投稿サイト 『iPhonePLUS』 ですが、 2021年11月30日をもって閉鎖させて頂くことになりました。 ご参加の際に頂きました個人情報ですが、サイト閉鎖をもって消去いたします。 長きにわたりご支援を頂きましたことに、関係者一同、心より御礼申し上げます。 今後も弊社発行の各媒体への変わらぬご愛顧と、一層のご支援ご協力を賜りますよう、 宜しくお願い申し上げます。

    gigs123
    gigs123 2018/03/10
    タイミングを合わせろ!ARモード搭載!階段ふみはずしたら死亡AR - iPhonePLUS #iphoneplus https://twitter.com/iPhonePLUS_web/status/972260793570832384 iPhone から送信