問題タブ [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.
assembly - llvm-gcc インライン アセンブリでダブル ワード オペランドの上位/下位部分を指定するにはどうすればよいですか?
GCC4.2(Xcode3)では、%R0/%Q0を使用して、インラインアセンブリでダブルワードオペランドの上位/下位を指定しています。しかし、次のコードは llvm-gcc (Xcode4) でエラーを生成します: error: invalid operand in inline asm: 'mov ${0:D}, $1
誰かが私に解決策を教えてもらえますか?
compiler-construction - iPodTouch2ndがxcode4.2で実行に応答しません
数時間グーグルで検索しましたが、答えがありませんでした。
私のステップがあります:
1xcode4.2でARCを使用せずに新しいプロジェクトを作成します。2アーキテクチャにarmv6を追加します。それは次のことを示しています:armv6 $(ARCHS_STANDARD_32_BIT)3iOS展開ターゲットをiOS4.1に変更します4コード署名がチームプロビジョニングであることを確認します
[実行]をクリックすると、ビルドが成功したことが示されますが、iPod Touch 2nd(iOS4.2.1)には応答がなく、エラーも警告もありません。デバッグ出力ウィンドウに何も表示されず、問題もありません...
これはAppleLLVMコンパイラ3.0の問題だと思うので、LLVM GCC 4.2に変更すると、エラーが表示され、main.mファイルを次のように変更します。
そして、私はこれからAppDelegate.hを修正します:
に
OK、警告なし、エラーなし、問題なし、応答なし... xcodeはファイルを私のTouch2ndにまったくコピーしません!
xcode4.1と3.2.5で作成された私の古いプロジェクトは、Touch 2ndに問題はありません。必要なのは、armv6サポートを追加することだけですが、xcode 4.2は4ssでは本当に苦痛です!デフォルトのコンパイラはLVMMGCC4.2ではないので、次のように考えています。
- xcode4.2のデフォルトコンパイラをLLVMGCC4.2に変更するにはどうすればよいですか?
- デフォルトのコンパイラを変更できない場合、Touch 2ndで実行するにはどうすればよいですか?
どんな助けでもいいです、ありがとう!
xcode - XCode 4 を使用してコード カバレッジ データを生成するために必要なもの
http://code.google.com/p/coverstory/wiki/UsingCoverstoryで説明されている手順を使用して、XCode 4.2.1 (ビルド 4D502) でアプリケーションのコード カバレッジ データを生成しようとしています。
オブジェクト ファイルと一緒に .gcno または .gcda ファイルが生成されていないため、明らかに不足しています。テスト ターゲットとアプリケーション ターゲットの両方に設定を追加しようとしましたが、役に立ちませんでした。私は 2 回目の検査を受けましたが、すべてが順調に進んでいるように見えます。何が欠けているかについてのアイデア。前もって感謝します。
ios-4.2 - iOS 4.2.1 を実行する第 2 世代デバイスの問題を解決するために LLVM-GCC を使用することの影響
タッチイベントを使用して画面に描画するアプリがあります。私はタッチのUITouch locationInView
を返すために使用します。CGPoint
問題は、x 座標と y 座標が常に同じであることです。ただし、iOS 4.2.1 を実行している第 2 世代のデバイスでのみ、かつアプリがリリース モードでビルドされている場合のみです。私のボタンはタッチに正しく反応するので、これはtouchesMoved
またはイベントオブジェクトから直接タッチを取得する場合にのみ問題になるようです。touchesEnded
http://getmoai.com/forums/new-users/ios-touch-sensor-y-co-ordinate-always-the-same-as-x/の投稿のおかげで、次を使用して問題を解決できました新しい LLVM 3.0 コンパイラではなく LLVM-GCC コンパイラを使用し、最適化レベル 0 を使用します。
興味深いのは、GCC コンパイラを使用すると、 で受け取ったタッチ位置が修正されtouchesEnded
、最適化レベルを変更してで受け取っ-O0
たタッチ位置が修正されたことtouchesMoved
です。その理由を説明することはできませんが、今のところ、私のアプリがこれらのデバイスで動作していることに興奮しています。
私の質問は、古いコンパイラを使用してアプリをストアに配信することの欠点は何ですか? (最適化レベルの影響は理解しています。) iOS 4.2.1 および/または第 2 世代デバイスに対してのみ、古いコンパイラとより低い最適化レベルを使用するようにプロジェクトを構成する方法はありますか?
iphone - アーキテクチャ i386 の不正な形式のメタデータ - LLVM エラー
プロジェクトの 1 つで、コンパイラから非常に苛立たしいエラーが発生します。最適化のためにいくつかのコンパイラ設定を変更した後、シミュレーターでテストしようとするまで、物事はうまく機能していました. 次のエラーが表示されます。
できる限りコンパイラの設定をリセットしましたが、それでもエラーは解決しません。アーキテクチャ i386 の不正なメタデータ レコードの提案を試しましたが、まだ何もありません。他にできることはありますか?Xcode/LLVM-GCC をデフォルトにリセットしますか?
macos - Mac OS X Lion および XCode 4 / llvm-g++-4.2 ではコード カバレッジはありません
他の人がXCode 4 でコード カバレッジを生成できないと報告していますが、XCode 4 内からできないだけでなく、コマンド ラインからの簡単なおもちゃのプログラムでもできないことがわかりました。hereとhereの例に従って、この cov.c ファイルを作成しました。
次に、コード カバレッジを生成するために次のコマンドを使用しました。
残念ながら、obj ディレクトリに cov.gcno ファイルはありません。実際、この後のファイルは cov.c obj/cov.o bin/cov だけです。
さらに、 と入力nm bin/cov
すると、次のようになります。
これは、libgcov.a がリンクされていなかったことを示唆しています。
と:
まったく同じ結果が得られます。
詳しくは:
g++ --version
生成: 「i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Apple Inc. ビルド 5658 に基づく) (LLVM ビルド 2336.1.00)」- また、gcc (llvm-gcc) を使用してみました。
c++ - llvm-g++-4.2 および C++ の新しいスタイルの型キャスト
私は奇妙な問題に直面しています。stackoverflow.com などをあちこち調べましたが、答えが見つかりませんでした。
ここにいくつかの背景があります: 私は単純なライブラリを書いています。主に教育目的で、C++ をよりよく理解するためです。Snow Leopard 搭載の MacBook Pro を使用しています。Xcode 4.2 もインストールしていますが、VIM のみを使用してコードを編集しています。Xcode に依存する必要がなくなり、同時にカスタムの Makefile を作成して維持する必要がなくなるように、これまでに持っていたものすべてに GNU ビルド システムの実装を最近完了しました。最高レベルの警告を使用しています。これまでに取得したフラグは次のとおりです (ただし、各フラグの理由を理解しながら、段階的に追加し続けています): -Wall -Wmissing-field-initializers -Wno-trigraphs -Wreturn-type -Wnon-virtual-dtor -Woverloaded-virtual -Wmissing-braces -Wparentheses -Wswitch -Wunused-value -Wsign-compare -Waddress -Wsequence-point -Wshorten-64-to-32 -Wwrite-strings -Wold-style-cast
、そして最後に-Werror
.
今、私は非常に単純に値を返す関数を持っています:
ただし、このコードをコンパイルすると、「古いスタイルのキャストが使用されています」という警告が表示されます。static_cast<>
どうすれば「古いスタイル」になるのかわかりません。なぜこれが起こっているのか誰か説明してもらえますか?の定義を見れば答えが見つかると思ったのですWEOF
が、Mac では に定義されて__DARWIN_WEOF
おり、その定義を見つけることができないようです。
ありがとう!
c++ - Mac OS X Lion 上の LLVM
Mac で LLVM を動作させようとしています。cpp コードを書き、LLVM IR を生成したいと考えています。MacPorts を使用して llvm-gcc42 とすべての依存関係をインストールしました。
llvm ヘッダーが 1 つ含まれている単純な cpp ファイルをコンパイルしようとすると、ヘッダーが見つからないというメッセージが表示されます。
これはソースファイルです:
誰かが私を助けることができるかどうか疑問に思っています。ありがとう
python - なぜ pip インストーラーは gcc-4.2 が OS X Lion の gcc コンパイラーの名前であると想定するのですか?
pip を使用して Python にパッケージをインストールすると、次のエラーが発生しました。
明らかに、pip はどのバイナリ ディレクトリにもない gcc-4.2、つまり /usr/bin を使用しようとしています。このサイトや他のサイトを見回した後、他の多くの人が同じ問題に苦しんでいることがわかりました. ただし、gcc は OS X Lion でバージョン 4.2 に更新されています。これはバージョンの問題ではなく、gcc は /usr/bin の下で gcc-4.2 ではなく gcc と呼ばれ、llvm-gcc にシンボリック リンクされています。gcc へのシンボリック リンクとして /usr/bin に gcc-4.2 を追加した後、pip はすべてを正常にインストールできました。では、pip が gcc ではなく gcc-4.2 を探しているのはなぜですか? これは、gcc-4.2 で自分自身をインストールしようとしている pip、OS X Lion、または pip 内のパッケージのせいですか?
最後に、この状況で私のシンボリックリンクのハックは正しいことですか、それとも別の方法でこれを修正する必要がありましたか?
assembly - LLVM GCC 4.2 でのインライン アセンブリの奇妙なコンパイル
次の C マクロを最適化しようとしています。
ここで、Cortex-A8 プロセッサの場合、すべての変数はdoubleです。
インライン アセンブリは次のようになります。
生成されたアセンブリは次のようになります。
ご覧のとおり、コンパイラは正しい結果を得るために必要な 6 つではなく 4 つのレジスタのみを使用します。
6 つのレジスターが必要であることをコンパイラーにどのように伝えることができますか?