PMG

Форумы по созданию игр
Текущее время: 05 авг 2021 11:14

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 16 окт 2011 15:05 
Не в сети
Любитель

Зарегистрирован: 16 окт 2011 09:57
Сообщения: 12
Добрый день!
Я являюсь поклонником С++ Builder 6.0. Я скомпилировал ODE под С++ Builder 6.0 без Trimesh, а также несколько примеров. Есть проблемы с компиляцией Trimesh, а также в вызове некоторых функций.
Нужны добровольцы для проведения эксперимента по компиляции ODE под С++ Builder 6.0 на своем компе, а дальнейшем составления FAQ, по возможности попробуем также решить проблемы с Trimesh. Моих знаний не хватает поэтому обращаюсь за помощью. Заранее благодарю! Писать в личку.

p.s. для пессимистов - действительно ODE компилится и работает!!!!!!!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 17 окт 2011 15:26 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
А какие проблемы с компиляцией?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 17 окт 2011 20:38 
Не в сети
Любитель

Зарегистрирован: 16 окт 2011 09:57
Сообщения: 12
Не компилится TriMesch.
Поэтому ищу добровольцев(ца) для проведения эксперимента по компиляции ODE на своем компе.
Тех.поддержку гарантирую.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 18 окт 2011 08:56 
Не в сети
Опытный

Зарегистрирован: 02 ноя 2008 02:36
Сообщения: 116
Откуда: Kiev
На сколько я помню, в нете было много холиваров на тему, что билдер не соответствует стандарту. Либо же в примере есть что-то мс специфик. В мире разработки по студия давно уже стала стандартом.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 18 окт 2011 10:12 
Не в сети
Любитель

Зарегистрирован: 16 окт 2011 09:57
Сообщения: 12
Я поклонник С++ Builder 6.0., поэтому ищу единомышленников.
VS - это другая история.
Компилится под Builder ODE и работает без TriMesch.
Нужны добровольцы для проведения эксперимента по компиляции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 19 окт 2011 13:45 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Понятно, я тоже на билдере ничего не делал, но народу много его юзает, возможно кто и поможет.
Какие хоть ошибки при компиляции-то вылезают?

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 19 окт 2011 21:57 
Не в сети
Любитель

Зарегистрирован: 16 окт 2011 09:57
Сообщения: 12
Самая сложная ошибка для меня была
E2015 Ambiguity between 'Point::operator const float *() const' and 'Point::operator float *()'
я нашел решение этой проблемы,
но тогда возникает проблема в Тrimesh


p.s. официально ODE С++ Builder не поддерживается (ответ разработчика ODE одному пользователю на его вопрос)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 18 сен 2012 21:28 
Не в сети
Любитель

Зарегистрирован: 16 окт 2011 09:57
Сообщения: 12
Приветствую!
скомпилил ODE последней версии под С++ Builder 6.0 update 4
betweenы победил!
Конечно, не все работает как надо, но для ознакомления пойдет!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 19 сен 2012 13:18 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Может тогда поделишься опытом или ссылку дашь, где это описано.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 19 сен 2012 18:19 
Не в сети
Любитель

Зарегистрирован: 16 окт 2011 09:57
Сообщения: 12
В ...\ode\build запускаем premake4 c ключами
получаем проектик для vs
затем prjconverter -ом в dsp затем из buildera утилитой vc ++ conversion в проект для buildera
И компилировать ... компилировать ... компилировать ...
пока не получится ode.dll
Примерно как-то так, компилируем под dDOUBLE
некоторые betweenы при компиляции сложно обходить, некоторые вопросы и у меня остались...
Будут добровольцы, можно еще раз скомпилировать, одна голова хорошо, а две лучше.
dll и lib могу выложить, а вот в идеале - должен получится правильно скомпилированный ODE под builder, вот этого хочется!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 20 сен 2012 09:15 
Не в сети
Любитель

