PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Bootloaders - Programmers - Debuggers - Emulators (http://www.picvietnam.com/forum/forumdisplay.php?f=9)
-   -   Lỗi :Unrecognized input trong file lkr trong MPLAB C18 (http://www.picvietnam.com/forum/showthread.php?t=5460)

bluexylitol 05-12-2009 11:02 AM

Lỗi :Unrecognized input trong file lkr trong MPLAB C18
 
Hi mọi người,

Mình mới dùng MPLAB C18, có lấy một ví dụ mẫu để thử trong thư mục example/getting_started/program1:
/* Compile options: -ml (Large code model) */

#include <stdio.h>

#pragma config WDT = OFF

void main (void)
{
printf ("Hello, world!\n");

while (1)
;
}

trong configurate mình chọn select device là 18f4550 và cũng đã add file: 18f4550_g.lkr trong thư mục bin/lkr vào tuy vậy có lỗi này xảy ra. Mình đã đọc help của MPLAB C18 nhưng ko biết đó là lỗi gì và ko fix được, mọi người giúp mình với, thank mọi người.
Thông báo lỗi:
MPLINK 4.14, Linker
Copyright (c) 2007 Microchip Technology Inc.
Error - Unrecognized input in 'C:\Program Files\MCC18\bin\LKR\18f4550_g.lkr:4': #DEFINE
Errors : 1

Link step failed.
BUILD FAILED: Sat Dec 05 11:06:43 2009

namqn 05-12-2009 03:08 PM

Trích:

Nguyên văn bởi bluexylitol (Post 31982)
Hi mọi người,

Mình mới dùng MPLAB C18, có lấy một ví dụ mẫu để thử trong thư mục example/getting_started/program1:
/* Compile options: -ml (Large code model) */

#include <stdio.h>

#pragma config WDT = OFF

void main (void)
{
printf ("Hello, world!\n");

while (1)
;
}

trong configurate mình chọn select device là 18f4550 và cũng đã add file: 18f4550_g.lkr trong thư mục bin/lkr vào tuy vậy có lỗi này xảy ra. Mình đã đọc help của MPLAB C18 nhưng ko biết đó là lỗi gì và ko fix được, mọi người giúp mình với, thank mọi người.
Thông báo lỗi:
MPLINK 4.14, Linker
Copyright (c) 2007 Microchip Technology Inc.
Error - Unrecognized input in 'C:\Program Files\MCC18\bin\LKR\18f4550_g.lkr:4': #DEFINE
Errors : 1

Link step failed.
BUILD FAILED: Sat Dec 05 11:06:43 2009

Tôi đã tạo project và biên dịch chương trình mẫu như bạn, nhưng biên dịch thành công (không tái lập được lỗi mà bạn đã nêu). Tôi dùng MPLAB IDE v8.20, MCC18 v3.31 Academic Edition.

Thân,

bluexylitol 08-12-2009 10:25 PM

Mình đã phát hiện được lỗi, nguyên nhân là do Mplink của mình là 4.14, là phiên bản không phù hợp, mình đã vào mục Project/Set language tool location để chỉnh lại (dùng mplink trong thư mực MCC18/bin thì đã không còn lỗi nữa, tuy nhiên lại xuất hiện lỗi này. Mong bác namqn và mọi người chỉ giáo?

MPLINK 4.34, Linker
Copyright (c) 2009 Microchip Technology Inc.
Error - could not find definition of symbol 'printf' in file 'E:\Mine\Work\Source\ex1\main.o'.
Errors : 1

Link step failed.

namqn 10-12-2009 09:52 PM

Trích:

Nguyên văn bởi bluexylitol (Post 32074)
Mình đã phát hiện được lỗi, nguyên nhân là do Mplink của mình là 4.14, là phiên bản không phù hợp, mình đã vào mục Project/Set language tool location để chỉnh lại (dùng mplink trong thư mực MCC18/bin thì đã không còn lỗi nữa, tuy nhiên lại xuất hiện lỗi này. Mong bác namqn và mọi người chỉ giáo?

MPLINK 4.34, Linker
Copyright (c) 2009 Microchip Technology Inc.
Error - could not find definition of symbol 'printf' in file 'E:\Mine\Work\Source\ex1\main.o'.
Errors : 1

Link step failed.

Bạn kiểm tra thêm cái Library Search path (vào Project>Set Language Tool Location, xổ phần "Default Search Paths & Directories" của "Microchip C18 Toolsuite") xem nó đang trỏ đến thư mục nào. Nếu không phải thư mục con "lib" của thư mục cài đặt bản C18 của bạn thì cần chỉnh lại.

Thân,

bluexylitol 11-12-2009 02:32 PM

Mình chưa thử như bác namqn nói. Mình nghĩ vấn đề là phiên bản MPLAB C18 3.14 không phù hợp với MPLAB IDE 8.0 nên đã remove C18 đó bằng C18 3.0 và kết quả chạy đã ok. Tuy vậy mình vẫn chưa hiểu tại sao trong C18 3.14 thư mục lkr lại nằm trong thư mục bin, hơn nữa tên của bất cứ file lkr đều kèm thêm phần _g ở cuối? Minh họa như sau:
MCC18\bin\LKR\18f4550_g.lkr


Múi giờ GMT. Hiện tại là 08:53 PM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam