問題タブ [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.
llvm - clang:エラー:リンカーコマンドが終了コード1で失敗しました(呼び出しを確認するには-vを使用してください)
私はLLVMを初めて使用します。私はClang3.0を使用してcプログラムを実行しています。私はmandrivaSpring2010を使用しています。GCCバージョン4.4.1がシステムにインストールされています。次のリンクを使用してLLVMをインストールしました。
以下のコマンドを使用して実行します
次のエラーが発生します。
llvm - llvm-gcc エラー:互換性のないプラグイン
llvm は初めてです。llvm-gcc を使用して C プログラムをコンパイルしようとすると、次のエラーが発生します。
$ llvm-gcc test.c
互換性のないプラグイン バージョン cc1: エラー: プラグイン /usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5/plugin/dragonegg.so の初期化に失敗しました
ubuntu-11.04 と llvm-gcc-4.5 を使用しています
助けてください。
ありがとう
ios - デバイスへのビルド時に LLVM エラーが発生するが、シミュレーターでは発生しない
テスト ターゲットを iPad1 (4.3.5) または iPhone4 (4.3.5) にビルドしようとすると、Xcode 4 (ビルド 4A304a) から次のエラーが発生します。
ただし、テスト ターゲットがシミュレーターでのビルドに切り替えられた場合はそうではありません。
ボークしているコード行は
(無実を守るためにオブジェクトの名前が変更されました ;-) ) しかし、それはシングルトンだと言えます。
私はグーグルを検索しましたが、このエラーに関連するものは何も得られませんでした。
イアン、よろしくお願いします。
objective-c - - [NSDate timeIntervalSinceDate:] は GCC 4.2 では非常に小さい数値を返しますが、iOS4.3 シミュレーターの LLVM-GCC 4.2 では期待どおりに動作します。
iOS 4.3 シミュレーターでは、次のコードは非常に小さい数値1e-700
を返します: GCC 4.2 では、LLVM-GCC 4.2 では期待どおりに動作します。何か案は?
これらの値は実行ごとに変化しますが、出力の例を次に示します
選択日:1981-06-02 16:27:34 +0000
現在日付:2011-08-03 05:18:36 +0000
間隔:5.489011535689859e-277
[nowDate timeIntervalSinceDate:selectedDate]
GDBで実行しています:(952001462.97236204
これは私の期待値です)
iphone - LLVM GCC 4.2で#warningを無効にして、特定のターゲットで警告が発生しないようにする方法はありますか?
#warning
デバッグターゲットでGCCディレクティブを無効にするが、ターゲットを解放しないためのコンパイラフラグを探しています。誰かがこれを行う方法を知っていますか?
ios - リンカ エラー アサーションに失敗しました: (atom->fixupCount() == 1)
Xcode 4.0.2 を使用すると、シミュレーターで適切にコンパイル、リンク、および実行されるターゲットがあります。ただし、iOS デバイス用にコンパイルしてリンクすると、次の (完全な) リンカー エラーが発生します。
誰かがこれに光を当てることができますか?
ありがとうマイク
-v による呼び出し
追加の詳細
これは、FrameworkHarness というアプリケーション用にコンパイルされた .m ファイルを、私が作成した FOOBar というフレームワークにリンクしているときに発生しました。フレームワークのレシピは、http: //db-in.com/blog/2011/07/universal-framework-iphone-ios-2-0/からのものです。
次の場合、リンク エラーは発生しません。
- シミュレーター用の FrameworkHarness の .m ファイルを使用して、FOObar フレームワークの .m ファイルを直接コンパイルします。
- FOObar フレームワークの .m ファイルを iOS デバイス用の FrameworkHarness の .m ファイルで直接コンパイルします。
- FOObar フレームワークを、シミュレーター用にコンパイルされた FrameworkHarness の .m ファイルにリンクします。
次の場合にリンク エラーが発生します。
- FOObar フレームワークを、iOS デバイス用にコンパイルされた FrameworkHarness の .m ファイルにリンクします。
フレームワークから作成する 5 つの領域の 1 つを削除して、フレームワークの問題を切り分けるのに疲れました。変更されたフレームワークを iOS デバイス用にコンパイルされた FrameworkHarness の .m ファイルにリンクするたびに、リンク エラーは発生しませんでした。
次に、フレームワークはそのまま残しましたが、アプリケーションからフレームワークの 5 つの領域の 1 つへの呼び出しを削除しました。iOS デバイスのリンカーの問題を引き起こすフレームワーク領域を切り分けることができました。フレームワーク内のコードを削除するのと同じプロセスを実行し、リンクがエラーの原因となった特定のコードを特定できました。フレームワークのその領域でコードを移動したところ、リンク エラーはなくなりました。ただし、移動したコードは表面的なものであり、コードをある関数から新しい関数に移動し、元の関数からその関数を呼び出すだけでした。移動したコードは次のとおりです。
nm を使用してフレームワーク シンボルを比較する
iOS デバイスとシミュレートされたフレームワークで nm を実行しました。バージョン間に多少の違いはありましたが、叫んだものは何もありませんでした
nm -j -a
-j シンボル名のみを表示します (値や型はありません)。-a デバッガーが使用するために挿入されたものを含め、すべてのシンボル テーブル エントリを表示します。
- EH_Frame1 と func.eh は「S」(上記以外のセクションのシンボル)
- ___divsi3 および _objc_msgSend_fpret は「U」(未定義)
nm -j -g
-j シンボル名のみを表示します (値や型はありません)。-g グローバル (外部) シンボルのみを表示します。
nm -j -u
-j シンボル名のみを表示します (値や型はありません)。-u 未定義のシンボルのみを表示します。
考えられる次のステップ
アサーションの直前に何をしていたかを見ることができるように、何をしているのかを吐き出すように指示するリンカフラグはありますか?
llvm - llvm-ldクラッシュのデバッグ
llvm-ldでアサーションエラーがクラッシュします。これを私のコードの行までさかのぼって追跡したいと思います(これを引き起こしている私のコードがいくつかあるかもしれないので)。
llvm-ldはログファイルを作成できますか、それとも不幸な理由を教えてくれますか?
objective-c - Obj-C での「struct __block_literal_1」の再定義
私はしばらくこの問題を回避してきましたが、本当に気が狂っています。ブロックを宣言するたびに、LLVM GCC 4.2 でコンパイルする Xcode 4.1 でコンパイル エラーが発生します。
ドキュメントからコピーして貼り付けたブロックの例でさえ、エラーをスローします。
このエラーの解決策を見つけようと何度か試みましたが、役に立ちませんでした。どんな助けでも大歓迎です。
アップデート:
投稿してからしばらく経ちましたが、遅かれ早かれこの問題に取り組む必要があります。これは静的ライブラリの使用と関係があると思います。ブロックを含む静的ライブラリがプロジェクトに追加されると、エラーがスローされます。すぐに詳細を投稿します。