|
компилятор |
|
|
|
 |
Ответов
|
Jul 11 2008, 14:22
|
Гуру
     
Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923

|
Вот опять у меня проблема с настройками  . С макфилами только начинаю разбираться, поэтому вопрос может показаться детским, но все же не знаю что с этим делать. Компилятор SDCC вот mikefile который сегодня наваял, проблема ,пока model -small все нормально, но если меняю на --model-large (мне она нужна) выходит ошибка. Код CC=sdcc LINKFLAGS=-L --code-loc 0x0000 --code-size 0xFFFF --xram-loc 0x0000 --xram-size 0x0700 --model-small all: main.hex
main.rel: main.c $(CC) -c main.c main.hex: main.rel $(CC) $(LINKFLAGS) main.rel packihx <main.ihx >main.hex
clean: rm -f *.sym *.lst *.mem *.map *.ihx *.lnk *.rst *.rel *.asm *.hex ошибка: Код **** Build of configuration Default for project TESTSDCC ****
make all sdcc -c main.c sdcc -L --code-loc 0x0000 --code-size 0xFFFF --xram-loc 0x0000 --xram-size 0x0700 --model-large main.rel ?ASlink-Warning-Conflicting sdcc options: "-mmcs51 --model-small" in module "main" and "-mmcs51 --model-large" in module "_strlen". ?ASlink-Warning-Conflicting sdcc options: "-mmcs51 --model-small" in module "main" and "-mmcs51 --model-large" in module "_gptrget". ?ASlink-Warning-Conflicting sdcc options: "-mmcs51 --model-small" in module "main" and "-mmcs51 --model-large" in module "_startup". at 1: warning 119: don't know what to do with file '0x0000'. file extension unsupported make: *** [main.hex] Error 1 Команды компилятора: Код SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.8.2 #5 195 (Jun 27 2008) (MINGW32) Usage : sdcc [options] filename Options :-
General options: --help Display this help -v --version Display sdcc's version --verbose Trace calls to the preprocessor, assembler, and link er -V Execute verbosely. Show sub commands as they are ru n -d -D Define macro as in -Dmacro -I Add to the include (*.h) path, as in -Ipath -A -U -M Preprocessor option -W Pass through options to the pre-processor (p), assem bler (a) or linker (l) -S Compile only; do not assemble or link -c --compile-only Compile and assemble, but do not link -E --preprocessonly Preprocess only, do not compile --c1mode Act in c1 mode. The standard input is preprocessed code, the output is assembly code. -o Place the output into the given path resp. file --print-search-dirs display the directories in the compiler's search pat h --vc messages are compatible with Micro$oft visual studio
--use-stdout send errors to stdout instead of stderr --nostdlib Do not include the standard library directory in the search path --nostdinc Do not include the standard include directory in the search path --less-pedantic Disable some of the more pedantic warnings --disable-warning <nnnn> Disable specific warning --Werror Treat the warnings as errors --debug Enable debugging symbol output --cyclomatic Display complexity of compiled functions --std-c89 Use C89 standard only --std-sdcc89 Use C89 standard with SDCC extensions (default) --std-c99 Use C99 standard only (incomplete) --std-sdcc99 Use C99 standard with SDCC extensions (incomplete) --fdollars-in-identifiers Permit '$' as an identifier character --funsigned-char Make "char" unsigned by default
Code generation options: -m Set the port to use e.g. -mz80. -p Select port specific processor e.g. -mpic14 -p16f84 --model-large external data space is used --model-medium external paged data space is used --model-small internal data space is used (default) --stack-auto Stack automatic variables --xstack Use external stack --int-long-reent Use reentrant calls on the int and long support func tions --float-reent Use reentrant calls on the float support functions --main-return Issue a return after main() --xram-movc Use movc instead of movx to read xram (xdata) --callee-saves <func[,func,...]> Cause the called function to save registers insted of the caller --profile On supported ports, generate extra profiling informa tion --fommit-frame-pointer Leave out the frame pointer. --all-callee-saves callee will always save registers used --stack-probe insert call to function __stack_probe at each functi on prologue --no-xinit-opt don't memcpy initialized xram from code --no-c-code-in-asm don't include c-code as comments in the asm file --no-peep-comments don't include peephole optimizer comments --fverbose-asm include code generator comments --short-is-8bits Make short 8 bits (for old times sake) --codeseg <name> use this name for the code segment --constseg <name> use this name for the const segment
Optimization options: --nooverlay Disable overlaying leaf function auto variables --nogcse Disable the GCSE optimisation --nolabelopt Disable label optimisation --noinvariant Disable optimisation of invariants --noinduction Disable loop variable induction --nojtbound Don't generate boundary check for jump tables --noloopreverse Disable the loop reverse optimisation --no-peep Disable the peephole assembly file optimisation --no-reg-params On some ports, disable passing some parameters in re gisters --peep-asm Enable peephole optimization on inline assembly --peep-file <file> use this extra peephole file --opt-code-speed Optimize for code speed rather than size --opt-code-size Optimize for code size rather than speed
Internal debugging options: --dumpraw Dump the internal structure after the initial parse --dumpgcse --dumploop --dumpdeadcode --dumpliverange --dumpregpack --dumpregassign --dumptree dump front-end AST before generating iCode --dumpall Dump the internal structure at all stages --i-code-in-asm include i-code as comments in the asm file
Linker options: -l Include the given library in the link -L Add the next field to the library search path --lib-path <path> use this path to search for libraries --out-fmt-ihx Output in Intel hex format --out-fmt-s19 Output in S19 hex format --xram-loc <nnnn> External Ram start location --xram-size <nnnn> External Ram size --iram-size <nnnn> Internal Ram size --xstack-loc <nnnn> External Stack start location --code-loc <nnnn> Code Segment Location --code-size <nnnn> Code Segment size --stack-loc <nnnn> Stack pointer initial value --data-loc <nnnn> Direct data start location --idata-loc
Special options for the mcs51 port: --stack-size Tells the linker to allocate this space for stack --parms-in-bank1 use Bank1 for parameter passing --pack-iram Tells the linker to pack variables in internal ram ( default) --no-pack-iram Tells the linker not to pack variables in internal r am --acall-ajmp Use acall/ajmp instead of lcall/ljmp
Special options for the gbz80 port: -bo <num> use code bank <num> -ba <num> use data bank <num> --callee-saves-bc Force a called function to always save BC --codeseg <name> use this name for the code segment --constseg <name> use this name for the const segment --no-std-crt0 For the z80/gbz80 do not link default crt0.o
Special options for the z80 port: --callee-saves-bc Force a called function to always save BC --portmode= Determine PORT I/O mode (z80/z180) --asm= Define assembler name (rgbds/asxxxx/isas/z80asm) --codeseg <name> use this name for the code segment --constseg <name> use this name for the const segment --no-std-crt0 For the z80/gbz80 do not link default crt0.o
Special options for the ds390 port: --model-flat24 use the flat24 model for the ds390 (default) --stack-8bit use the 8bit stack for the ds390 (not supported yet)
--stack-size Tells the linker to allocate this space for stack --pack-iram Tells the linker to pack variables in internal ram ( default) --no-pack-iram Tells the linker not to pack variables in internal r am --stack-10bit use the 10bit stack for ds390 (default) --use-accelerator generate code for ds390 arithmetic accelerator --protect-sp-update will disable interrupts during ESP:SP updates --parms-in-bank1 use Bank1 for parameter passing
Special options for the pic16 port: --pstack-model= use stack model 'small' (default) or 'large' -y --extended enable Extended Instruction Set/Literal Offset Addre ssing mode --pno-banksel do not generate BANKSEL assembler directives --obanksel= set banksel optimization level (default=0 no) --denable-peeps explicit enable of peepholes --optimize-goto try to use (conditional) BRA instead of GOTO --optimize-cmp try to optimize some compares --optimize-df thoroughly analyze data flow (memory and time intens ive!) --asm= Use alternative assembler --mplab-comp enable compatibility mode for MPLAB utilities (MPASM /MPLINK) --link= Use alternative linker --preplace-udata-with= Place udata variables at another section: udata_ac s, udata_ovr, udata_shr --ivt-loc= Set address of interrupt vector table. --nodefaultlibs do not link default libraries when linking --use-crt= use <crt-o> run-time initialization module --no-crt do not link any default run-time initialization modu le --debug-xtra show more debug info in assembly output --debug-ralloc dump register allocator debug file *.d --pcode-verbose dump pcode related info --calltree dump call tree in .calltree file --gstack trace stack pointer push/pop to overflow
Special options for the pic14 port: --debug-xtra show more debug info in assembly output --no-pcode-opt disable (slightly faulty) optimization on pCode --stack-size sets the size if the argument passing stack (default : 16, minimum: 4) --udata-section-name set udata section name
Special options for the TININative port: --model-flat24 use the flat24 model for the ds390 (default) --stack-8bit use the 8bit stack for the ds390 (not supported yet)
--stack-size Tells the linker to allocate this space for stack --pack-iram Tells the linker to pack variables in internal ram ( default) --no-pack-iram Tells the linker not to pack variables in internal r am --stack-10bit use the 10bit stack for ds390 (default) --use-accelerator generate code for ds390 arithmetic accelerator --protect-sp-update will disable interrupts during ESP:SP updates --parms-in-bank1 use Bank1 for parameter passing --tini-libid <nnnn> LibraryID used in -mTININative
Special options for the ds400 port: --model-flat24 use the flat24 model for the ds400 (default) --stack-8bit use the 8bit stack for the ds400 (not supported yet)
--stack-size Tells the linker to allocate this space for stack --pack-iram Tells the linker to pack variables in internal ram ( default) --no-pack-iram Tells the linker not to pack variables in internal r am --stack-10bit use the 10bit stack for ds400 (default) --use-accelerator generate code for ds400 arithmetic accelerator --protect-sp-update will disable interrupts during ESP:SP updates --parms-in-bank1 use Bank1 for parameter passing
Special options for the hc08 port: --out-fmt-elf Output executable in ELF format
Сообщение отредактировал sergey sva - Jul 11 2008, 14:23
|
|
|
|
|
Jul 11 2008, 19:08
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(sergey sva @ Jul 11 2008, 20:22)  Вот опять у меня проблема с настройками  . С макфилами только начинаю разбираться, поэтому вопрос может показаться детским, но все же не знаю что с этим делать. Компилятор SDCC вот mikefile который сегодня наваял, проблема ,пока model -small все нормально, но если меняю на --model-large (мне она нужна) выходит ошибка. Наверное --model-large надо указывать не только линкеру, но и компилятору. Напишите перед Код LINKFLAGS=-L --code-loc 0x0000 --code-size 0xFFFF --xram-loc 0x0000 --xram-size 0x0700 --model-large что-нибудь типа: Код CFLAGS= --model-large и потом: Код main.rel: main.c $(CC) -c $(CFLAGS) main.c
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Jul 11 2008, 19:14
|
Гуру
     
Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923

