問題タブ [llvm-py]
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.
python - Mac OS X で llvm-py をビルドして実行する
Mac OS X でllvm-pyをビルドしようとしていました。
これは私がやろうとしたことで、11vm-2.7 をダウンロードする必要があり、README ファイルには次のコメントがあります。
- llvm 2.7をダウンロードします。
- llvm 2.7 のビルド: 実行
./configure --prefix=LLVM_DIRECTORY --enable-pic
- llvm-py 0.6 をダウンロードします。
- llvm-py 0.6 をビルド: 実行
python setup.py build --llvm-config=LLVM_DIRECTORY/bin/llvm-config
すべてがエラーなしでコンパイルされますが、テスト ファイルを実行しようとすると、このエラー メッセージが表示されます。
ImportError: 'dlopen(/Library/Python/2.7/site-packages/llvm/_core.so, 2): Symbol not found: __ZTVN4llvm16ExtractValueInstE\n Referenced from: /Library/Python/2.7/site-packages/llvm/_core.so\n Expected in: flat namespace\n in /Library/Python/2.7/site-packages/llvm/_core.so'
メッセージ エラーは、関数「llvmExtractValueInst」が不足しており、フラットな名前空間の問題があることを示しているようです。これの何が問題なのですか?
llvm 2.7 では、Makefile.rules に次の行があります。
SharedLinkOptions=-Wl,-flat_namespace -Wl,-undefined -Wl,suppress \
-dynamiclib
を削除しようとしましたflat_namespace
が、コンパイル エラーが発生しました。
追加した
locojay の回答に従って、brew と llvmpy をビルドできました。
ただし、テスト ディレクトリでサンプルを実行しようとすると、別の種類のエラーが発生します。
これは私が実行した結果ですotool -L /Library/Python/2.7/site-packages/llvm/_core.so
python - Pythonのクラスオブジェクトをllvmに「変換」するにはどうすればよいですか?
llvmを使用してPythonコードを最適化するつもりです。いくつかのチュートリアルを読みましたが、たとえば、クラスオブジェクトをPythonコードからllvmにエクスポートする方法がわかりません。llvm-pyで関数を作成する方法を学びましたが、クラスは私の力を超えています。
llvmコードで作成したいクラスの例を次に示します。
助けていただければ幸いです!
objective-c - iOSで*any| some * llvmで生成されたコード(clangで作成されたものではない)から関数をロードすることは可能ですか?
LLVMで関数を作成すると、次のようになります。
http://www.llvmpy.org/llvmpy-doc/dev/doc/firstexample.htmlのようなものを使用して、iOS内からその機能を使用することは可能ですか?C / C ++ / Obj-cで作成された関数のように?
これは、LLVMでlanguajeを構築すると、iOSを無料でサポートするためのパスが自動的に提供されるのではないかと思うからです(つまり、Pythonなどを埋め込むのと同じくらい難しい)。
はいの場合、どのように行うことができますか?(例:obj-cから合計を呼び出す)
python - LLVM に値を格納するにはどうすればよいですか?
私は LLVM のPython バインディングConstant
を使用しています。これまでのところ、 LLVM を使用して値を生成することができました。ただし、それらをアドレス内に格納する方法については混乱しています。
これはおそらく非常に基本的な質問です。定数をメモリに保存するにはどうすればよいですか? 後でその値のメモリ位置にアクセスするにはどうすればよいですか?
llvm - llvm-py で遊ぶ
OSX 10.9 に llvm-py をインストールしようとしましたが、インストールしようとしたときに次のエラーが発生しました。
llvm-config
ただし、インストールしていないようです。現在、clang
、llvm-gcc
およびllvm-g++
OSX ではデフォルトで存在するようです。llvm-config を使用できるようにするには、ソースから再インストールする必要がありますか?