Picproje Elektronik Sitesi

DERLEYİCİLER => Microchip MPLAB C serisi => Microchip C18 => Konuyu başlatan: hamityanik - 01 Haziran 2011, 23:08:49

Başlık: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 01 Haziran 2011, 23:08:49
Merhaba arkadaşlar,

MPLAB'da C18 derleyicisini kullanarak bir c programını derlemeye çalışıyorum. Ancak MPLAB derleme esnasında "o" dosyasını oluşturuyor ama hex oluşturmuyor. Ne kadar uğraşsam da bir türlü yapamadım. Yadımlarınızı bekliyorum.

Derleme çıktısı şu şekilde:


----------------------------------------------------------------------
Release build of project `C:\Demo App\Demo App-C18.mcp' started.
Language tool versions: mpasmwin.exe v5.35, mplink.exe v4.35, mcc18.exe v3.35
Wed Jun 01 23:03:27 2011
----------------------------------------------------------------------
Executing: "C:\MCC18\bin\mcc18.exe" -p=18F4685 /i"." -I"C:\Microchip Solutions\Microchip\Include" -I"C:\MCC18\h" "Untitled.c" -fo="Untitled.o" -k -sco -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
C:\Demo App\Untitled.c:8:Warning [2066] type qualifier mismatch in assignment
----------------------------------------------------------------------
Release build of project `C:\Demo App\Demo App-C18.mcp' succeeded.
Language tool versions: mpasmwin.exe v5.35, mplink.exe v4.35, mcc18.exe v3.35
Wed Jun 01 23:03:28 2011
----------------------------------------------------------------------
BUILD SUCCEEDED
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: Tagli - 01 Haziran 2011, 23:42:01
Emin değilim ama bir ihtimal, ayarlar kısmında kütüphane derleme seçeneğini seçmiş olabilirsin. O zaman hex oluşturmaz.

Yukarıdaki menüden şurayı kontrol et:
Project > Build Options... > Project > MPASM/C17/C18 Suite Sekmesi > Build normal target işeretli olmalı.
Eğer Build library target işaretli ise .hex dosyasını oluşturmaz.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 01 Haziran 2011, 23:53:03
"Build normal target" işaretli zaten. ".c" dosyasına sağ tuş tıklayıp "Compile" diyorum. Doğru mu yapıyorum?
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: iyildirim - 02 Haziran 2011, 00:10:32
Bu şekilde sadece bir dosyayı derlemiş olursunuz. Link aşaması ve hex üretme kısmı çalışmamış olur.

Project -> build seçmelisiniz.. Veya F10 (build) yada CTRL+F10 (build all) tuşlarını  da kullanabilirsiniz.




Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 02 Haziran 2011, 00:19:10
Test amaçlı yeni bir proje açtım. Yine HEX'i oluşturmuyor. Acaba Compiler'da mı bir problem var?


Clean: Deleting intermediary and output files.
Clean: Deleted file "C:\1\Untitled.o".
Clean: Deleted file "C:\1\1.cof".
Clean Warning: File "C:\1\1.hex" doesn't exist.
Clean: Deleted file "C:\1\1.map".
Clean: Done.
Executing: "C:\MCC18\bin\mcc18.exe" -p=18F4620 /i"C:\MCC18\h" "Untitled.c" -fo="Untitled.o" -k -sco -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
C:\1\Untitled.c:8:Warning [2066] type qualifier mismatch in assignment
Executing: "C:\MCC18\bin\mplink.exe" /p18F4620 /l"C:\MCC18\lib" "Untitled.o" /u_CRUNTIME /z__MPLAB_BUILD=1 /m"C:\1\1.map" /w /o"C:\1\1.cof"
MPLINK 4.35, Linker
Copyright (c) 1998-2010 Microchip Technology Inc.
Errors    : 0

Loaded C:\1\1.cof.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: Tagli - 02 Haziran 2011, 00:49:44
Test projesini zipleyip paylaş, bir kontrol edelim. Tüm klasör içeriğini koy tabi, sadece .c dosyasını değil.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 02 Haziran 2011, 08:33:12
Merhaba,

Şu adresten indirebilirsiniz:
http://www.filesonic.com/file/1108133454/1.zip (http://www.filesonic.com/file/1108133454/1.zip)
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: Tagli - 02 Haziran 2011, 08:44:12
Oluşturuyor aslında :)

Project > Build Options... > Project > Directories sekmesinde combobox'ta Output Directory seçili iken C:\1 olarak ayarlanmış. Dosyaları buraya atıyor.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 02 Haziran 2011, 09:58:34
Projenin ana klasoru orasi zaten. O klasoru bilerek ben secmistim. Ama oraya hex atmiyor bende. Bendeki compiler'da mi  problem var acaba? Siz hex'i olusturabildiniz sanirim?
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: Tagli - 02 Haziran 2011, 10:11:31
Evet. Ben zip dosyasını masaüstündeki bir klasöre açıp denemiştim. Önce hex'i göremedim, sonra C:\1 içine attığını farkettim. Dediğim yerdeki ayarlarda o kısmı silince, yani C:\1 kısmını Delete tuşuna basıp silince hex dosyasını proje klasörüne oluşturmaya başladı.

Bilgisayarda bir arama ile 1.hex dosyasını bulmayı bir dene. Belki oluşturuyordur bir yerlere...
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 02 Haziran 2011, 10:15:15
C18 Compiler'in hangi versiyonu var sizde? v3.35 ve ustu gerekiyor bana. Su an var bende ama hex olusturmuyor. PM'den benimle paylasabilirseniz cok memnun olurum. İnternette bulamadim bir turlu.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 02 Haziran 2011, 10:23:36
Alıntı yapılan: Tagli - 02 Haziran 2011, 10:11:31
Bilgisayarda bir arama ile 1.hex dosyasını bulmayı bir dene. Belki oluşturuyordur bir yerlere...

Onu denedim ama sonuc yok. :)
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: Tagli - 02 Haziran 2011, 10:33:09
C18'in v3.38 versiyonunu kullanıyorum. Kendi sitesinden çekmiş olduğum Lite yani sınırlı sürümü. MPLAB ise 8.70, yine kendi sitesinden çektim.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 02 Haziran 2011, 10:48:14
Lite surumdeki sinirlandirma nedir peki? Etkilemeyecekse ben de o sekilde kullanayim.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: Tagli - 02 Haziran 2011, 10:50:04
Optimizasyon sınırlaması var. Yani oluşan kod daha fazla RAM ve ROM alanı harcıyor, ve de daha düşük performans/hız ile çalışabiliyor. Bunun dışında bir sınırlama yok.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: hamityanik - 02 Haziran 2011, 10:58:08
 Lite surumu isimi gormeyecek maalesef. Hizli yanitlariniz ve yardiminiz icin tesekkur ederim.
Başlık: Ynt: MPLAB C18 compiler "o" dosyasını oluşturuyor, hex'i oluşturmuyor.
Gönderen: erolca - 02 Haziran 2011, 23:17:45
projects->Build options...->Project

açılan pencerede MPLINK Linker  sekmesinden  Hex file format-> INHX32 seçmelisiniz..