Лекция 5 / 2013
- Forums:
Качени са материалите и домашните по лекция 5.
Лекция 5 (8.11.2013) - [PDF | ZIP]
В лекцията има няколко слайда накрая, за които не остана време да ги изговорим по време на самия семинар. Прочетете си ги, тъй като идеята там (Model трансформация) ще ползваме много често оттук нататък в рейтрейсъра.
В git е качен кодът от лекцията, поправени са проблемите, които срещнахме по време на семинара (можете да видите коментарите). Добавени са коментари. Включени са Visual Studio solution и project файлове, дело на Иван Латунов (за което му благодаря). Ако имате проблеми с тях - обръщайте се към него :)
Има качени и домашни към тази лекция (много и разнообразни).
Както винаги - въпроси по лекцията, по кода в git или други - питайте в тази тема.
Comments
Запис
Качен е и записът на лекцията - https://vimeo.com/79350015
Поради някакъв проблем в screencap софтуера, звука изчезва някъде след 2ч11м - за съжаление нищо не може да се направи, и в суровите файлове е така.
Качването на записа на лекция 4 ще се забави, тъй като иска рязане на части от нея.
Проблем с компилация
Здравейте,
Не мога да компилирам кодър от tag homework5. Грешката не я дава в кода, ами в самият компилатор и съобщението изглежда по следният начин:
cc1plus.exe: error: unrecognized command line option '-std=c++11'
Преди да дръпна homework5, си правех домашното за homework4 и не съм променял нищо. Все пак каква може да е причината и как мога да го оправя?
Code::Blocks?
Коя версия на Code::Blocks ползваш?
Версия на Code::Blocks
Работя с 12.11, както е описано тук http://raytracing-bg.net/?q=node/225
gcc version
Проблемът тогава вероятно е друг - с версията на gcc е драмата при всички случаи.
Да не би случайно да имаш друга инсталация на MingW32 на компютъра (примерно от Dev-CPP или по-стара версия на Code::Blocks). Провери, че си изтеглил версията на Code::Blocks 12.11 със mingw32. И провери в настройките на Code::Blocks кой компилатор ползва. Ако е захапал някое по-старо mingw, там наистина компилаторът няма да знае за C++11. Трябва да го пренасочиш да ползва това mingw, което идва с C::B 12.11.
gcc compiler
Оказа се, че имам инсталиран GNUstep и Code::Blocks намира него като компилатор по подразбиране. Промених го и вече всичко е наред :)
Виж версията на компилатора ти аз имах същият проблем
Привет Викторе,
Аз имах същият проблем понеже съм със по-старо Ubuntu и моята версия е:
ognyan@ognyan-HP-Compaq-8510p:~/cg/trinity$ g++ --version
g++-4.6 (Ubuntu/Linaro 4.6.4-1ubuntu1~12.04) 4.6.4
Copyright (C) 2011 Free Software Foundation, Inc.
...
Така че опцията за GCC 4.6.x не е тази, а тази "-std=c++0x"
Или update-ни си GCC на 4.7.x аз и това направих и там я има "-std=c++11"
Ако ползваш CodeBlocks отвори си project properties на trinity проекта (десен клик properties), появява се диалог с caption Project/Target options. Кликни бутона "Project's build options..."
Таб Compiler settings, tab compiler flags, във едитбокса намери
[ ] Have g++ follow the comming C++0x ISO C++ language standard [-std=c++0x]
Цъкни го, а другата опция от Other Options tab-а я изтрий.
And it would work with the older GCC compiler.
Best Regards
Ognyan Gerassimov