Есть ли русский ман по установке?
Если нет, может кто ставил себе можете примерно описать как Вы это сделали.
Если что вот как я устанавливаю:
1)скачал исходник
2) Качнул все следующие пакеты и их зависимости:
* cmake
* g++
* libopenscenegraph-dev
* uuid-dev
* libcal3d-dev
* libfltk-dev
* libqt4-dev
* libxerces27-dev
* libxxf86vm-dev
* python-dev
* libboost-dev
* libopenal-dev
* libalut-dev
* libcegui-mk2-dev
* libasound2-plugins
* libncurses-dev
* libgdal-dev
* libcppunit-dev
3)Настроил libode
4)Начал настраивать open-dis
cd open-dis/Compile/premake
./premake_gnumake_linux.sh
~/svn/open-dis-3.0/Compile/premake$ ./premake_gnumake_linux.sh
~/svn/open-dis-3.0/Compile/premake/Projects ~/svn/open-dis-3.0/Compile/premake
Generating GNU makefiles:
...DIS
...UnitTest_DIS
...Example_Send
...Example_Receive
Generating Visual Studio 2003 solution and project files:
...DIS
...UnitTest_DIS
...Example_Send
...Example_Receive
Generating Visual Studio 2005 solution and project files:
...DIS
...UnitTest_DIS
...Example_Send
...Example_Receive
~/svn/open-dis-3.0/Compile/premake
cd ../gnu
CONFIG=Release make
~/svn/open-dis-3.0/Compile/gnu$ CONFIG=Release make
==== Building DIS ====
CommentReliablePdu.cpp
ElectronicEmissionsPdu.cpp
AcousticBeamFundamentalParameter.cpp
AcknowledgePdu.cpp
EntityStatePdu.cpp
ModulationType.cpp
AcousticEmitterSystemData.cpp
Point.cpp
SyntheticEnvironmentFamilyPdu.cpp
IntercomSignalPdu.cpp
SystemID.cpp
SeesPdu.cpp
RecordSet.cpp
DesignatorPdu.cpp
AntennaLocation.cpp
CollisionElasticPdu.cpp
DataQueryReliablePdu.cpp
EventReportReliablePdu.cpp
ServiceRequestPdu.cpp
FirePdu.cpp
Pdu.cpp
CommentPdu.cpp
EnvironmentalProcessPdu.cpp
SimulationManagementWithReliabilityFamilyPdu.cpp
MinefieldResponseNackPdu.cpp
MinefieldPduFamily.cpp
IntercomControlPdu.cpp
DetonationPdu.cpp
Marking.cpp
../../cpp/DIS/Marking.cpp: In constructor ‘DIS::Marking::Marking()’:
../../cpp/DIS/Marking.cpp:13: error: expected ‘;’ before ‘}’ token
../../cpp/DIS/Marking.cpp: In member function ‘void DIS::Marking::setByStringCharacters(const char*)’:
../../cpp/DIS/Marking.cpp:52: error: ‘strncpy’ was not declared in this scope
make[1]: *** [obj_gnu_DIS/Marking.o] Ошибка 1
make: *** [DIS] Ошибка 2
вот файл Marking.cpp
#include <DIS/Marking.h>
using namespace DIS;
Marking::Marking():
_characterSet(0)
{
// Initialize fixed length array
for(int lengthcharacters= 0; lengthcharacters < 11; lengthcharacters++)
{
_characters[lengthcharacters] = 0
}
}
Marking::~Marking()
{
}
unsigned char Marking::getCharacterSet() const
{
return _characterSet;
}
void Marking::setCharacterSet(unsigned char pX)
{
_characterSet = pX;
}
char* Marking::getCharacters()
{
return _characters;
}
const char* Marking::getCharacters() const
{
return _characters;
}
void Marking::setCharacters(const char* x)
{
for(int i = 0; i < 11; i++)
{
_characters = x;
}
}
// An alternate method to set the value if this could be a string. This is not strictly comnpliant with the DIS standard.
void Marking::setByStringCharacters(const char* x)
{
strncpy(_characters, x, 11-1);
_characters[11 -1] = '\0';
}
void Marking::marshal(DataStream& dataStream) const
{
dataStream << _characterSet;
for(size_t idx = 0; idx < 11; idx++)
{
dataStream << _characters[idx];
}
}
void Marking::unmarshal(DataStream& dataStream)
{
dataStream >> _characterSet;
for(size_t idx = 0; idx < 11; idx++)
{
dataStream >> _characters[idx];
}
}
bool Marking::operator ==(const Marking& rhs) const
{
bool ivarsEqual = true;
if( ! (_characterSet == rhs._characterSet) ) ivarsEqual = false;
for(char idx = 0; idx < 11; idx++)
{
if(!(_characters[idx] == rhs._characters[idx]) ) ivarsEqual = false;
}
return ivarsEqual;
}
int Marking::getMarshalledSize() const
{
int marshalSize = 0;
marshalSize = marshalSize + 1; // _characterSet
marshalSize = marshalSize + 11 * 1; // _characters
return marshalSize;
}