|
Цитата(AHTOXA @ Jul 11 2008, 23:08)  Наверное --model-large надо указывать не только линкеру, но и компилятору. Напишите перед Код LINKFLAGS=-L --code-loc 0x0000 --code-size 0xFFFF --xram-loc 0x0000 --xram-size 0x0700 --model-large что-нибудь типа: Код CFLAGS= --model-large и потом: Код main.rel: main.c $(CC) -c $(CFLAGS) main.c Да в этом (CC) -c $(CFLAGS) main.c[/code] проблема была
Сообщение отредактировал sergey sva - Jul 11 2008, 19:14
|
|
|
|
Сообщений в этой теме
sergey sva компилятор Jun 26 2008, 17:58 voyt Да, существует. Не только бесплатный, но и свободн... Jun 26 2008, 18:07 sergey sva Если не затруднит, помогите разобраться с http://... Jun 27 2008, 07:34 voyt Читайте сначала это:
http://www.yagarto.de/howto/y... Jun 27 2008, 08:01 sergey sva Цитата(voyt @ Jun 27 2008, 12:01) Читайте... Jun 27 2008, 18:05 sergey sva Много приходилось работать с msc51 для них может т... Jun 27 2008, 09:04 voyt Да, есть:
http://sdcc.sourceforge.net/
Тоже open-s... Jun 27 2008, 09:29 sergey sva Цитата(voyt @ Jun 27 2008, 13:29) Да, ест... Jun 27 2008, 09:51  gotty Цитата(sergey sva @ Jun 27 2008, 12:51) о... Jun 27 2008, 11:46   mdmitry Цитата(gotty @ Jun 27 2008, 15:46) Emacs ... Jun 27 2008, 12:49  haker_fox Цитата(sergey sva @ Jun 27 2008, 18:51) о... Jun 28 2008, 00:10   AHTOXA Цитата(haker_fox @ Jun 28 2008, 06:10) Со... Jun 28 2008, 19:59   AVR Цитата(haker_fox @ Jun 28 2008, 04:10) Со... Jun 29 2008, 13:38 voyt Для GCC лучше Eclipse ( хотя это не редактор, а ID... Jun 27 2008, 12:51 Сергей Борщ Цитата(voyt @ Jun 27 2008, 15:51) Для sdc... Jun 27 2008, 13:13 voyt Ну вы хотя бы дочитайте доки до конца.
В документе... Jun 27 2008, 19:31 sergey sva Какой отладчик, использовать с eclips ?, доступн... Jun 28 2008, 18:19 voyt Я использую JTAGKey - $70. Быстрый и удобный ... Jun 28 2008, 20:01 sergey sva Настроил Eclips скачал пример с сайта yagarto имп... Jun 29 2008, 07:23 voyt Файл main.c посмотрите. Там где вы скачали файл - ... Jun 29 2008, 20:04 sergey sva сдесь нашел пример для компилятора sdcc http://mc... Jun 29 2008, 20:18 sergey sva Ни когда с такими компиляторами дела не имел, сам ... Jun 30 2008, 13:23 Сергей Борщ Цитата(sergey sva @ Jun 30 2008, 16:23) ч... Jun 30 2008, 16:45 voyt 2 sergey sva:
Давайте разберёмся сначала с Eclipse... Jul 1 2008, 06:44 sergey sva Цитата(voyt @ Jul 1 2008, 10:44) 2 sergey... Jul 1 2008, 13:29  voyt Цитата(sergey sva @ Jul 1 2008, 17:29) С ... Jul 2 2008, 10:13  Сергей Борщ Цитата(sergey sva @ Jul 1 2008, 16:29) Ар... Jul 2 2008, 11:22 sergey sva Благодарю, буду дальше изучать. Наверно для начала... Jul 2 2008, 12:33 Сергей Борщ Цитата(sergey sva @ Jul 2 2008, 15:33) Мо... Jul 2 2008, 15:11  sergey sva Цитата(Сергей Борщ @ Jul 2 2008, 19:11) А... Jul 2 2008, 15:46  Petka Цитата(Сергей Борщ @ Jul 2 2008, 19:11) А... Jul 2 2008, 21:47 Leen Цитата(sergey sva @ Jul 2 2008, 23:33) Мо... Jul 2 2008, 21:58  AVR Цитата(Leen @ Jul 3 2008, 01:58) На самом... Jul 5 2008, 09:45   sergey sva Цитата(AVR @ Jul 5 2008, 13:45) Сообщите,... Jul 5 2008, 11:27   Leen Цитата(AVR @ Jul 5 2008, 20:45) Сообщите,... Jul 6 2008, 23:33   DRUID3 Цитата(AVR @ Jul 5 2008, 12:45) Сообщите,... Jul 7 2008, 14:24    sergey sva Цитата(DRUID3 @ Jul 7 2008, 18:24) ??? С ... Jul 7 2008, 14:40     DRUID3 Цитата(sergey sva @ Jul 7 2008, 17:40) Чт... Jul 7 2008, 15:10      AVR DRUID3 - ну Вы загнули: объяснять фанату GCC (мне)... Jul 7 2008, 15:56    AVR Цитата(DRUID3 @ Jul 7 2008, 18:24) ??? С ... Jul 7 2008, 15:02 Непомнящий Евгений Цитата(sergey sva @ Jul 2 2008, 16:33) Мо... Jul 6 2008, 12:37 voyt Да. GCC изначально был создан для ОС GNU и соотве... Jul 2 2008, 13:41 mdmitry Для Linux Kdevelop+QtDesigner. Qt мультиплатформен... Jul 3 2008, 11:33 sergey sva Кто программировал LPC2468 с помощью WIGGLER и Op... Jul 4 2008, 15:00 NikAn Цитата(sergey sva @ Jul 4 2008, 19:00) Кт... Jul 7 2008, 07:18 sergey sva скачал codeblok + MinGW + wxWidgets-2.8.8 . указал... Jul 5 2008, 15:37 Сергей Борщ Цитата(sergey sva @ Jul 5 2008, 18:37) шм... Jul 5 2008, 16:36  AVR Цитата(Сергей Борщ @ Jul 5 2008, 20:36) Е... Jul 6 2008, 11:57 sergey sva изменил расположение папки с проектом, переместил ... Jul 5 2008, 17:49 sergey sva Visual C# express edition Попробую обязательно. Се... Jul 6 2008, 14:11 AVR Цитата(sergey sva @ Jul 6 2008, 18:11) Vi... Jul 6 2008, 14:26  sergey sva Цитата(AVR @ Jul 6 2008, 18:26) Я ж напис... Jul 6 2008, 14:30  Непомнящий Евгений Цитата(AVR @ Jul 6 2008, 18:26) Один вопр... Jul 7 2008, 05:16 sergey sva Скачал сейчас настраиваю, помогите настроить Linke... Jul 6 2008, 18:33 AVR Цитата(sergey sva @ Jul 6 2008, 22:33) Пр... Jul 6 2008, 21:34  sergey sva Цитата(AVR @ Jul 7 2008, 01:34) Говорят, ... Jul 6 2008, 21:49 gotty Цитата(sergey sva @ Jul 6 2008, 21:33) Пр... Jul 7 2008, 07:15 sergey sva > Правда размер exe файла 1,6мгб, а при запуске... Jul 6 2008, 21:33 Leen Сегодня нарисовал форму на листе бумаги, посмотрел... Jul 7 2008, 09:05 sergey sva еще вопрос возник такой , для баз данных ,есть ка... Jul 7 2008, 09:06 AVR Цитата(sergey sva @ Jul 7 2008, 13:06) ещ... Jul 7 2008, 11:26 sergey sva Решил попробовать QT +QDevelop + minGw скачал уст... Jul 8 2008, 10:06 AVR Цитата(sergey sva @ Jul 8 2008, 14:06) Ещ... Jul 8 2008, 12:03  sergey sva Цитата(AVR @ Jul 8 2008, 16:03) CodeBlock... Jul 8 2008, 13:20   haker_fox Цитата(sergey sva @ Jul 8 2008, 22:20) co... Jul 8 2008, 23:47  DRUID3 Цитата(AVR @ Jul 8 2008, 15:03) CodeBlock... Jul 9 2008, 16:06 Leen Цитата(sergey sva @ Jul 8 2008, 21:06) пе... Jul 8 2008, 12:27  alx2 Цитата(Leen @ Jul 8 2008, 17:27) НО! ... Jul 9 2008, 13:14   Leen Цитата(alx2 @ Jul 10 2008, 00:14) ИМХО ещ... Jul 10 2008, 03:29 sergey sva Всетаки как связать обработку событий с программо... Jul 10 2008, 13:33 demiurg_spb Поиск рулит....
http://clivecooper.co.uk/tutorial... Jul 10 2008, 20:46
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|