0

OSX初心者です。RedHat でうまく動作するカスタム PAM モジュールがあります。OSXに移植しようとしています。壁にぶち当たりました。OSX が「LinuxPam」ではなく「OpenPam」を使用していることは知っています。私は実際にEclipseを使用してモジュールを構築できます[ただし、XcodeとXcodeコマンドラインツールをインストールする必要がありました]。

モジュールをインストールして使用しようとすると、openpam_load_module がモジュールのロードに失敗したという一般的なメッセージがログに表示されます。オンラインで掘り下げた後、スローしたオブジェクトをロードしようとする小さな dlopen "テスト" プログラムを見つけました。失敗すると、はるかに優れたエラーが発生します。私のモジュールは、「pam」、「sqlite3」、および「mysqlclient」ライブラリの存在に依存しています。このテストローダーは文句を言います

   Library not loaded: libmysqlclient.18.dylib

まあ、そのlibは存在します。それはEclipseプロジェクトのビルドパスにあります。Eclipse リンク行でフルパスを「ハードコーディング」してみました。ライブラリの静的バージョンとのリンクも試みました。喜びはありません。

ライブラリの静的バージョンにリンクすると、次のメモが表示されます。

    Undefined symbols for architecture x86_64:

その後に大量の未定義シンボルが続きます。ここからどこへ行けばいいのかわからない。アイデア?

4

1 に答える 1