Code::Blocks и Xors3d (C++)
Если пользователи MS Visual Studio (не канонической - 6-ой, а жутковатой 7 и выше) получают более-менее "решение из коробки", то почитателям Code::Blocks необходимо сделать больше телодвижений.
Ситуацию усложняет устаревший файл ReadMe.txt, поэтому, постарался подробно расписать процесс шаг-за-шагом. :) 1 ) Извлекаете содержимое поставки (zip-архива) в некоторую директорию (пусть это будет XORS3D) :) 2 ) Запускаете C::B. Рассмотрим пример сборки семпла. :) 3 ) Выбираете File->Import Project->MS Visual Studio project... :) 4 ) Допустим XORS3D\Samples\Source\C++\animtex выбираем там *.proj-файл :ok: 5 ) Указываем компилятор. Пусть GNU GCC :ok: 6 ) Конфигурации (логично выбрать обе) :crazy: 7 ) Заходим в Project -> Build Options (слева выбираем весь проект, а не отдельные конфигурации) переходим на вкладку Search Directories вкладка Compiler жмём Add указываем XORS3D\headers\CPP\inc в строке ввода и добавляем путь. :stop: 8 ) Дописываем #include <stdio.h>, чтобы устранить ошибку error: 'sprintf' was not declared in this scope И это несмотря на то, что *.lib-файл добавлен штатными средствами интерфейса IDE [этот шаг я опустил, т.к. он ни к чему не приводит]. В интернетах об этом пишут много и размазано. Половина тредов кончается ни чем, часть завершается постом "внезапно стало работать" или "скачал новую версию библиотеки - теперь пашет". Конечно же, можно реализовать паллиатив (аналогично поступает, например, пользователь тут http://yantayga.livejournal.com/24323.html "Вышел свежий Haskell Platform") Берём и тупо копируем XORS3D\headers\CPP\lib *.lib-файлы в \Program Files\CodeBlocks\MinGW\lib. IDE можно не перезапускать.Проект должен успешно собраться. 9 ) Заходим в Project -> Build Options вкладка Linker settings 9.1 ) Выбираем конфигурацию Debug (дерево в левой части окна) 9.2 ) Выбираем все файлы в списке Link libraries (зажав ctrl) и нажимаем Delete 9.3 ) Выбираем конфигурацию Release (дерево в левой части окна). IDE запросит сохранение изменений - соглашаемся. 9.4 ) Выбираем все файлы в списке Link libraries (зажав ctrl) и нажимаем Delete 9.5 ) Выбираем конфигурацию общую конфигурацию (корень дерева конфигураций). IDE запросит сохранение изменений - соглашаемся. 9.6 ) Жмём Add и указываем в открывшемся диалоге файл XORS3D\headers\CPP\lib\Xors3d.lib. Применяем. 9.7 ) Жмём Add и указываем в открывшемся диалоге файл \Program Files\CodeBlocks\MinGW\lib\libwinmm.a (или просто libwinmm.a). Применяем. 9.8 ) Закрываем диалог Project build options через Ok :) 10 ) Для запуска примера необходимо скопировать файл Xors3d.dll из XORS3D\dlls Цель поста - информировать пользователей во избежание глупых вопросов в техподдержку. Теги: Xors3D Code::Blocks error: 'sprintf' was not declared in this scope ld.exe||cannot find -lxors3d| MinGW dlls почему я идиот паллиатив приколы от код::блокс не видит либ скачать каннот фаунд без смс торрент бесплатно без ограничений и регистрации А если у меня XP SP3? Действительно ли все проблемы в моей криворукости? Создаём свой проект Upd: dsd Оказался прав. Проблема у меня была в "удачном" стечении обстоятельств: привычная MSVC++ сама прописывает линкеру файл экспорта, если тот был добавлен в проект (подобно любому файлу, например *.cpp) или подключён прагмой. Собственно первый вариант я и выбрал. Затем, в диалоге, убедился что линкер его проглотил (а на самом деле - только требовал его). А тут ещё гугл подбросил "единомышленников". |
Ответ: Code::Blocks и Xors3d (C++)
Наверно не в тему, но я просто сделал в:
settings->compiler and debugger->linker settings->add... где добавил *.lib хорса. Далее достаточно в любом проекте заинклюдить хорсовский xors3d.h, ну и длл хорсовскую рядом с генерируемым экзешником положить и все ок. Практически тот же блитц3д, только лучше. А sprintf() и так замечательно работает у меня почему то :). Код:
#include "xors3d.h" |
Ответ: Code::Blocks и Xors3d (C++)
Цитата:
Ну а про спринтф - ты привёл решение, указанное мной. |
Ответ: Code::Blocks и Xors3d (C++)
дело не в кодеблокс и не в имени папки, т.к. у меня либы лежат в c:\хотфикс\ и нормально все. Скорее дело в винде или файловой системе диска.
|
Ответ: Code::Blocks и Xors3d (C++)
|
Ответ: Code::Blocks и Xors3d (C++)
Эх, года бы 2 назад такую-то инструкцию!
|
Ответ: Code::Blocks и Xors3d (C++)
Обновил первый пост
|
Часовой пояс GMT +4, время: 02:01. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot