Dans Visual Studio 2005, le but est d'exporter automatiquement tous les symboles lors de la création d'une DLL, sans ajouter manuellement d'annotations __declspec(dllexport) ni créer de fichiers .def. Est-ce possible ?
Réponse :Oui, vous pouvez y parvenir avec les dernières versions de CMake (à partir de la version 3.3.20150721-g9cd2f-win32- x86.exe et versions ultérieures). Cette fonctionnalité est actuellement dans la branche de développement et sera intégrée dans les futures versions.
Étapes :
Activer l'exportation de symboles : Ajoutez la ligne suivante à votre fichier CMakeLists.txt :
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
Remarque : Cette approche nécessite de désactiver l'optimisation du programme entier (/GL) lors de la compilation.
1. Utilisez __declspec(dllexport) :
Ajoutez manuellement __declspec(dllexport) ou __declspec(dllimport) avant les définitions de classe ou de fonction pour exporter ou importer explicitement des symboles.
2. Créez un fichier de définition de module (.def) :
Écrivez un fichier .def qui contient des déclarations de fonction ou exporte des symboles à partir d'une bibliothèque statique.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!