2015-09-30 15 views
40

Tôi đã được cập nhật fomr một dự án xây dựng di sản cũ sử dụng C++ Builder 2010 để biên dịch với C++ Builder 10 Seattle. Tôi đã hầu như đã phải thay đổi con đường, rất nhiều dupIgnore-TDuplicates::dupIgnore, tái nhập khẩu một số thành phần như MSXMLMSMQ, vvLiên kết thất bại [ilink32 Lỗi] Fatal: Unable to open file 'TYPES.OBJ' mã

đầu tiên cho một loạt các tiểu dự án mà dự án chính sử dụng trong hình thức của bpl và của dll và cuối cùng là mã của dự án biên dịch chính.

... Nhưng nó không thành công một liên kết: P

[ilink32 Error] Fatal: Unable to open file 'TYPES.OBJ' 

Tôi đã cố gắng để tìm thông tin về các vấn đề tiềm năng và nhiều đề cập đến việc bảo đảm System được cung cấp trong Unit Phạm vi dưới Delphi Compiler cài đặt. Nhưng điều đó đã có mặt cho dự án này. Điều gì khác có thể gây ra điều này?

Để biết thông tin. Biên dịch bằng cách sử dụng trình biên dịch bcc32 "cổ điển" cho bây giờ.

Bao gồm Đường dẫn:

$(BDSINCLUDE)\windows\vcl;$(BDSINCLUDE)\dinkumware;

Thư viện Đường dẫn:

$(BDSLIB)\$(PLATFORM)\$(Config);$(BDSLIB)\$(PLATFORM)\Release\psdk; 
+1

Bạn có thể thử làm mới danh sách bao gồm (.h) và pragma (.cpp) bằng cách xóa hoặc nhận xét chúng. Khi bạn lưu chúng được tạo lại tự động. Liên kết erro không xảy ra sau khi biên dịch exe, phải không? –

+1

Tôi không chắc mình hiểu ý bạn là gì bởi "danh sách"? Tôi đoán bạn chỉ có nghĩa là bao gồm bình thường và chỉ thị pragma? Chúng là một vài trong số khá nhiều tệp nếu đó là ý của bạn. Và làm sao mà ide biết cái nào để "tạo lại" khi bạn gộp các tập tin từ khắp nơi? – inquam

+1

Xin lỗi vì mô tả không chính xác. Một số direcitves bao gồm và pragma được thêm tự động khi bạn đặt một thành phần trên biểu mẫu. Tôi phải đối mặt với vấn đề này khi tôi portet một ứng dụng cũ hơn XE2 vì một số bao gồm direktives thay đổi. –

Trả lời

0

tôi sẽ làm theo lời khuyên của Tim D đầu tiên. Bất cứ khi nào tôi bắt đầu sử dụng phiên bản mới hơn của trình biên dịch, 90% dự án nhập cũ là do tôi trực tiếp bao gồm các tệp mã/tiêu đề/đối tượng và tạo phiên bản trống, sau đó sao chép sau 99% thời gian sửa lỗi.

Sau khi đảm bảo dữ liệu được tạo mới, sau đó nhập dữ liệu cũ của bạn lên đó, tôi sẽ kiểm tra các sự cố không tương thích cũ. Bạn đang đi đúng hướng với việc thay đổi "danh sách" của bạn. Tôi cũng khuyên bạn nên chắc chắn rằng tất cả các mã của bạn được viết lại cho trình biên dịch mới trong tâm trí. Điều này giúp với cả khả năng tương thích mã và tinh giản để chạy dự án đã hoàn thành.

Cuối cùng, tôi sẽ kiểm tra xem tất cả dữ liệu bổ sung của bạn (tệp không phải là mã thuần túy như tệp tiêu đề) vẫn có thể nhận ra được quá trình biên dịch hiện đang được sử dụng hay không. (Di sản có thể khiến điều này trở nên khó xử.)

Các vấn đề liên quan