Dalam Visual Studio 2005, mengeksport semua simbol daripada DLL tanpa menambah __declspec(dllexport) atau mencipta fail .def secara manual menimbulkan cabaran. Nasib baik, ini kini boleh dicapai dengan versi CMake terkini (cmake-3.3.20150721-g9cd2f-win32-x86.exe atau lebih tinggi).
Untuk mengeksport semua simbol secara automatik dalam DLL, tetapkan CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS kepada HIDUP dalam CMake anda projek:
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
1. Eksport Simbol Menggunakan __declspec(dllexport)
2. Cipta Fail Definisi Modul (.def)
Eksport simbol daripada Fail .obj menggunakan CMake:
Tanpa CMake:
Nota: Lumpuhkan Pengoptimuman Keseluruhan Program (/GL) apabila menggunakan kaedah CMake untuk mengeksport simbol.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeksport Semua Simbol daripada DLL dalam CMake Tanpa Menentukannya Secara Manual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!