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

|
Решил попробовать QT +QDevelop + minGw скачал установил, все вроде работает только, не всегда компиляция происходит без ошибок. первый раз компилю ,все без ошибо. Цитата Сборка (make)... C:/MinGW/bin/mingw32-make -f Makefile.Release mingw32-make[1]: Entering directory `C:/QDevelop_source/TEST' c:/Qt/4.4.0/bin/uic.exe ui/mainwindow.ui -o build/ui_mainwindow.h g++ -c -O2 -Wall -frtti -fexceptions -mthreads -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include' -I'c:/Qt/4.4.0/include/ActiveQt' -I'build' -I'build' -I'../../Qt/4.4.0/mkspecs/default' -o build/mainwindowimpl.o src/mainwindowimpl.cpp g++ -c -O2 -Wall -frtti -fexceptions -mthreads -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include' -I'c:/Qt/4.4.0/include/ActiveQt' -I'build' -I'build' -I'../../Qt/4.4.0/mkspecs/default' -o build/main.o src/main.cpp C:\Qt\4.4.0\bin/moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include' -I'c:/Qt/4.4.0/include/ActiveQt' -I'build' -I'build' -I'../../Qt/4.4.0/mkspecs/default' -D__GNUC__ -DWIN32 src/mainwindowimpl.h -o build/moc_mainwindowimpl.cpp g++ -c -O2 -Wall -frtti -fexceptions -mthreads -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include' -I'c:/Qt/4.4.0/include/ActiveQt' -I'build' -I'build' -I'../../Qt/4.4.0/mkspecs/default' -o build/moc_mainwindowimpl.o build/moc_mainwindowimpl.cpp g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s -Wl,-subsystem,console -mthreads -Wl -o bin/TEST.exe build/mainwindowimpl.o build/main.o build/moc_mainwindowimpl.o -L'c:/Qt/4.4.0/lib' -lQtGui4 -lQtCore4 mingw32-make[1]: Leaving directory `C:/QDevelop_source/TEST' ---------------------- Сборка завершена без ошибок---------------------- второй раз пересобираю вылетает 3 ошибки, хоть не чего и не менял. Цитата Обновить проект (qmake TEST.pro)... Очистить проект (make clean)... C:/MinGW/bin/mingw32-make -f Makefile.Release clean mingw32-make[1]: Entering directory `C:/QDevelop_source/TEST' rm build/moc_mainwindowimpl.cpp rm build/ui_mainwindow.h rm build/mainwindowimpl.o build/main.o build/moc_mainwindowimpl.o mingw32-make[1]: Leaving directory `C:/QDevelop_source/TEST' C:/MinGW/bin/mingw32-make -f Makefile.Debug clean mingw32-make[1]: Entering directory `C:/QDevelop_source/TEST' rm build/moc_mainwindowimpl.cpp rm build/ui_mainwindow.h rm: cannot remove `build/moc_mainwindowimpl.cpp': No such file or directory mingw32-make[1]: [compiler_moc_header_clean] Error 1 (ignored) rm build/mainwindowimpl.o build/main.o build/moc_mainwindowimpl.o rm: cannot remove `build/ui_mainwindow.h': No such file or directory mingw32-make[1]: [compiler_uic_clean] Error 1 (ignored) mingw32-make[1]: Leaving directory `C:/QDevelop_source/TEST' rm: cannot remove `build/mainwindowimpl.o': No such file or directory rm: cannot remove `build/main.o': No such file or directory rm: cannot remove `build/moc_mainwindowimpl.o': No such file or directory mingw32-make[1]: [clean] Error 1 (ignored) Сборка (make)... C:/MinGW/bin/mingw32-make -f Makefile.Release mingw32-make[1]: Entering directory `C:/QDevelop_source/TEST' c:/Qt/4.4.0/bin/uic.exe ui/mainwindow.ui -o build/ui_mainwindow.h g++ -c -O2 -Wall -frtti -fexceptions -mthreads -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include' -I'c:/Qt/4.4.0/include/ActiveQt' -I'build' -I'build' -I'../../Qt/4.4.0/mkspecs/default' -o build/mainwindowimpl.o src/mainwindowimpl.cpp g++ -c -O2 -Wall -frtti -fexceptions -mthreads -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include' -I'c:/Qt/4.4.0/include/ActiveQt' -I'build' -I'build' -I'../../Qt/4.4.0/mkspecs/default' -o build/main.o src/main.cpp C:\Qt\4.4.0\bin/moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include' -I'c:/Qt/4.4.0/include/ActiveQt' -I'build' -I'build' -I'../../Qt/4.4.0/mkspecs/default' -D__GNUC__ -DWIN32 src/mainwindowimpl.h -o build/moc_mainwindowimpl.cpp g++ -c -O2 -Wall -frtti -fexceptions -mthreads -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtCore' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include/QtGui' -I'../../Qt/4.4.0/include' -I'c:/Qt/4.4.0/include/ActiveQt' -I'build' -I'build' -I'../../Qt/4.4.0/mkspecs/default' -o build/moc_mainwindowimpl.o build/moc_mainwindowimpl.cpp g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s -Wl,-subsystem,console -mthreads -Wl -o bin/TEST.exe build/mainwindowimpl.o build/main.o build/moc_mainwindowimpl.o -L'c:/Qt/4.4.0/lib' -lQtGui4 -lQtCore4 mingw32-make[1]: Leaving directory `C:/QDevelop_source/TEST' ---------------------- Сборка завершена с 3 ошибками ---------------------- Еще такой вопрос: в WxWidget + Codeblocs событие добовляются двойным щелчком по кнопке (к примеру) , а сдесь форма редактируется в designer, как добавить событие(в код), к примеру нажатия кнопки?
|
|
|
|
|
Jul 8 2008, 12:03
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(sergey sva @ Jul 8 2008, 14:06)  Еще такой вопрос: в WxWidget + Codeblocs событие добовляются двойным щелчком по кнопке (к примеру) , а сдесь форма редактируется в designer, как добавить событие(в код), к примеру нажатия кнопки?  CodeBlocks также может создавать приложения и на базе QT4  + есть сторонние проги для дизайна окошечек с использованием WX, если по какой-то причине входящий в состав CodeBlocks редактор окон не понравился (конечно, есть и получше... просто удобно когда всё в одной среде, но Qt-шники же как-то живут)  В любом случае, какую бы Вы библиотеку/среду для кроссплатформенного программирования ни выбрали, это будет всегда правильное решение, мы линуксоиды/макосисты/... тоже люди и хотим софт
--------------------
|
|
|
|
|
Jul 8 2008, 12:27
|
Частый гость
 
