問題タブ [linker-flags]
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.
c++ - mariadb コネクタ c のリンクオプション
ソケットからデータを受け取り、それを MariaDB データベースに保存する C++ アプリケーションを作成しています。
libmariadb3 パッケージから MariaDB コネクタ c ライブラリを含めたところ、問題なく動作しました。
プログラムをコンパイルするとき、リンク オプション -l mysqlclient を追加する必要がありました。
コンパイル コマンドは次のようになります。
私の質問は、なぜこのリンク オプションを追加する必要があるのか、また、このオプションを追加する必要がないようにするにはどうすればよいのでしょうか?
(これはコンパイル コマンドの例です。実際には、cmake でコンパイルしており、mariadb コネクタの c ライブラリを自分でコンパイルしました。cmake のリンカー オプションは、target_link_options(${PROJECT_NAME} PUBLIC -lmysqlclient) になります)