Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment lier les bibliothèques de connecteurs MySQL C++ à Cmake ?

La documentation MySql décrit cela en détail pour Visual Studio et Netbeans . Vous devez faire la chose correspondante pour CMake.

Le moyen rapide et sale consiste simplement à coder en dur le chemin d'accès à la bibliothèque dans votre CMakeLists.txt :

target_link_libraries(Learn_Cpp c:/path/to/mysql/lib/mysqlcppconn.lib)

Notez que cela sera lié à la version dll du connecteur, vous devez donc placer la dll dans un répertoire où l'exe peut la trouver si vous souhaitez exécuter votre programme après la construction. En dehors de cela, cela devrait fonctionner, mais ne fonctionnera vraiment que sur votre machine pour une configuration de construction spécifique. Pour le rendre portable et plus robuste, vous pouvez utiliser find_library pour localiser le fichier de bibliothèque correct pour votre configuration sur le disque. De même, vous pouvez utiliser find_path pour localiser les répertoires inclus au lieu de les coder en dur et utiliser find_package pour localiser Boost .

Dans CMake moderne, il est également considéré comme un bon style d'envelopper les résultats de votre find_path et find_library appelle MySql dans une cible importée , semblable à la façon dont FindBoost le fait pour Boost.