Группа: Свой
Сообщений: 172
Регистрация: 5-08-06
Из: Владивосток
Пользователь №: 19 343

|
Цитата(sergey sva @ Jul 8 2008, 21:06)  первый раз компилю ,все без ошибо. второй раз пересобираю вылетает 3 ошибки, хоть не чего и не менял. Да просто все - в первый раз проект еще не компилился - эрго, объектных файлов еще нет (*.o), правило clean не выполняется, выполняется только правило сборки - all. Во второй раз при _пересборке_ последовательность такая: сначала чистим (make clean), затем собираем (make, она же - здесь - make all). Так вот, если внимательно почитать второй лог, то что мы видим: выполняем make clean для конфигурации release - удаляем файлы в output dir; output dir сейчас равна $(корень проекта)/build/ удаляем: Код build/moc_mainwindowimpl.cpp build/ui_mainwindow.h build/mainwindowimpl.o build/main.o build/moc_mainwindowimpl.o выполняем make clean для конфигурации debug - удаляем файлы в output dir; output dir сейчас равна $(корень проекта)/build/ удаляем: Код build/moc_mainwindowimpl.cpp build/ui_mainwindow.h build/mainwindowimpl.o build/main.o build/moc_mainwindowimpl.o НО! все эти файлы _уже_были_удалены при первом проходе make clean (для версии release)!!! Сталбыть, решение - разнести выходные папки для релиза и дебага, или (сложнее, если makefile не ручной, а управляется оболочкой) - изменить имена файлов так, чтобы они были разные для редиза и дебага. Хотя первый вариант все-таки проще. И лучше.
|
|
|
|
|
Jul 8 2008, 13:20
|
Гуру
     
Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923

