Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Xử lý vấn đề biên dịch MySQL

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.