UbuntuにCMakeをインストールするいくつかの方法の詳細な説明

UbuntuにCMakeをインストールするいくつかの方法の詳細な説明

CMakeをインストール

sudo apt をインストール cmake

この方法はインストールが簡単ですが、欠点は、Android プラットフォーム用に opencv を自分でクロスコンパイルする場合、ubuntu16.04 ソースの cmake バージョンが 3.5.1 のみであり、Android クロスコンパイル ツールチェーン android.toolchain.cmake には最低でも 3.6.0 の cmake バージョンが必要であるため、バージョンが低すぎるというメッセージが表示されることです。

ソースコードをダウンロードしてCMakeをコンパイルする

最新のcmakeをダウンロードするには、cmakeの公式サイトにアクセスしてください。

ダウンロード

ダウンロード後、解凍してディレクトリに入り、以下を実行します。

./ブートストラップ
-j8 を作る
sudo インストール

バージョンを確認する

cmake --バージョン
cmake バージョン 3.9.0

CMake スイートは Kitware (kitware.com/cmake) によって保守およびサポートされています。

この方法では最新バージョンのcmakeをインストールできますが、Androidプラットフォーム用のサードパーティライブラリをクロスコンパイルする場合、Android SDKで提供されるクロスコンパイルツールチェーンandroid.toolchain.cmakeが最新バージョンのcmakeをサポートしていないため、コンパイル中に問題が発生します。

Android SDK の CMake のソフト リンク

Android SDKのcmakeを/usr/local/binディレクトリにソフトリンクします。

sudo ln -s /home/gavinandre/Android/Sdk/cmake/3.6.4111459/bin/cmake /usr/local/bin

これで、Androidクロスコンパイルツールチェーンandroid.toolchain.cmakeを使用してサードパーティのライブラリをコンパイルしても問題はなくなるはずです。

簡単なCmakeの例を書く

まず、main.cppファイル、シンプルなhelloworldプログラムを書きます。

#include<iostream>
int メイン()
{
  std::cout<<"hello world!"<<std::endl;
  0を返します。
}

次にCMakeLists.txtファイルを記述します

cmake_minimum_required(バージョン 2.8)
#プロジェクト名project(HELLOWORLD)
#元のプログラムをインクルードします。つまり、指定されたディレクトリ内のソースプログラムを変数DIR_SRCにコピーします。
#指定されたパスのソースファイルを指定された変数aux_source_directory(./DIR_SRC)に保存します
#プログラムを生成する add_executable(helloworld ${DIR_SRC})

コンパイル

$ mkdir ビルド
$ cd ビルド
$cmake ..
$作る
$ ./helloworld

実行結果:

こんにちは世界!

Ubuntu に CMake をインストールするいくつかの方法について説明したこの記事はこれで終わりです。Ubuntu に CMake をインストールする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • ubuntu14.04+dockerのインストールと使用
  • Ubuntu に Nginx サーバーをインストールする方法
  • Ubuntu での snap パッケージのインストール、更新、削除、簡単な使用
  • Ubuntu 16.04 をインストールした後に行うべきこと (まとめ)
  • Ubuntu システムに MariaDB データベースをインストールするチュートリアル
  • Linux (Ubuntu 18.04) に Anaconda をインストールする詳細な手順
  • Ubuntu 14.04 での Eclipse のインストール体験の共有
  • Ubuntu 16.04 のインストールプロセスの完全な記録
  • Ubuntu 14.04にpycharmをインストールする手順
  • UbuntuでのThunder Speed Editionのインストールと使用

<<:  古典的なスネークゲームの JavaScript 実装

>>:  MySQL アカウント情報をエレガントにバックアップする方法

推薦する

SELINUXの動作原理の詳細な説明

1. はじめにSELinux が Linux にもたらす主な価値は、柔軟で構成可能な MAC メカニ...

js でオブジェクトを作成するさまざまな方法とその長所と短所のまとめ

目次初期作成方法ファクトリーパターンコンストラクターパターンコンストラクタパターンの最適化プロトタイ...

VirtualBox を使用して Linux クラスターをシミュレートする方法

1. ホストMacbookにHOSTをセットアップする前回のドキュメントでは仮想マシンの静的 IP ...

Tomcat の一般的な例外と解決コードの例

弊社のプロジェクトは Java で開発され、ミドルウェアは Tomcat でした。運用中に、Tomc...

Mysql Explainコマンドの使用と分析

mysql explain コマンドは、MySQL がインデックスを使用して選択ステートメントを処理...

nginx で SSL 証明書を設定して https サービスを実装する方法

前回の記事では、openssl を使用して無料の証明書を生成した後、この証明書を使用してローカル ノ...

CSSリストのスライドにより、下部に隠れるのを防ぎ、長い画面モデルの処理に適応します。

1. モバイル端末がリストスライドを処理するとき、WeChat には下部にページに戻るボタンが組み...

Vueはランニングライトのシンプルな効果を実現

この記事では、マーキーのシンプルな効果を実現するためのVueの具体的なコードを参考までに共有します。...

Alibaba Cloud Centos 7.5 に MySQL をインストールするチュートリアル

CentOS 7 の yum ソースには、MySQL を正常にインストールするための mysql-s...

Docker データ ストレージ tmpfs マウントの詳細な説明

この記事を読む前に、ボリュームとバインドマウントの基本を理解しておいてください。詳細については、次の...

Reactの親コンポーネントと子コンポーネント間のデータ転送の詳細な説明

目次1. 親コンポーネントが子コンポーネントにデータを渡す1.1. 親コンポーネントコード1.2. ...

フローティング要素が親要素の高さを崩す原因と解決策の詳細な説明

フローティング要素は、親要素の高さを縮小します。要素を float float:left/right...

システム エラー 1067 のため、MySQL 5.6 解凍バージョン サービスを開始できません

今日午後ずっと私を悩ませたバグを記録する半月前から始めましょう。それから.................

一般的な Nginx のテクニックと例の概要

1. 複数サーバーの優先順位たとえば、各サーバー ブロックがポート 80 をリッスンする場合、www...

非常に実用的なMySQL関数の包括的な概要、詳細な例の分析チュートリアル

目次1. MySQLの関数の説明2. 単行関数の分類3. キャラクター機能4. 数学関数5. 日付と...