|
Цитата(AVR @ Jul 8 2008, 16:03)  CodeBlocks также может создавать приложения и на базе QT4  + есть сторонние проги для дизайна окошечек с использованием WX, если по какой-то причине входящий в состав CodeBlocks редактор окон не понравился (конечно, есть и получше... просто удобно когда всё в одной среде, но Qt-шники же как-то живут)  В любом случае, какую бы Вы библиотеку/среду для кроссплатформенного программирования ни выбрали, это будет всегда правильное решение, мы линуксоиды/макосисты/... тоже люди и хотим софт  code bloks мне понравился.  Вопрос Там при открытие нового проекта есть вкладка, для AVR , а как же к примеру msc51 + sdcc? просто создавать пустой проект, или нужно что то дополнительно устанавливать чтобы появилась вкладка для SDCC?
|
|
|
|
|
Jul 8 2008, 23:47
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Цитата(sergey sva @ Jul 8 2008, 22:20)  code bloks мне понравился.  Вопрос Там при открытие нового проекта есть вкладка, для AVR , а как же к примеру msc51 + sdcc? просто создавать пустой проект, или нужно что то дополнительно устанавливать чтобы появилась вкладка для SDCC? Я, например, создаю "консольное приложение" (Console Application), затем в меню Project->Build options и в Project->Properties выполняю необходимые настройки, касающиеся makefile. В качестве компилятора указываю GNU GCC. Даже не потому что им пользуюсь, а просто он по умолчанию стоит. Все пути к утилитам (компиляторы, линкер, и тп) указаны в makefile. Поэтому проблем нет. Данный подход используется при написании кода для AVR/ARM/x86.
--------------------
Выбор.
|
|
|
|
|
Jul 9 2008, 13:14
|

Местный
  
Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091

|
Цитата(Leen @ Jul 8 2008, 17:27)  НО! все эти файлы _уже_были_удалены при первом проходе make clean (для версии release)!!! Сталбыть, решение - разнести выходные папки для релиза и дебага, или (сложнее, если makefile не ручной, а управляется оболочкой) - изменить имена файлов так, чтобы они были разные для редиза и дебага. ИМХО еще проще использовать rm -f и не заморачиваться ошибками удаления несуществующих файлов.
--------------------
Всего наилучшего, Alex Mogilnikov
|
|
|
|
|
Jul 9 2008, 16:06
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(AVR @ Jul 8 2008, 15:03)  CodeBlocks также может создавать приложения и на базе QT4 QDevelop работает с проектами в их "исконноq" Qt-шной форме - хоть запускай из коммандной строки, а CodeBlocks создает свой проект. Это может привести к сложностям при работе комманды разработчиков или работе с чужим достаточно большим проектом... Цитата(AVR @ Jul 8 2008, 15:03)  ... просто удобно когда всё в одной среде, но Qt-шники же как-то живут)  ... Qt-шное GUI можно разрабатывать в редакторе формочек идущем с Qt по-умолчанию! Зачем плодить сущности? Причем не забываем, что само формочку можно подключать к коду динамически  .
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
|
Jul 10 2008, 03:29
|
Частый гость
 
Группа: Свой
Сообщений: 172
Регистрация: 5-08-06
Из: Владивосток
Пользователь №: 19 343

|
Цитата(alx2 @ Jul 10 2008, 00:14)  ИМХО еще проще использовать rm -f и не заморачиваться ошибками удаления несуществующих файлов. ИМХО еще проще использовать rm -rf и не заморачиваться ошибками удаления и папок тоже  . И ваще - самописный makefile рулит. А то пока из одного проекта все настройки в другой перенесешь, запотеешь. А так один файлик скопировать и слегка его поправить.
|
|
|
|
|
Jul 10 2008, 13:33
|
Гуру
     
Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923

|
Всетаки как связать обработку событий с программой в QT,  (не чего не понимаю.)? Создаю новый проект в QDEVOLOP открываю форму в QT desinger , на форму можно набросать кнопок сохранить и откомпилить, запустить все работает. можно QT Desinger отредактировать сигналы слоты ,мышкой посоеденять кнопки текстэдиты выбрать действия для них, все работает, но мне не понятно как к примеру сменить надпись(любую) при нажатии на кнопку, и куда при этом писать код в Qt develop или qt designer ?
|
|
|
|
|
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
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|