Một số vấn đề biên dịch MySQL do cấu hình không đúng. Giải pháp: cấu hình lại (reconfigure).
Nếu chạy CMake ngay sau lần chạy trước, có thể nó dùng thông tin thu thập từ lần gọi trước. Thông tin này trong CMakeCache.txt. Khi CMake bắt đầu, nó tìm file này và đọc nội dung (nếu tồn tại), giả định thông tin đúng. Giả định này sai khi file được cấu hình lại.
Mỗi lần chạy CMake, make phải chạy lại để recompile. File object cũ từ build trước có thể xóa trước vì chúng được biên dịch với tùy chọn cấu hình khác.
Để ngăn file object cũ hoặc thông tin cấu hình bị dùng bởi cài đặt hiện tại, chạy các lệnh sau trước khi chạy lại CMake:
Trên Unix
shell> make clean shell> rm CMakeCache.txt
Trên Windows
shell> devenv MySQL.sln /clean shell> del CMakeCache.txt
Nếu build ngoài source tree, thư mục build phải xóa và tạo lại trước khi chạy lại CMake. Trên một số hệ thống, cảnh báo có thể xảy ra do khác biệt file include hệ thống.
Để định nghĩa trình biên dịch C và C++ dùng, đặt biến môi trường CC và CXX:
shell> CC=gcc shell> CXX=g++ shell> export CC CXX
Để chỉ định flag trình biên dịch C/C++ riêng, dùng tùy chọn CMake CMAKE_C_FLAGS và CMAKE_CXX_FLAGS.
Để xem flag nào cần chỉ định, gọi mysql_config với tùy chọn --cflags và --cxxflags.
Để xem lệnh nào được thực thi trong giai đoạn compile, chạy make VERBOSE=1 thay vì make sau khi dùng CMake cấu hình MySQL. Nếu biên dịch thất bại, kiểm tra tùy chọn MYSQL_MAINTAINER_MODE có bật không. Chế độ này biến cảnh báo trình biên dịch thành lỗi, tắt nó có thể cho phép biên dịch thành công.