• プリプロセッサー出力

    質問 が生成する出力を見るにはどうしたらよいでしょうか。 C プリプロセッサーがオブジェクトファイルに変換する前の出力を見るにはどうしたらよいでしょうか? MACRO定義が私のコードに何をするのか見てみたいのですが。 どのように解決するのですか? gcc -E file.c または g++ -E file.cpp がこれをやってくれます。Eスイッチを使うと、コン

    2023-12-08 02:25:36
  • コンパイル時にSSE/SSE2/AVX/AVX2/AVX-512/AVX-128-FMA/KCVIの可用性を検出するにはどうしたらいいですか?

    質問 私はいくつかの行列計算を最適化しようとしていて、SSE/SSE2/AVX/AVX2/AVX-512/AVX-128-FMA/KCVI [1] がコンパイラによって有効になっているか?理想的にはGCCとClangのために、しかし私はそれらの1つだけで管理することができます。 可能かどうかわからないので、もしかしたら自作のマクロを使うかもしれませんが、むしろ検知してユーザーに選択

    2023-10-14 11:25:06
  • GCCを使った警告メッセージの選択的削除

    質問 このコードの部分。 Int32 status; printf("status: %x", status) を実行すると、以下のような警告が表示されます。 jpegthread.c:157: warning: format '%x' expects type 'unsigned int', but argument 3 has type 'Int32' 型をキャストするこ

    2023-09-22 10:13:52
  • [解決済み] デバッグオプション -g はバイナリ実行ファイルをどのように変更するのですか?

    質問 C/C++のコードを書くとき、バイナリ実行ファイルをデバッグするために、コンパイラ/リンカでデバッグオプションを有効にする必要があります。 GCCの場合、そのオプションは-gです。 デバッグ・オプションが有効なとき、バイナリ実行ファイルにどのような影響を与えますか? デバッガを機能させるために、ファイルにどのような追加データが格納されているのでしょうか? どのように解決するのですか

    2023-08-15 02:58:42
  • [解決済み] 依存関係のある動的ライブラリとリンクする

    質問 次のようなシナリオを考えてみましょう。 共有ライブラリ libA.so ,依存関係なし。 共有ライブラリ libB.so、依存関係にあるのはlibA.soです。 libBとリンクするバイナリをコンパイルしたい。 libBのみとリンクするのか、libAともリンクするのかどちらでしょうか? 直接の依存関係にあるものだけをリンクし、依存関係から未解決のシンボルの解決を実行

    2023-06-04 22:03:46
  • [解決済み] コマンドラインオプションの--start-groupと--end-groupとは何ですか?

    質問 コマンドラインオプションの目的は何ですか?以下のコマンドラインの意味を読み解くのにお役立てください。 -Wl,--start-group -lmy_lib -lyour_lib -lhis_lib -Wl,--end-group -ltheir_lib どうやらリンクと関係があるようですが、GNUのマニュアルではグループ化とは一体何を意味するのかが不明です。 どのように解決

    2023-05-13 02:31:35
  • [解決済み] MinGWとMSYSがコマンドラインから与えられたパス名を混乱させないようにする方法

    質問 Windows で、CodeSourcery のクロスコンパイラ スイートを使って、ARM/Linux 用のプログラムをクロスコンパイルしています。私は MinGW MSYS をコマンド インタープリターとして使用していますが、非常に頻繁にパスとパス名を混同してしまいます。例えば、私のプログラムをビルドするために、次のコマンドを実行します。 arm-none-linux-gnueab

    2023-05-02 09:25:20
  • [解決済み] GCCのビルドにはGMP 4.2+、MPFR 2.3.1+、MPC 0.8.0+が必要です。

    質問 GCC 4.5を次のサイトからダウンロードしました。 http://www.netgull.com/gcc/releases/gcc-4.5.0/ からダウンロードしましたが、セットアップやビルドをしようとすると、以下のエラーが発生します。 Linux:>~/shared_scripts/bin/gcc/gcc-4.5.0 1040> /x/home/prakash

    2023-04-29 03:44:56
  • [解決済み] gcc -s "と "strip "コマンドの違いは何ですか?

    質問 この2つはどう違うのでしょうか? gcc -s : 実行ファイルからすべてのシンボルテーブルとリロケーション情報を削除します。 strip : オブジェクトファイルからシンボルを破棄します。 同じ意味を持つのでしょうか? あなたはどちらを使いますか。 実行ファイルのサイズを小さくする? 実行速度を上げる? どのように解決するのですか?

    2023-04-23 03:33:43
  • [解決済み] 2つのGCCコンパイルされた.oオブジェクトファイルを3つ目の.oファイルに結合する。

    質問 どのように2つのGCCコンパイルされた.oオブジェクトファイルを3番目の.oファイルに結合するのでしょうか? $ gcc -c a.c -o a.o $ gcc -c b.c -o b.o $ ??? a.o b.o -o c.o $ gcc c.o other.o -o executable ソースファイルにアクセスできるのであれば -combine GCC フラグは

    2023-03-14 23:56:07
  • [解決済み] 変更されたヘッダーファイルを含むソースファイルをMakefileが自動的にリビルドするにはどうしたらいいですか?(C/C++の場合)

    質問 私は以下のmakefileを持っていて、私が作業しているプログラム(実際にはカーネル)を構築するために使用しています。それはゼロからであり、私はそのプロセスについて学んでいるので、完璧ではありませんが、私のメイクファイルを書く経験のレベルでは、この時点で十分に強力であると思います。 AS = nasm CC = gcc LD = ld TARGET =

    2023-01-19 07:48:38
  • [解決済み] rpathと-Lの違いは何ですか?

    質問 gcc そして ld は、ライブラリの検索パスを指定するための多くの方法を提供しますが、その中でも -rpath と -L フラグがあります。この 2 つのフラグに違いはなく、それぞれのフラグがライブラリの検索パスに 追加されることを事実上示しています。しかし、両方のフラグが まさに を行うのは不思議です。これら 2 つのオプションに違いがあるとすれば、それは何で

    2022-12-16 18:33:54
  • [解決済み] gcc -ggdbとgcc -gの違いは何ですか?

    質問 C言語のプログラムをコンパイルするためにgccを使用する場合 通常 -g を使用して、いくつかのデバッグ情報を elf ファイルに取り込みます。 に格納し、必要に応じて gdb が私を助けてくれるようにします。 しかし、いくつかのプログラムでは -ggdb を使っていることに気づきました。 デバッグ情報をより gdb フレンドリーにするためです。 これらはどのように違うの

    2022-10-30 04:31:15
  • [解決済み] fpic` と `-fPIC` の gcc パラメータの違いは何ですか?

    質問 私はすでに gcc のマニュアルページを読みましたが、まだ -fpic と -fPIC . どなたか、とても簡単でわかりやすく説明していただけませんか? 関連する質問 共有ライブラリを構築する際の -fPIC の意味は何ですか? gcc -fPIC フラグを使用してオブジェクトをコンパイルした場合、それらが実行可能ファイルで使用されるとしたら、どのよう

    2022-10-04 04:20:09
  • [解決済み] 一部のライブラリのみを静的にリンクする

    質問 GCCでリンクする際に、特定のライブラリだけを静的にリンクするにはどうしたらよいでしょうか。 gcc ... -static ... は静的にリンクしようとします。 すべて を静的にリンクしようとしますが、いくつかのライブラリ(例えば libX11) の静的バージョンは持っていません。 どのように解決するのですか? gcc -lsome_dynamic_lib co

    2022-08-21 05:36:33
  • [解決済み] GCCをGMP、MPFR、MPC、ELFでバラバラにインストールする方法、共有ライブラリは不要ですか?

    質問 GCC (the GNU Compiler Collection) を現在のバージョンで、ひとつひとつインストールするにはどうしたらよいでしょうか。 依存関係の正しいバージョンを使用し、パッケージ マネージャー (yum、rpm、apt、dpkg など) を使用せず、共有ライブラリを使用しないようにするには、どうすればよいでしょうか。 典型的な開発者は、典型的な方法で GCC

    2022-08-16 16:42:03
  • [解決済み] Windows 7 マシンに gcc をインストールするには?

    質問 Windows 7 マシンに MinGW をインストールしています。私は、C コンパイラのための完全な gcc をインストールし、使用したいと思います。私は、この目的のための単一のプリコンパイルされた既製のインストールファイルがないことを発見しました。私は次のページをチェックしました。 http://gcc.gnu.org/install/ これは難しく、私の理解レベルを超えてい

    2022-08-16 15:03:48
  • [解決済み] CUDAは私のgccのバージョンと互換性がありません。

    質問 CUDA SDK に同梱されている例のいくつかをコンパイルするのに問題があります。 私は開発者用ドライバー (バージョン 270.41.19) と CUDA ツールキットをインストールしました。 そして最後に SDK (両方とも 4.0.17 バージョン) をインストールしました。 当初は、全く与えてもコンパイルされませんでした。 error -- unsupported GNU

    2022-07-30 02:30:02
  • [解決済み] ライブラリヘッダからのGCC警告を抑制する方法は?

    質問 log4cxx、boostなどのライブラリを使用するプロジェクトがあり、そのヘッダが多くの(繰り返しの)警告を生成します。ライブラリのインクルード(例:#include <some-header.h> )や特定のパスからのインクルードからの警告を抑制する方法はあるでしょうか?私は、関連する情報が不明瞭になることなく、プロジェクトのコードで通常通り -Wall および/または

    2022-04-29 21:20:13
  • [解決済み] CMakeに新しいGCCのパスを指定する方法

    質問 私のOSはcentosで、パスにデフォルトのgccがあります。 /usr/bin/gcc . しかし、それは古いので、私はgccの新しいバージョンが必要です。そこで、私は新しいバージョンを新しいパスにインストールします。 /usr/local/bin/gcc . しかし cmake の場合、古いバージョンのgccパスが使用されます( /usr/bin/gcc ) . gcc を新

    2022-04-28 13:10:53