質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.78%

XCODEでMySQLコネクタのリンクエラーが発生する

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 521

score 4

前提・実現したいこと

こちらのサイトを参考にiPadからMySQLに接続するプログラムを作成しています。

SwiftでMySQLに接続する

C言語用MySQLコネクタを入手し、フォルダへの配置やブリッジングヘッダーも作成済みです。

発生している問題・エラーメッセージ

ビルドが失敗し、リンクエラーが発生します。

Ld /Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Products/Debug-iphonesimulator/Sample_Examination.app/Sample_Examination normal x86_64 (in target: Sample_Examination)
    cd /Users/workwork/Documents/workwork_APL/Sample_Examination
    export IPHONEOS_DEPLOYMENT_TARGET=12.2
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator12.2.sdk -L/Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Products/Debug-iphonesimulator -L/Users/workwork/Documents/workwork_APL/Sample_Examination/MySQL -F/Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Products/Debug-iphonesimulator -filelist /Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Intermediates.noindex/Sample_Examination.build/Debug-iphonesimulator/Sample_Examination.build/Objects-normal/x86_64/Sample_Examination.LinkFileList -Xlinker -rpath -Xlinker /usr/lib/swift -Xlinker -rpath -Xlinker @executable_path/Frameworks -mios-simulator-version-min=12.2 -dead_strip -Xlinker -object_path_lto -Xlinker /Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Intermediates.noindex/Sample_Examination.build/Debug-iphonesimulator/Sample_Examination.build/Objects-normal/x86_64/Sample_Examination_lto.o -Xlinker -export_dynamic -Xlinker -no_deduplicate -Xlinker -objc_abi_version -Xlinker 2 -fobjc-link-runtime -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphonesimulator -Xlinker -add_ast_path -Xlinker /Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Intermediates.noindex/Sample_Examination.build/Debug-iphonesimulator/Sample_Examination.build/Objects-normal/x86_64/Sample_Examination.swiftmodule -Xlinker -sectcreate -Xlinker __TEXT -Xlinker __entitlements -Xlinker /Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Intermediates.noindex/Sample_Examination.build/Debug-iphonesimulator/Sample_Examination.build/Sample_Examination.app-Simulated.xcent -lmysqlclient -lc++ -Xlinker -dependency_info -Xlinker /Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Intermediates.noindex/Sample_Examination.build/Debug-iphonesimulator/Sample_Examination.build/Objects-normal/x86_64/Sample_Examination_dependency_info.dat -o /Users/workwork/Library/Developer/Xcode/DerivedData/Sample_Examination-dvzoefovuxwvpmdkpqjocrvumavz/Build/Products/Debug-iphonesimulator/Sample_Examination.app/Sample_Examination

Undefined symbols for architecture x86_64:
  "_readdir_r$INODE64", referenced from:
      _my_dir in libmysqlclient.a(my_lib.c.o)
  "_opendir$INODE64", referenced from:
      _yaSSL_CTX_load_verify_locations in libmysqlclient.a(ssl.cpp.o)
      _my_dir in libmysqlclient.a(my_lib.c.o)
  "_readdir$INODE64", referenced from:
      _yaSSL_CTX_load_verify_locations in libmysqlclient.a(ssl.cpp.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

試したこと

CleanBuildFolder、PC再起動も試しましたが解決しませんでした。

補足情報(FW/ツールのバージョンなど)

code10.2.1
mysql-connector-c-6.1.11-macos10.12-x86_64

よろしくお願いします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • Orlofsky

    2020/02/08 11:10

    URLは https://teratail.com/help/question-tips#questionTips3-7 の [リンク] で [リンク先のタイトル](http...) に修正してください。
    他のMarkdownの機能も確認しておいてください。

    キャンセル

  • fox_t

    2020/02/08 11:17

    ご指摘ありがとうございます。修正しました。

    キャンセル

  • hoshi-takanori

    2020/02/08 16:31

    x86_64というのはIntelの64ビットCPUのことで、mysql-connector-c-6.1.11-macos10.12-x86_64はMac用になります。MySQLに外部から直接接続するのはセキュリティ的に危ういので、実験アプリでない限りはAPIサーバーを立ててそれ経由でアクセスするのが一般的です。どうしてもという場合はそのページにも書いてあるように自分でMySQLドライバをビルドする必要があると思います。

    キャンセル

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.78%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る