問題タブ [llvm-gcc]

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 投票する
0 に答える
1921 参照

gcc - コンパイラ-RT CLANG LLVM

私は GCC 4.1.2 を使用しており、この GCC コンパイラ バージョンのみを使用して CLANG / LLVM をビルドしたいと考えています。何らかの要件に合わせて既存のソース コードを変更できるように、ソースからソースへの翻訳ライブラリが必要です。

最初に、usr/lib64/libstdc++.so.6 に関する問題に直面しました: LLVM / CLANG の make 中にバージョン `GLIBCXX_3.4.9' が見つかりません。したがって、GCC 4.5.0 をダウンロードしてビルドし、ローカル パスにインストールします。GCC 4.5.0 の libstdc++.so.6 には GLIBCXX_3.4.9 バージョンがあることがわかりました。GCC 4.1.2 を使用してコンパイルしたかったので、動的ライブラリ パスを次のように設定しました。

そして、'make clean' の後に再び make を述べました。これでエラーは発生しなくなりました。

ただし、'Compiler-RT' モジュールのコンパイル中に問題に直面しています。どの目的で Compiler-RT モジュールが必要かはわかりませんが、LLVM と CLANG はうまくコンパイルされているようです。

ダウンロード、ビルド、およびインストールから Compiler-RT を除外することは可能ですか?

LLVM と Clang のみをビルドする

GCC 4.5.0 の libstdc++.so.6 を使用するように共有ライブラリ パスを設定するのは正しいですか? Compiler-RT は、ダウンロードして CLANG / LLVM でビルドするための必須のステップです。

このサンプル コードはこちらで見つかりました - Compiler-RT が必要ですか - 同じへの参照が表示されませんが、確認したいだけですか?

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

gcc - Clang を使用した基本的なソースからソースへの変換

サンプルコードのビルドに成功しました

以下のようなサンプルコードがある場合、次の要件があります。

コードは次のように変換する必要があります

次のコード変更を試しました:

しかし、出力は次のようになります。

どうすれば目的を達成できるか教えてください。

次のような出力も得られます。

コードのレンダリングを同じように停止するにはどうすればよいですか? 複合ブロックのステートメントが余分なステートメントを追加する必要があるというだけです。

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

objective-c - Xcode LLVM +GCC4.2-デバッグシンボルを生成する

私はライブラリプロジェクトを持っています、私は常にStrip Debug Symbolsリリースビルドのために""をオンにしました

Generate Debug Symbols最近、「 」フラグに気づきました。「」フラグをNOに設定するとGenerate Debug Symbols、ライブラリのサイズが30%縮小します。

これはリリースビルドのために行うための合理的な最適化ですか?

「デバッグシンボルの削除」オプションと「デバッグシンボルの生成」オプションの違いは何ですか。理想的には、デバッグシンボルを削除しても、生成されたデバッグシンボルがすべて消えることはありません。なぜ私はこの違いを見ているのですか?

また、バイナリサイズを減らすために、-Os(Fastest、Smallest)以外にどのような最適化を行うことができますか?

「」はどのように機能しStrip Linked Productますか?

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

parsing - LLVM ベースのコンパイラのフロントエンド

LLVM インフラストラクチャに基づくコンパイラを開発しようとしています。私の言語には C のような構文があるため、既存の C コンパイラを活用したいと考えています。現在、私はフロントエンド (字句解析、構文解析) に集中していますが、どのフロントエンドが最適なアプローチなのか混乱しています。Clang、llvm-gcc、または従来のフレックス/バイソン ツール?

私は、コンパイラの後の段階で LLVM IR コードを生成できる最も単純なソリューションに特に関心があります。

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

objective-c - プロパティ宣言の__block属性

LLVM(iOS上)で問題なくビルドされる既存のコードを修正して、llvm-gcc-4.2でもビルドできるようにする必要があります。いくつかの場所で見られるこのパターンを除いて、私はほとんどすべてを終えました:

ここでの目的は、を保持せずにブロック内からプロパティにアクセスできるようにすることだと思いますself。gccがここでサポートしていない属性を削除するにはどうすればよい__blockですか?それでも同じ効果を達成できますか?

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

ios - LLVM、GCC 4.2、Apple LLVM コンパイラ 3.1 の違い

LLVM GCC 4.2 と Apple LLVM コンパイラ 3.1 の主な違いは何ですか?

私はコンパイラにかなり慣れていないので、助けていただければ幸いです。また、2 つのコンパイラがゲームのパフォーマンスにどのように影響するかにも特に興味があります。

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

cordova - Xcode 4.1.1 が Phonegap 2.0.0 および BarcodeScanner プラグインでクラッシュする

.mm または .cpp のいずれかである Xcode 内で「ファイルをプロジェクトに追加しています ...」と、Xcode が一時停止してからクラッシュします。

Xcode 4.4.1 をインストールし、Phonegap 2.0.0 を適切にセットアップしました。このマスター リポジトリの Phonegap BarcodeScanner プラグインを使用しています。

https://github.com/phonegap/phonegap-plugins/tree/master/iOS/BarcodeScanner

Xcode -> (Target Build) -> Build Settings -> Build Options -> Compiler for C/C++/Objective-Cを使用して、コンパイラを Apple LLVM 4.0 からLLVM GCC 4.2に変更しました。

次のフレームワークも適切に追加されます。

  • AVFoundation.framework
  • AssetsLibrary.framework
  • CoreVideo.framework
  • libiconv.dylib

BarcodeScanner が正しく機能するために必要な 4 つのファイルがあります。

  • バーコードスキャナー.js
  • CDVBarcodeScanner.mm
  • zxing-オールインワン.cpp
  • zxing-オールインワン.h

「zxing-all-in-one.h」ファイルをプラグイン フォルダーに追加し、「barcodescanner.js」を www/ ディレクトリに追加すると、すべて問題ありません。Xcode がクラッシュするのは、.mm または .cpp ファイルを追加するときだけです。

Phonegap 1.7.0 と Xcode 4.4 を実行している別の MacBook Pro があり、バーコード スキャナーは正常に動作します。クラッシュしている Phonegap 2.0.0 で何が起こったのですか? FAQ と README ドキュメントを調べましたが、機能するものは見つかりませんでした。助けてくれてありがとう!

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

macos - Apple gcc:/usr/bin/gcc-4.2と/usr/bin/i686-apple-darwin11-llvm-gcc-4.2の違いは何ですか?

私はLionを実行しています。私はこれらの2つのバージョンを持っていますがgcc、どちらも同じものであるとdiff主張していますが、バイナリは異なると主張しています。OS Xの状況を理解しようとしてgccいます。違いは何ですか?

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

c - 「ファイルはサポートされていないファイル形式でビルドされました」を使用せずに、GCCでオブジェクトファイルを正しくコンパイルするにはどうすればよいですか?

コンパイル時にこのエラーが発生します:

そして、オブジェクトファイルをコンパイルするときの他のすべてのオブジェクトファイルについて:

私は以下を使用してファイルをリンクしようとします:

では、この問題の原因は何ですか?

gccのバージョンは次のとおりです。i686-apple-darwin11-llvm-gcc-4.2(GCC)4.2.1(Apple Inc.ビルド5658に基づく)(LLVMビルド2336.11.00)

ありがとうございました。

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

java - Java 1.6セグメンテーション違反11(OSX 10.7.4)

実行時にGCCコンパイラを使用してOSXでコンパイルした1つの.dylibライブラリを読み取る.jarファイルがあります。

アプリケーションはOSX10.6.8で問題なく実行されます。

Javaバージョン:

javaバージョン"1.6.0_33"Java(TM)SEランタイム環境(ビルド1.6.0_33-b10-424-10M3720)Java HotSpot(TM)64ビットサーバーVM(ビルド20.8-b01-424、混合モード)

GCCバージョン:

i686-apple-darwin11-llvm-gcc-4.2(GCC)4.2.1(Apple Inc.ビルド5658に基づく)(LLVMビルド2336.1.00)

私は64ビットのJavaを使用しており、.jarが必要とするライブラリはx86_64用にコンパイルされています。したがって、Snow Leopardでは、すべてが正常に実行されます。

アプリケーションをOSX10.7.4に切り替えます。そこで、2つの異なるJavaバージョンを試しました。

最初のJavaバージョン(Snow Leopardと同じ):

javaバージョン"1.6.0_33"Java(TM)SEランタイム環境(ビルド1.6.0_33-b10-424-10M3720)Java HotSpot(TM)64ビットサーバーVM(ビルド20.8-b01-424、混合モード)

2番目のJavaバージョン(本日更新):

javaバージョン"1.6.0_35"Java(TM)SEランタイム環境(ビルド1.6.0_35-b10-428-11M3811)Java HotSpot(TM)64ビットサーバーVM(ビルド20.10-b01-428、混合モード)

GCCバージョン:

i686-apple-darwin11-llvm-gcc-4.2(GCC)4.2.1(Apple Inc.ビルド5658に基づく)(LLVMビルド2336.9.00)

最初に、Snow Leopardでコンパイルされた.dylibを使用してアプリケーションを実行しようとしましたが、次のエラーが発生しました。

ロケーション0x0rip= 0x7fff894aa697の無効なメモリアクセスセグメンテーション違反:11

また、アプリをクラッシュさせなかったが、SnowLeopardには表示されない新しい行:

このクラッシュの後、LionのGCCで依存関係.dylibを再コンパイルしようとしましたが、何も変わりませんでした。それでもセグメンテーション違反が発生します:11エラー。

私はネットでこのエラーについて読みましたが、Javaの更新によって何かが混乱した可能性があるため、Lionで頻繁に発生しますが、Javaにあまり詳しくないため、誰かがこれらの問題に遭遇したことがあります。これを解決するには?

どうもありがとう。


[編集#1:OSX10.7.4でJava7を試してみてください]

Java 7で.jarを実行すると、クラッシュが再び発生します。エラーレポートは次のとおりです。