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 アカウント情報をエレガントにバックアップする方法

推薦する

Vue+Websocketはチャット機能を実装するだけです

この記事では、チャット機能を簡単に実装するためのVue+Websocketの具体的なコードを参考まで...

ウェブサイトのAboutページの紹介コンテンツの書き方

公式、電子商取引、ソーシャル ネットワーキング、個人のいずれの Web サイトでも、訪問者に貴重な時...

絵文字と問題解決のためのMySQL/Javaサーバーサポートの詳細な説明

この記事では、絵文字用の MySQL Java サーバーのサポートと問題解決方法について説明します。...

JavaScript の遅延読み込み属性パターンを理解する

従来、開発者はインスタンスで必要になる可能性のあるデータに対して JavaScript クラス内にプ...

LinuxのバックグラウンドでPythonプログラムを実行するいくつかの方法

1. 最初の方法は、unhup コマンドを直接使用してプログラムをバックグラウンドで実行することです...

シンプルなカルーセル効果を実現するJavaScript

カルーセルとは何ですか?カルーセル: モジュールまたはウィンドウで、コンピューターでマウスをクリック...

Linuxでホスト名を変更する方法

1. 現在のホスト名を表示する [root@fangjian ~]# ホスト名ctl 静的ホスト名:...

React useMemo と useCallback の使用シナリオ

目次メモを使うコールバックの使用メモを使う親コンポーネントが再レンダリングされると、そのすべての要素...

opensslを使用して無料の証明書を生成する方法

1: openssl とは何ですか? その機能は何ですか?適用シナリオは何ですか? Baidu 百科...

MySQLの不合理なMaxIdleConnsにより接続が短くなる

1 背景最近、Shimo Document のオンライン ビジネスでパフォーマンスの問題が発生しまし...

MySQLにインデックスを追加しても効果がないいくつかの状況について簡単に説明します。

インデックスを追加すると、クエリの効率が向上します。インデックスを追加するということは、ドキュメント...

vue3+TypeScript+vue-routerの使い方

目次使いやすいプロジェクトを作成するvue-cli 作成ヴィートクリエイションvue-routerを...

Mysql論理アーキテクチャの詳細な説明

1. 全体的なアーキテクチャ図他のデータベースと比較すると、MySQL は、そのアーキテクチャがさま...