ceresライブラリインストール時のピット回避ガイド(公式ドキュメント付き)

目次

前に書いてある

1. ceres-solver.google.com ポート 443 への接続に失敗しました

解決策: ソースを交換する

2. OpenSSL SSL_read: 接続がリセットされました、エラー番号 10054

解決策: SSL 認証をキャンセルする

3. 管理者権限が必要な場合があります

解決策: root 権限を使用してインストールを行う

4. 名前空間「ceres」の「LocalParameterization」は型を指定しません

解決策: ceres のソース コード バージョンを置き換えます。

5. インストールされている ceres をアンインストールします

解決策: ceres によってシステムにインストールされたファイルを削除します。

6. ceresを使用した設定

7. 公式文書と短縮版のリファレンス

8. セレスの紹介


前に書いてある

ご存知のとおり、ceres は SLAM ツール チェーンの非常に重要なライブラリであり、すべてのインストールはスムーズではありません。

作業の便宜上、落とし穴を繰り返さないように、頻度の高い問題をまとめて示します。

1. ceres-solver.google.com ポート 443 への接続に失敗しました

git clone の公式接続を直接使用する

git clone https://ceres-solver.googlesource.com/ceres-solver

おそらく次のような結果が得られます。

解決策: ソースを交換する

git clone  https://github.com/ceres-solver/ceres-solver.git

2. OpenSSL SSL_read: 接続がリセットされました、エラー番号 10054

Git エラー メッセージ: OpenSSL SSL_read: 接続がリセットされました、エラー番号 10054

通常、この問題は ubuntu では発生しません。Windows では可能です。

これは、サーバーの SSL 証明書がサードパーティ組織によって署名されていないため、エラーが報告されるためです。エラーの原因としては、ネットワークが不安定であるか、接続がタイムアウトしたことが考えられますが、何度試してもエラーが発生する場合は、次のコマンドを実行することをお勧めします。

解決策: SSL 認証をキャンセルする

git config --global http.sslVerify "false"
git config --global https.sslVerify "false"

3. 管理者権限が必要な場合があります

make install を実行すると、この問題が発生する可能性があります。

 プロンプトによると、おそらく管理者権限が必要です。

理由を分析してください。コマンドを root 権限で実行する必要があるためである可能性があります。

解決策: root 権限を使用してインストールを行う

sudo make install

4. 名前空間「ceres」の「LocalParameterization」は型を指定しません

ceres ライブラリを使用するソース ファイルをコンパイルし、上記の「xxx」in namespace 'ceres' doesn't name a type のようなエラー メッセージが表示される場合は、ソース ファイルをテストするときに ceres のバージョンを再確認することを検討してください。

通常、バージョン番号はソース コードの package.xml にあります。

例: 1.4.0 は古いバージョンで多く使用されており、最新バージョンは 2.1.0 に更新されています (上の図を参照)。

解決策: ceres のソース コード バージョンを置き換えます。

5. インストールされている ceres をアンインストールします

前の記事から引き続き、新しい要件を使用して、インストールされている ceres をアンインストールします。

Ceres のライブラリ ファイルは "/usr/local/lib/" に 1 つだけあり、すべてのヘッダー ファイルは "/usr/local/include/ceres/" にあります。アンインストールは非常に簡単な 2 段階のプロセスです。

解決策: ceres によってシステムにインストールされたファイルを削除します。

sudo rm -r /usr/local/lib/cmake/Ceres
sudo rm -rf /usr/local/include/ceres /usr/local/lib/libceres.a

6. ceresを使用した設定

Ceres を使用するプロジェクトでは、CMakeLists.txt にあるはずです。

find_package(Ceres REQUIRED)
include_directories(${Ceres_INCLUDE_DIRS})
target_link_libraries(可执行文件名 ${CERES_LIBRARIES})

注: 最新の Ceres では C++14 標準を使用し、それを CmakeLists.txt で変更する必要があります。

set( CMAKE_CXX_FLAGS "-std=c++14 -O3" )

7. 公式文書と短縮版のリファレンス

インストール — Ceres ソルバー (ceres-solver.org) http://ceres-solver.org/installation.html簡易バージョンについては、次のリンクを参照してください。

Ceres ソルバーのインストールと使用https://blog.csdn.net/qq_40270833/article/details/123264980

8. セレスの紹介

セレスNO.1を0から学ぶicon-default.png?t=M85Bhttps://blog.csdn.net/qq_41265365/article/details/123782248

おすすめ

転載: blog.csdn.net/slampai/article/details/127960537