• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:リンクエラー)

リンクエラーが発生!未定義のシンボルが原因か?

このQ&Aのポイント
  • リンクエラーが発生しており、未定義のシンボルが原因である可能性があります。
  • メイクファイルには記述されているが、アーカイブの一覧をみると定義されていないシンボルがあります。
  • 質問者はmakeに馴染みがなく、詳細な情報を提供できませんが、推測すると未定義のシンボルの関連が考えられます。

質問者が選んだベストアンサー

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

make の話ではなくて、リンク (ld) の話ですね。 > DCS_CHG_WA.a はメイクファイルには記述しています。 > > DCS_CHG_WA.a のアーカイブの一覧をみてもDCSDBWrpAll_WA.oは定義されています。 このエラーメッセージは、DCS_CHG_WA.a にある DCSDBWrpAll_WA.o ファイルで参照している DCLUIcntUsrprdUsrId というシンボル(多分、関数かグローバル変数)が見つからん、 と言ってるのです。 私には、細かいことまでわかりませんが、DCLUIcntUsrprdUsrId が定義してあるオブジェクトを 含むアーカイブファイルを DCS_CHG_WA.a より後に指定してください。 例えば、そのシンボルが DCxxxx.a というファイルに含まれており、同じ DCLIB/tmp に 存在するのであれば cc … /home/mrs_adm/…/DCS_CHG_WA.a /home/mrs_adm/…/DCxxxx.a というように。 シンボルを探すには、nm コマンドが使えます。

rariko
質問者

お礼

回答ありがとうございます。 おっしゃるとおり、オブジェクトの指定の順番が間違っていたようです。 助かりました。ありがとうございました!

関連するQ&A