Зарегистрирован: 16 окт 2011 09:57
Сообщения: 12
компилировал без trimesh
сейчас пробую заново учел все предыдущие свои ошибки
нужно исходник функции double nextafter(double from, double towards);
заранее, благодарю за ссылку или код


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: C++ Builder 6.0 and ODE. Компиляция.
СообщениеДобавлено: 24 сен 2012 14:00 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Надо искать компилер с открытым кодом для стандартной библиотеки. Взято из DJGPP:
Код:
/* @(#)s_nextafter.c 5.1 93/09/24 */
/*
* ====================================================
* Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
*
* Developed at SunPro, a Sun Microsystems, Inc. business.
* Permission to use, copy, modify, and distribute this
* software is freely granted, provided that this notice
* is preserved.
* ====================================================
*/

/*
FUNCTION
       <<nextafter>>, <<nextafterf>>---get next number

INDEX
   nextafter
INDEX
   nextafterf

ANSI_SYNOPSIS
       #include <math.h>
       double nextafter(double <[val]>, double <[dir]>);
       float nextafterf(float <[val]>, float <[dir]>);

TRAD_SYNOPSIS
       #include <math.h>

       double nextafter(<[val]>, <[dir]>)
              double <[val]>;
              double <[exp]>;

       float nextafter(<[val]>, <[dir]>)
              float <[val]>;
              float <[dir]>;


DESCRIPTION
<<nextafter>> returns the double) precision floating point number
closest to <[val]> in the direction toward <[dir]>.  <<nextafterf>>
performs the same operation in single precision.  For example,
<<nextafter(0.0,1.0)>> returns the smallest positive number which is
representable in double precision.

RETURNS
Returns the next closest number to <[val]> in the direction toward
<[dir]>.

PORTABILITY
   Neither <<nextafter>> nor <<nextafterf>> is required by ANSI C
   or by the System V Interface Definition (Issue 2).
*/

/* IEEE functions
*   nextafter(x,y)
*   return the next machine floating-point number of x in the
*   direction toward y.
*   Special cases:
*/

#include "fdlibm.h"

#ifndef _DOUBLE_IS_32BITS

#ifdef __STDC__
   double nextafter(double x, double y)
#else
   double nextafter(x,y)
   double x,y;
#endif
{
   __int32_t   hx,hy,ix,iy;
   __uint32_t lx,ly;

   EXTRACT_WORDS(hx,lx,x);
   EXTRACT_WORDS(hy,ly,y);
   ix = hx&0x7fffffff;      /* |x| */
   iy = hy&0x7fffffff;      /* |y| */

   if(((ix>=0x7ff00000)&&((ix-0x7ff00000)|lx)!=0) ||   /* x is nan */
      ((iy>=0x7ff00000)&&((iy-0x7ff00000)|ly)!=0))     /* y is nan */
      return x+y;            
   if(x==y) return x;      /* x=y, return x */
   if((ix|lx)==0) {         /* x == 0 */
       INSERT_WORDS(x,hy&0x80000000U,1);   /* return +-minsubnormal */
       y = x*x;
       if(y==x) return y; else return x;   /* raise underflow flag */
   }
   if(hx>=0) {            /* x > 0 */
       if(hx>hy||((hx==hy)&&(lx>ly))) {   /* x > y, x -= ulp */
      if(lx==0) hx -= 1;
      lx -= 1;
       } else {            /* x < y, x += ulp */
      lx += 1;
      if(lx==0) hx += 1;
       }
   } else {            /* x < 0 */
       if(hy>=0||hx>hy||((hx==hy)&&(lx>ly))){/* x < y, x -= ulp */
      if(lx==0) hx -= 1;
      lx -= 1;
       } else {            /* x > y, x += ulp */
      lx += 1;
      if(lx==0) hx += 1;
       }
   }
   hy = hx&0x7ff00000;
   if(hy>=0x7ff00000) return x+x;   /* overflow  */
   if(hy<0x00100000) {      /* underflow */
       y = x*x;
       if(y!=x) {      /* raise underflow flag */
           INSERT_WORDS(y,hx,lx);
      return y;
       }
   }
   INSERT_WORDS(x,hx,lx);
   return x;
}

#endif /* _DOUBLE_IS_32BITS */

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB