LinuxでG++コンパイラを使用する方法
コンパイルプロセスは、C++コーディングプロジェクトの重要な部分です。さまざまな機能を提供しながら、効果的でシンプルなコンパイラが必要です。これがg++コンパイラの出番です。コマンドラインから直接、コンパイルのニーズに合わせてさまざまな関数を提供します。ここでは、この優れたツールの使用を開始する方法を紹介します。
g ++とは何ですか?
G ++は、コマンドラインから実行されるC++コンパイラとして最もよく説明されています。これはフリーソフトウェアファウンデーションによってリリースされ、GCC(GNUコンパイラコレクション)の一部です。高水準プログラミング言語(この場合はC ++)で記述されたコードを、コンピューターが理解できる低水準言語に変換することにより、実行可能ファイルに変換します。
ほとんどのLinuxインストールには、箱から出してすぐにインストールされるg++が付属しています。ただし、選択したディストリビューションが見つからない場合は、こちらに従って、Linuxの最も一般的なディストリビューションのいくつかにインストールする方法を学習してください。
UbuntuとDebianでは、apt
を使用してインストールします パッケージマネージャー:
sudo apt update && sudo apt install g++
FedoraおよびCentOSでは、yum
を使用してインストールします パッケージマネージャー:
sudo yum install g++
pkgs.orgからパッケージとしてダウンロードすることもできます。これは、カールツールを使用して実行できます:
sudo curl https://ftp.de.debian.org/debian/pool/main/g/gcc-defaults/g++_10.2.1-1_amd64.deb -O
dpkg
を使用してパッケージをインストールできます ユーティリティ:
sudo dpkg -i g++.deb
g ++がインストールされているかどうかを確認するには、--version
を使用します フラグ:
g++ --version
g ++がインストールされたので、コンパイルのニーズに合わせてg++を使い始めることができます。
まず、--help
を使用してマニュアルを確認すると便利です。 フラグ:
g++ --help
コンパイラとその設定に関する追加情報を表示すると便利な場合があります。 --dumpspecs
を使用して、コンパイラの組み込み仕様文字列を表示できます。 フラグ:
g++ --dumpspecs
これにより、その機能とさまざまなオプションの基本的な概要がわかります。
g ++を使用して基本的なコンパイルを実行するには、次の形式を使用します。
g++ [file]
たとえば、「main.cpp」という名前のファイルがある場合は、次のように入力してコンパイルできます。
g++ main.cpp
コンパイルされた実行可能ファイルの名前は、デフォルトで「a.out」です。
次のように入力して実行します:
./a.out
コンパイルされた実行可能ファイルの名前を指定する場合は、-o
を使用して指定します。 フラグ:
g++ -o [name] [file to compile]
実行可能ファイルの名前を「main」として指定するとします。次のように入力します:
g++ -o main main.cpp
オブジェクトファイルをリンクする場合は、次の形式を使用してリンクします。
g++ -o [compiled file] [obj1.o] [obj2.o]
たとえば、オブジェクトファイル「object-1.o」と「object-2.o」を「メイン」の実行可能ファイルにコンパイルする場合は、次のように入力します。
g++ -o main object-1.o object-2.o
ライブラリとヘッダーを見つけることができるルートディレクトリを指定する場合は、--sysroot
を使用します。 フラグ:
g++ -o [name] --sysroot [directory] main.ccp
コードをコンパイルするときに、コンパイラがすべての警告メッセージを表示すると便利な場合があります。幸い、g ++にはこの機能が組み込まれており、すぐに使用できます。
すべての警告メッセージを表示するには、-Wall
を使用します フラグ(大文字の「W」に注意してください):
g++ -o main main.cpp -Wall
ライブラリの作成は、適切なコードエディタを選択することと同じくらいソフトウェア開発の一部です。 ar
などのいくつかのトリックがあります コマンドを使用すると、g++を使用してライブラリを簡単にコンパイルできます。
オブジェクトファイルをコンパイルすることから始めます:
g++ -o obj.o main.cpp
次に、ar
を使用します アーカイブ(「.a」)ファイルを作成するための「rcs」を使用したユーティリティ:
ar rcs archive.a obj.o
最後に、g ++で使用します:
g++ -o final example.cpp archive.a
1。このツールを使用して.cファイルをコンパイルできますか?
技術的には可能です。ただし、gcc
g++は主にC++コンパイラであることが意図されているため、ユーティリティはこれにより適しています。さらに、g++は.cファイルをC++ファイルとして扱います。
g ++を使用して.cファイルをコンパイルする場合は、-c
を使用するだけです。 フラグ:
g++ -c [example.c] -o example
2。 GCCをC++コンパイラとして使用すべきではないのはなぜですか?
gcc
を非常にうまく使用できます C++コンパイラとして。ただし、g++は実際にはgcc
を適応させたものです。 それはC++にもっと焦点を合わせています。したがって、C++コードを使用するプログラマーにいくつかの追加機能を提供します。
3。最新バージョンは何ですか?
g++の最新バージョンは2022年第1四半期の時点で11.2.0のようです。2021年7月にリリースされました。
-
LinuxでTeeコマンドを使用する方法
Linuxシェルでパイプとリダイレクトを使用したことがある場合は、teeを使用する必要がある場合もあります。 ユーティリティ。 ティーは何をしますか? などのコマンド ls 現在のディレクトリの内容が表示されます。つまり、これらのコンテンツをstdout(標準出力)(通常は画面)、より正確には仮想端末ディスプレイに表示します。 のようなコマンド ls > file123 画面には何も表示されません。 signは、すべての出力をstdoutに表示するのではなく、ファイルにリダイレクトします。 file123には、以前に画面に表示されていたコンテンツが入力されます。 ディレクトリ
-
Linuxでssコマンドを使用してネットワーク接続を監視する方法
Linuxを使用している場合は、ネットワークについてもっと知る必要がある時期が来るでしょう。これを行うのに役立つツールがいくつかあり、一部のツールは他のツールよりも複雑です。 ss コマンドは多くのマシンにインストールされていると信頼できるものなので、知っておくと便利です。 ssコマンドとは何ですか? 2文字のコマンドの名前は難解に見えるかもしれませんが、実際には非常に単純です。多くのLinux/Unixコマンドと同様に、名前はコマンドの機能の省略形です。ここで、ssはSocketStatisticsの略です。 Socket Statisticsは、古いnetstatに代わるものです。