Clionの優雅な完全なリモート自動同期とリモートデバッグc++を使用
3858 ワード
私のホームページへようこそ.com、転載は出典を明記してください.
要旨:linuxでvimでC++を書く場合、通常gdbでデバッグしますが、コードやジャンプコード、watchを好きなように見ることができません(getの正しい使い方がまだできていないためかもしれません).そのため、Clionは本場コードを自動的に同期したり、自分でリモートコードをダウンロードしてローカルに同期したり、リモートマシンで実行しているコードをデバッグしたりすることができることを発見しました.そのために記録します.
概要
CLionはCおよびC++の開発のために設計されたプラットフォーム間IDEです.IntelliJをベースに設計されており、開発者の生産性を向上させ、生産性を向上させるための多くのスマート機能が含まれています.
環境準備オペレーティングシステム:macOS/Windows IDE: CLion ソースコードパス:Node Master 自動同期 CLionの設定を開き、Preferences|Build,Execution,Deployment|Deployment に入ります.ポイントプラス、リモート構成 を追加 SFTPプロトコルに設定し、リモートip、port、passを設定してTest Connectionをクリックし、 に接続成功したかどうかを確認します. Mappings に切り替えローカルコードルートディレクトリLocal path を設定リモートコードルートディレクトリDeployment path を設定ファイルをアップロード Uploadはアップロード、Downloadはダウンロード、ローカルとリモートでマッピングされたディレクトリは に設定されています.アップロード成功 runlvm.shファイルの更新に成功しました.現在の時間は3月18 21:42 です. Tool-Deployment-Automatic Upload(always)で自動同期 に設定自動同期であれば、ローカルでコードを変更するたびに を自分で同期できる. Sync with Deployed toは、リモートコードをローカル に自動的にダウンロードします.手動でプロジェクト全体をアップロード のアップロードに成功し、100個のファイル をアップロードしました.リモートディレクトリの表示に成功しました. はい、ローカルで変更があれば自動的にリモートに同期します.
リモートデバッグ
CentOS依存
GDB Remote Debugの追加
ローカルクリーオン配置 GDBリモートデバッグの構成GDB Remote Debug を追加リモートアクセスパラメータの設定(target remote args):tcp:xx.xx.xx.xx:1234 リモートパスとローカルパスのマッピング(Path mappings) を設定するリモートデバッグ接続が成功すると、ローカルデバッグのようにブレークポイント、シングルステップトレースなど を設定できます.デバッグには、ローカルとリモートのコード一致が必要です 2つの方法でリモート構成を設定
方法1、リモートgdbserverの起動リモートデバッグはgdbserverのサポートに依存し、gdbserverの起動プログラムを通じて、リモートデバッグの接続を待ってから、接続に成功してからプロセスを起動する.
仮定コードのルートディレクトリ:
注意:cmakeの指定には-DCMAKE_が必要ですBUILD_TYPE=Debugデバッグを取得してください
メソッド2リモートgdbserverの動的接続gdbserverは、起動済みプロセスへの動的バインドもサポートします.
ブレークポイントデバッグ開始小さな虫をクリックして のデバッグを開始コードがブレークポイントに停止していることがわかります Variablesは自分で設定できるwatch 通常のデバッグと同じ CLionで完全にリモートで作業
これは非常に爽快な操作で、後で完全にIDEでコードを書くことができます.コマンドラインを使うのは専門的に見えますが、ツールを使うと効率的に仕事の効率を高めることができます. Preferences|Build,Execution,Deployment|Toolchains へリモート接続情報を設定し、CLionはCMake gcc g++gdbの情報 を自動的に監視する. Preferences|Build,Execution,Deployment|CMake へ Toolchain設定したばかりの を選択上の が自動的にコンパイルされます.リモートToolchainsツールチェーンが構成され、対応するCMakeプロファイル が構成されました.上の図は、自動コンパイルおよびアップロードされたディレクトリ のように、自動同期ディレクトリに設定すればよい.は現在、自動同期ディレクトリに設定されています.実行/デバッグ構成スイッチで適切なCMakeプロファイルを選択するだけで、アプリケーションとテストを完全にリモートで構築、実行、デバッグできます. Applicationを追加してプログラム を実行リモート運転、ローカル出力結果 リモート運転、ローカル自動デバッグ まとめ CLionの同期情報を構成します.どのマシンのどのディレクトリに同期しますか. Deploymentを使用すると、ローカルおよびリモートで自動同期および自動ダウンロードが可能になります.手動同期および手動ダウンロードコード 構成GDB remote Debug設定 gdbserverを使用してプログラムをデバッグする gdbserver attachを使用して、起動したプログラムに従ってデバッグ を行う.リモートコードデバッグ を完全にローカルで実行
その他この方法は非常に優雅ではないでしょうか.そうすれば、ツールチェーン(Toolchains)を絶えず追加すれば、数え切れないほどのリモート環境にローカルで対応することができます. この方法はJetBrainファミリーバケツ に適用されるべきだ.
要旨:linuxでvimでC++を書く場合、通常gdbでデバッグしますが、コードやジャンプコード、watchを好きなように見ることができません(getの正しい使い方がまだできていないためかもしれません).そのため、Clionは本場コードを自動的に同期したり、自分でリモートコードをダウンロードしてローカルに同期したり、リモートマシンで実行しているコードをデバッグしたりすることができることを発見しました.そのために記録します.
概要
CLionはCおよびC++の開発のために設計されたプラットフォーム間IDEです.IntelliJをベースに設計されており、開発者の生産性を向上させ、生産性を向上させるための多くのスマート機能が含まれています.
環境準備
リモートデバッグ
CentOS依存
# cmake
yum install cmake -y
# gcc & gdb
yum install gcc-c++ -y
yum install gdb -y
#gdbserver
yum install gdb-gdbserver -y
GDB Remote Debugの追加
ローカルクリーオン配置
方法1、リモートgdbserverの起動リモートデバッグはgdbserverのサポートに依存し、gdbserverの起動プログラムを通じて、リモートデバッグの接続を待ってから、接続に成功してからプロセスを起動する.
仮定コードのルートディレクトリ:
/data/pzqu/read_phy_disk_use/
、以下のコードを実行した後にコンパイルするcd /data/pzqu/read_phy_disk_use/build
cmake .. -DCMAKE_BUILD_TYPE=Debug
make
gdbserver :1234 ./read_phy_disk_use
注意:cmakeの指定には-DCMAKE_が必要ですBUILD_TYPE=Debugデバッグを取得してください
メソッド2リモートgdbserverの動的接続gdbserverは、起動済みプロセスへの動的バインドもサポートします.
gdbserver :1234 --attach
ブレークポイントデバッグ開始
これは非常に爽快な操作で、後で完全にIDEでコードを書くことができます.コマンドラインを使うのは専門的に見えますが、ツールを使うと効率的に仕事の効率を高めることができます.
Automatically reload CMake project on editing
の設定にチェックを入れると、コードに修正がある限り/tmp/tmp.pIdETgMIBR
であり、次の図その他