Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование игр для компьютеров > Xors3D

Xors3D Графический движок с поддержкой DirectX9

Ответ
 
Опции темы
Старый 23.12.2011, 11:58   #1
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 03.09.2005
Сообщений: 14,014
Написано 6,795 полезных сообщений
(для 20,920 пользователей)
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-файл
5 ) Указываем компилятор. Пусть GNU GCC
6 ) Конфигурации (логично выбрать обе)
7 ) Заходим в Project -> Build Options (слева выбираем весь проект, а не отдельные конфигурации) переходим на вкладку Search Directories вкладка Compiler жмём Add указываем XORS3D\headers\CPP\inc в строке ввода и добавляем путь.
8 ) Дописываем #include <stdio.h>, чтобы устранить ошибку error: 'sprintf' was not declared in this scope
9 ) Далее получаем ошибку ld.exe||cannot find -lxors3d|
И это несмотря на то, что *.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) или подключён прагмой. Собственно первый вариант я и выбрал. Затем, в диалоге, убедился что линкер его проглотил (а на самом деле - только требовал его). А тут ещё гугл подбросил "единомышленников".
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?

Последний раз редактировалось impersonalis, 27.12.2011 в 12:06.
(Offline)
 
Ответить с цитированием
Эти 6 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
.Squid (23.12.2011), ABTOMAT (23.12.2011), dsd (27.12.2011), Dzirt (15.02.2012), Harter (23.12.2011), Hurrit (23.12.2011)
Старый 23.12.2011, 12:24   #2
dsd
Мастер
 
Аватар для dsd
 
Регистрация: 12.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений
(для 1,835 пользователей)
Ответ: Code::Blocks и Xors3d (C++)

Наверно не в тему, но я просто сделал в:
settings->compiler and debugger->linker settings->add... где добавил *.lib хорса. Далее достаточно в любом проекте заинклюдить хорсовский xors3d.h, ну и длл хорсовскую рядом с генерируемым экзешником положить и все ок. Практически тот же блитц3д, только лучше. А sprintf() и так замечательно работает у меня почему то .
#include "xors3d.h"
#include <stdio.h>
#include <math.h>
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (27.12.2011)
Старый 23.12.2011, 13:13   #3
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 03.09.2005
Сообщений: 14,014
Написано 6,795 полезных сообщений
(для 20,920 пользователей)
Ответ: Code::Blocks и Xors3d (C++)

Сообщение от dsd Посмотреть сообщение
Наверно не в тему, но я просто сделал в:
settings->compiler and debugger->linker settings->add... где добавил *.lib хорса. Далее достаточно в любом проекте заинклюдить хорсовский xors3d.h, ну и длл хорсовскую рядом с генерируемым экзешником положить и все ок. Практически тот же блитц3д, только лучше. А sprintf() и так замечательно работает у меня почему то .
#include "xors3d.h"
#include <stdio.h>
#include <math.h>
Да - либ.-файл я подключал штатаными средвтами - плодов это не принесло. Хотя директории все латинцей и без пробелов. (м\б дело в версии компилятора? разных дисках К::Б и проекта? х3)
Ну а про спринтф - ты привёл решение, указанное мной.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
dsd (23.12.2011)
Старый 23.12.2011, 14:32   #4
dsd
Мастер
 
Аватар для dsd
 
Регистрация: 12.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений
(для 1,835 пользователей)
Ответ: Code::Blocks и Xors3d (C++)

дело не в кодеблокс и не в имени папки, т.к. у меня либы лежат в c:\хотфикс\ и нормально все. Скорее дело в винде или файловой системе диска.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (23.12.2011)
Старый 23.12.2011, 18:23   #5
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 03.09.2005
Сообщений: 14,014
Написано 6,795 полезных сообщений
(для 20,920 пользователей)
Ответ: Code::Blocks и Xors3d (C++)

http://forum.boolean.name/showthread.php?t=16080
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
dsd (23.12.2011)
Старый 23.12.2011, 19:24   #6
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 25.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,452
Написано 5,277 полезных сообщений
(для 15,248 пользователей)
Ответ: Code::Blocks и Xors3d (C++)

Эх, года бы 2 назад такую-то инструкцию!
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (23.12.2011)
Старый 27.12.2011, 12:08   #7
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 03.09.2005
Сообщений: 14,014
Написано 6,795 полезных сообщений
(для 20,920 пользователей)
Ответ: Code::Blocks и Xors3d (C++)

Обновил первый пост
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 19:29.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com