2013-03-04 39 views
7

Tôi gặp lỗi rất lạ trong MATLAB và dường như nó không liên quan trực tiếp đến chương trình của tôi. MATLAB thậm chí không cho tôi một dòng nơi xảy ra lỗi.Danh mục thư Matlab: thông dịch viên không được tải

Chương trình của tôi xử lý nhiều tệp. Tôi có thể xử lý các nhóm của họ mà không nhận được một lỗi, nhưng khi quá trình tất cả trong số họ cùng tôi nhận được lỗi sau:

Caught "std::exception" Exception message is: 
Message Catalog MATLAB:interpreter was not loaded from the file. Please check file location, format or contents 

này thường xảy ra vào khoảng cùng một điểm, nhưng không chính xác. Tôi đã kiểm tra tất cả các tệp xung quanh điểm này và chúng hoạt động. Đây là lý do tại sao tôi cho rằng nó liên quan đến RAM.

Nếu tôi cố gắng chạy chương trình một lần nữa tôi nhận được cùng một lỗi ngay từ đầu, nhưng sau khi khởi động lại MATLAB mọi thứ chạy tốt trở lại.

Tôi đã tự hỏi nếu đó là một lỗi C++ dựa, vì nó chứa 'std :: ...'

Bạn có bất cứ ý tưởng gì lỗi này phương tiện và làm thế nào tôi có thể sửa chữa nó?

+0

Tôi đã gặp lỗi "Matlab: services was not loaded" - xử lý tệp bị rò rỉ. – Jonas

Trả lời

6

Dường như vấn đề cài đặt. MATLAB đang tìm kiếm một tệp trong bản cài đặt của bạn có tên là $MATLABROOT/resources/MATLAB/en/interpreter.xml. Kiểm tra tệp đó tồn tại - bạn có thể cần phải cài đặt lại.

EDIT: tắt vấn đề là mã OP bị rò rỉ xử lý tệp, có nghĩa là MATLAB cuối cùng không thể mở tệp tài nguyên.

+0

Tệp này không tồn tại và nếu đó là sự cố liên quan đến cài đặt, nó sẽ tích luỹ thường xuyên, nhưng không phải ngẫu nhiên. – Stein

+0

Điểm được chụp - có điều gì đó không tốt xảy ra trên hệ thống của bạn. Đó là lỗi chắc chắn liên quan đến tập tin đó là không thể tiếp cận mặc dù, và bạn hoàn toàn đúng rằng 'std :: exception' đang được ném từ mã C++ nội bộ mà không thực sự mong đợi để xử lý các tập tin bị thiếu. Bạn có chạy các công cụ như 'memtest' trên hệ thống của bạn không? – Edric

+0

Có vẻ như đây không phải là vấn đề ête. Memtest không tìm thấy bất kỳ lỗi nào. Nó có thể là sau khi chạy chương trình của tôi trong một thời gian ram có đầy đủ phân bổ phân tán và Matlab không phải là abled để tìm thấy một sự bình an liên tục của kích thước cần thiết? – Stein

8

Tôi đã gặp lỗi này ngày hôm nay, nhưng lý do của tôi là đơn giản, tôi quên gọi fclose mỗi khi tôi viết một tệp mới. Sau khi tôi thêm fclose thì lỗi đã biến mất.

+1

Tương tự ở đây, ngoại trừ nó là MATLAB: bang thay vì MATLAB: thông dịch viên. –

0

Nếu bạn sử dụng fopen để mở một tệp mà không cần fclose vào cuối, bạn sẽ gặp phải vấn đề này. Vì vậy, giải pháp là đơn giản, đi đến fclose tập tin!

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