問題タブ [gcc4.9]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
18263 参照

c++ - gcc-4.9 未定義の動作サニタイザー

gcc-4.9 の変更では、次のように書かれています。

UndefinedBehaviorSanitizer (ubsan)、高速な未定義動作検出器が追加され、-fsanitize=undefined で有効にできます。実行時に未定義の動作を検出するために、さまざまな計算がインストルメント化されます。UndefinedBehaviorSanitizer は現在、C および C++ 言語で使用できます。

この質問 (未定義の動作を検出する C++ 実装? ) を見ましたが、かなり時代遅れのようです。

このリンク ( http://gcc.gnu.org/ml/gcc-patches/2013-06/msg00264.html ) にはいくつかの情報がありますが、数か月前のものです。

これは、Undefined Behavior Sanitizer を GCC に追加する試みです。非常にアルファ版であることに注意してください。これまでのところ、それほど多くはありませんが、現時点では、ゼロのケースによる除算、INT_MIN / -1、およびさまざまなシフトのケース (負の値によるシフト、2 番目のオペランドが TYPE_PRECISION (first_operand) よりも >= の場合のシフト) を処理する必要があります。 (これまでのところ、整数型について)

私が読んだことgccから、 fromに移植されていLLVMます。

私はそれを試してみましたが(5 / 0)、唯一の違いは次の出力のようです:

誰かがそれについてもっと情報を持っていますか、またはそれが持つ機能は何ですか?

0 投票する
0 に答える
555 参照

linux - msp430-elf ターゲット用の gcc のビルド

msp430 用の gcc-4.9 をビルドしようとしています。の最新バージョンを既にビルドしており、基本的な構成でbinutilsビルドを試みました。gcc-4.9

configure --target=msp430-elf --enable-languages=c,c++ --with-newlib=yes

ただし、問題は、gcc が自分のマシン用にビルドされ、新しいコンパイラでターゲットのx86-unknown-linuxビルドが開始されたと思いますが、既に gcc-4.8 がインストールされており、既にインストールされているターゲットが必要なだけです。msp430msp430-elf4.8

注:msp430ターゲットは でのみ使用できます。すでにインストールされているので、ホスト マシン用ではなく4.94.9 をビルドしたいだけです。msp430

まず、ビルドが失敗しました。次に、成功したとしても、インストールしたくありません。また、これを行うのではないかとx86心配make installしています。

のドキュメントconfigureはかなり曖昧で、助けていただければ幸いです。

0 投票する
0 に答える
455 参照

android - Linux/x86-64 から Android/ARM への「手動」クロスコンパイル?

(ソースコードを表示していないので、おそらくSOに関する境界線の質問です!)

Linux/Debian/Sid/x86-64 for Android (ルート化された Nexus 7 では 4.4.2) でコンパイルされた C 言語の hello world プログラムを (最新の GCC トランク、つまり 4.9 を使用して) クロスコンパイルできるようにしたいと考えています。 Android端末エミュレーターで実行されます。私の目標は、クロスツール チェーン全体、おそらく GCC、binutils、MUSL libcを構成する方法を学ぶことです。したがって、Android 用の SDK や NDK は特に使用したくありません。

私の Android は、 GCCと binutilsのarm-linux-gnueabi GCC 4.9 プライマリ ターゲットプラットフォームだと思います。これは正しいです?

次に、(MUSL libc と静的にリンクされた) hello world をコンパイルしたら、それをタブレットに転送するにはどうすればよいですか? (おそらく MTP)。

PS。私は Linux (および、私が貢献している GCC、および binutils) に精通していますが、完全な Android 初心者です。

PPS: 本当の動機は、 GCC プラグインについての講演を準備して、GCC クロスコンパイラ用のプラグインをコンパイルしたいということです。

0 投票する
1 に答える
400 参照

c++ - #define での gcc 4.9 エラー

次の行

(別のインクルード ファイルから) インクルードされ、gcc 4.9 から苦情が寄せられています。

奇妙なことに、正常にコンパイルされた別のソース ファイルに同じヘッダー (compiler.h) が含まれていました。何か案は?編集always_inline事前に定義されていないことを確認しました。ご参考までに:

0 投票する
2 に答える
11638 参照

homebrew - Homebrew で gcc49 をインストールする

Homebrew をインストールしようとしていますgcc49(GCC 4.9)。具体的には、次のコマンドを使用してインストールしています。

ただし、これを通常どおり実行すると、 I'm missing というエラーが表示されますgmp4。ここが変なところです。

すると、欠落brew install homebrew/versions/gmp4していることがもう一度通知されます。gmp4ライブラリがインストールされません。他のいくつかの必要なライブラリでもまったく同じことが起こります。現在、この奇妙な動作を修正するのではなく、実行しようとしています

...結果は

本当に私を混乱させるのは最後の行です。インストールしようとしたソフトウェアがそれを返すのを見たことがありません - 何が起こっているのか、どうすれば修正できますか?

興味深いことに、同じ Homebrew バージョンのデスクトップでこれを試すと、GCC 4.9 は を実行するだけで問題なくインストールされbrew install gcc49ますhomebrew/versions

0 投票する
1 に答える
2032 参照

gcc - 完全な再構築を行わずに GCC 4.8.2 から GCC 4.9.0 にアップグレードする

数週間前に GCC 4.8.2 をインストールしました。インストール プロセスはうまくいき、私の Ubuntu システムには GCC 4.8.2 がインストールされています (12.04 64 ビット)。今、GNU は新しいバージョン 4.9.0 をリリースしました。

私の質問は次のとおりです。すべてのプロセスを実行せずに GCC を 4.9.0 にアップグレードする方法はありますか? また、gcc-4.8.2-4.9.0.diff.gz ファイルの利点/目的を教えてください。コンパイラをアップグレードするためのスクリプト/パッチ ファイルのようなものですか?

参考までに、システムで 2 つの異なるバージョンの GCC を使用する予定はありません。

0 投票する
1 に答える
224 参照

macos - OSXで「gcc」だけでgcc-49を実行するにはどうすればよいですか?

最近、gcc 4.9 をインストールしました。これには、以前にデフォルトでインストールされていた以前のバージョンの gcc が含まれていました。

gcc と入力すると、以前のバージョンの gcc が実行されます。gcc と入力したときに、新しくインストールした gcc 4.9 を実行するにはどうすればよいですか?