問題タブ [dylib]
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.
macos - 動的ライブラリからエクスポートされたシンボルのリストを印刷する方法
そのため、私は動的ライブラリを Mac OS X の下の XCode プロジェクトで動作させようと試みてきました。これまでのところ、喜びはありません。
dylib ファイルをロードすることはできますが、dlsym を呼び出して関数ポインターを取得すると、0 が返され、dlerror はシンボルが見つからないことを示します。
だから、dylibファイルからエクスポートされたシンボルをリストする簡単な方法があるかどうか疑問に思っています. どんなアイデアでも素晴らしいでしょう。
xcode - OSX上のXCodeのダイナミックライブラリでC++からエクスポートされたシンボルをアンマングルする方法
私は、アプリケーションに実行時にロードできるC++のダイナミックライブラリを開発しようとしています。ようやく動作しましたが、少し醜いです。C++クラスへのポインタを引数として取る関数があります。これは次のようになります。
しかしもちろん、それは次のようにエクスポートされています:
単純な関数で.cファイルを試したところ、「registerGrindPlugin」として正常にエクスポートされましたが、もちろん、引数としてC++クラスを渡すことはできません。
Soo ...私の質問は、エクスポートされたシンボルのマングルを解除またはエイリアス化して、dlsym呼び出しでZ19registerGrindPluginPN5Grind13PluginManagerEのような怪物を使用する必要がないようにする方法はありますか?
リンカオプションとして-alias_listについて何かを見ましたが、XCodeでそれを使用する方法を完全には理解していません。それが解決策である場合、誰かがこれを使用する方法についてもう少し詳細を提供できますか?
iphone - xcodeでdylibの警告が重複しています
フラリー API を追加した後、次の警告を受け取りました。
これを取り除くために何をしなければならないのかわかりません。どんなヒントも本当に役に立ちます。
ありがとう
c# - monoのfreepascalライブラリ(.dylib)を使用する
モノタッチで使用するためのC#とDelphi Prismを学ぶことはやりがいがありますが、私は通常のObjectPascalで記述されたコードを再利用する方法を探しています。私がDelphiで15年間行ってきたすべてのことを単純に書き直すことは、単純に受け入れられません。
だから私の質問は2つあります:
- 議論のために、外部依存関係のない通常のObject Pascalで作成され、iPhone用のARM freepascalコンパイラでコンパイルされたライブラリがある場合、monotouchから生成されたdylibを使用できますか?
- 上記が正しければ、C#/ Prismからこれらの外部関数を宣言して呼び出すにはどうすればよいですか?レコードタイプなどをモノラルで渡すにはどうすればよいですか?
他のiPhoneアプリケーションには独自のdylibファイルが付属していることに気づきました(SDLゲームライブラリが典型的な例です)。これがうまくいかない理由はわかりません。
objective-c - ObjectiveC でソース ファイルから .dylib 動的ライブラリを作成する
このhttp://fukuchi.org/works/qrencode/index.en.htmlから qrencode ソース ファイルをダウンロードしました。
dylibファイルを作成するために従うべき手順をリストアップできますか?
ありがとう
c++ - Mac OS X (C++) で dylib を使用する方法
dylib を正常に呼び出すアプリケーション (実行可能ファイル) を作成しました。ただし、dylib ファイルと実行可能ファイルは別のディレクトリにあります。dylib ファイルを含むディレクトリを$PATH
環境変数に追加しました。ただし、まだ読み込まれません。すべての dylib ファイルを実行可能ファイルにコピーすると、プログラムが最終的に実行されます。これにより、dylib ファイルに問題がないことが確認されます。ただし、OSにそれを見つけるように指示するにはどうすればよいですか?
Windows では、dll ファイルを含むディレクトリ パスを $PATH に追加するだけです。Mac OS X では何をする必要がありますか?
c++ - XCodeでDYLIBをデバッグするには?
私は経験豊富な Visual Studio 開発者で、最近 OSX 10.6 プロジェクト (UI のない C++ サーバー プロジェクト) を担当しました。
最終的な実行可能プログラムにリンクされているさまざまな静的ライブラリのソース コードのデバッグを含め、XCode デバッガー (ブレークポイントの設定など) を使用してアプリケーションを何ヶ月も正常にデバッグしてきました。
ただし、今夜、ソース コードからビルドされた DYLIB を (ブレークポイントを使用して) デバッグする必要がありましたが、実行時にアプリケーションと動的にリンクされています (DYLIB の名前は、メイン アプリケーションによって .ini ファイルから読み取られます)。 )。
残念ながら、アプリケーションのデバッグに使用する通常の方法 (カスタム実行可能ファイルを右クリックし、[ブレークポイントを使用してデバッグ] を選択する) では、デバッガーが正常に実行され、アプリケーションを (静的にリンクされたライブラリと共に) デバッグできますが、 DYLIB のソース コードでブレークポイントに到達しようとすると、次の望ましくない動作が発生します。
-> XCode デバッガーは、XCode ウィンドウの下部にあるステータス バーに関数と行番号が表示されるという意味でブレークポイントにヒットしたことを報告し (これが gdb メッセージであることを示すと共に)、アプリケーションが停止します。実行。ただし、スタック トレースも変数も何もありません。完全に空のデバッガー ウィンドウです。「ステップオーバー」、「ステップイン」などのボタンが無効になります。デバッガーにエディター ウィンドウは表示されません (したがって、表示された行でデバッガーが停止したことは視覚的に示されません)。ファイルを手動で開いても、デバッガーが行にヒットしていることは明らかになりません。
残念ながら、DYLIB をデバッグしようとする限り、これは役に立ちません。
私は今夜、この動的にリンクされた DYLIB のソース コードで、XCode デバッガーが意味のある方法でブレークポイントにヒットする方法を調査し、見つけることを試みて、広範囲に調査しました。もちろん、多くのクリーン/リビルドを行いました。「シンボルを遅延してロードする」がチェックされていないことを確認してから、クリーンアップ/再構築しました。再起動し、「build」ディレクトリも削除して再構築しました。.xcodeproj パッケージ内のユーザー固有のファイルも削除しました。(もちろん、DYLIB コードを含むすべてのコードを、開発モードですべての最適化をオフにしてビルドおよび実行し、すべてのデバッグ シンボルを生成していることにも注意してください。) しかし、私の試みは成功しませんでした。また、インターネット フォーラムでこの問題についての言及を 1 つも見つけることができません。
XCode を使用して、アプリケーションにリンクされている DYLIB を正常にデバッグする方法を教えていただければ幸いです。
ありがとう、ダン。
ios - iOS 用の動的ライブラリを作成して実行時にロードできますか?
動的ライブラリは iOS (iPhone/iPad) でサポートされていますか?
Xcode で、 New project -> Framework & Library -> Cocoa Library (dynamic)を作成しようとしました。プロジェクト設定で、Base SDKを にiOS device 4.1
、ターゲットをに設定しiOS4.1
ましたが、ビルド エラーが発生します。
ターゲットは製品タイプ「com.apple.product-type.library.dynamic」を指定していますが、「iphonesimulator」プラットフォームにはそのような製品タイプはありません」.
私が選択したビルドはSimulator -> Debug -> i386です。
linker - dylibから依存共有ライブラリを削除しますか?
install_name_toolの-changeオプションを使用して、dylibに格納されている依存共有ライブラリの名前を変更できることは知っていますが、依存共有ライブラリを削除する方法はあります。これは、LC_LOAD_DYLIBコマンドであると考えています。 dylibでotool-Lを実行すると表示されますか?
cocoa - Xcode 3.2.5 Cocoa プロジェクトは、リンクされたサード パーティの dylib を変更します。なんで?
サードパーティの dylib をココア プロジェクトにリンクしています。
Xcode がそれをアプリの Frameworks ディレクトリにコピーするように手配します。
しかし、フレームワークの dylib を使用して元の dylib を cmp すると、サードパーティの dylib が変更されていることがわかります。これを行わない古い Xcode cocoa プロジェクトがいくつかあります。つまり、フレームワークの dylib はオリジナルと同じです。
Xcodeプロジェクトを変更して、dylibが変更された原因を特定しようとしましたが、今のところうまくいきません。何か案は?