Mơi trường sử dụng để chuyển đổi GRASS5

Một phần của tài liệu Luận văn:Nghiên cứu chuyển đổi phần mềm grass từ nền unix lên windows pdf (Trang 116 - 117)

Chúng em sử dụng mơi trường chuyển đổi là VISUALệ C++ 6.0 Service Pack 5

Phương châm chuyển đổi:

+Để tiết kiệm thời gian và cơng sức, chúng em đề ra phương châm là:

ẦHạn chế sửa đổi mã nguồn của GRASS đến mức thấp nhất

Một số điều kiện cần thiết:

+ Do Source Grass được viết theo kiểu lập trình hướng thủ tục cổđiển

(procedure oriented programming), khơng sử dụng lập trình hướng đối tượng, nhưng vẫn sử

dụng cơ chế include prototype (cĩ nghĩa là sẽ cĩ 2 file, 1 file .h chứa các hàm prototype, 1 file .c sẽ chứa các cài đặt của các hàm mơ tả trong file .h đĩ, chẳng hạn, ...) nên khi sử dụng kiểu include như vậy trên Visual C++ thì phải chỉnh lại Setting như sau:

Bấm tổ hợp Alt+F7 để vào Setting

− − − −

Chọn tab C/C++

Chọn Category là PreCompiled Headers

Chọn option ỘAutomatic use of precompiled headers

Nếu khơng thiết lập như trên thì khi add vào 1 file .h, 1 file .c thì VC++ sẽ khơng hiểu và sẽ

báo lỗi ỘUnexpected end of file Ầ.Ợ

KHOA CNTT Ờ

ĐH KHTN

+ Do Source Grass được viết bằng C, mà trình biên dịch VC++ lại dịch theo kiểu C++, (cĩ nghĩa là file .cpp gọi hàm trong file .c sẽ khơng được), nên chúng ta phải sử dụng một số chỉ

thị tiền xử lý (pre-compiler directive) để định hướng lại biên dịch khi gọi hàm ANSI C như

sau: // đoạn code bằng C++ #ifdef __cplusplus extern "C" { #endif //... // đoạn code bằng C //... #ifdef __cplusplus } #endif // đoạn code bằng C++

Một phần của tài liệu Luận văn:Nghiên cứu chuyển đổi phần mềm grass từ nền unix lên windows pdf (Trang 116 - 117)