Google

Compiling problems (x86_64)

Problems building or running the engine, queries about how to use features etc.

Moderators: Moderators, OGRE Team

Postby Bullfraged » Sat Dec 25, 2004 11:36 pm

donmartio wrote:So finally it compiles.

I had to add the -fPIC flag to the CXXFLAGS in configure.in.

I made the changes to libpng and the Samples run, but i can't see any mesh.
But even worse is, after the changes to the libpng my kde doesn't start anymore.

Does anybody else run into this problem? May there is an other solution?

Any suggestions?

Greetings
Martin

I had to recompile and install gtk+ for programs such as gimp to work, seeing as it uses libpng (gtk+ that is) and gimp uses gtk+
Bullfraged
Familiar face
 
Posts: 30
Joined: Sun Dec 05, 2004 1:46 am
Location: Taastrup, Denmark

Postby donmartio » Sun Dec 26, 2004 6:18 pm

The problem is, that i don't know which packages i have to re-emerge. So my solution will be so far, that i compile libpng for programming with ogre and re-emerge it before rebooting. May i find an other solution in the future.

Do i have to update the meshes? I tried that, but OgreMeshUpdate doesn't do anything.
I' still can't see any mesh in the samples.

Greetings
DonMartio
User avatar
donmartio
Familiar face
 
Posts: 26
Joined: Tue Sep 28, 2004 10:11 am

Postby Bullfraged » Sun Dec 26, 2004 6:23 pm

now you mention it, I noticed I don't see a mesh in the CubeMapping demo
Bullfraged
Familiar face
 
Posts: 30
Joined: Sun Dec 05, 2004 1:46 am
Location: Taastrup, Denmark

Postby donmartio » Sun Dec 26, 2004 6:42 pm

I tried OgreMeshUpdate but it is aborted:

Would you like to reorganise the vertex buffers for this mesh?y

Would you like to generate LOD information? (y/n)n

Generating edge lists..
MeshSerializer writing mesh data to athene.mesh...
Aborted


May i'm doing something wrong. Otherwiese it maybe has something to do with the changes done by the amd64.patch.
User avatar
donmartio
Familiar face
 
Posts: 26
Joined: Tue Sep 28, 2004 10:11 am

still can't compile...

Postby Nod51 » Tue Dec 28, 2004 7:28 am

I have tried to compile the CVS and I get this error:

g++ -DHAVE_CONFIG_H -I. -I. -I../../OgreMain/include -I/usr/include/freetype2 -I../../OgreMain/include -DOGRE_NONCLIENT_BUILD -g -O2 -I/usr/include/SDL -D_REENTRANT -MT OgreMeshSerializerImpl.lo -MD -MP -MF .deps/OgreMeshSerializerImpl.Tpo -c OgreMeshSerializerImpl.cpp -fPIC -DPIC -o .libs/OgreMeshSerializerImpl.o
In file included from ../../OgreMain/include/OgreMeshSerializerImpl.h:33,
from OgreMeshSerializerImpl.cpp:27:
../../OgreMain/include/OgreSharedPtr.h: In member function `void
Ogre::SharedPtr<T>::destroy() [with T = Ogre::Mesh]':
../../OgreMain/include/OgreSharedPtr.h:140: instantiated from `void Ogre::SharedPtr<T>::release() [with T = Ogre::Mesh]'
../../OgreMain/include/OgreSharedPtr.h:88: instantiated from `Ogre::SharedPtr<T>::~SharedPtr() [with T = Ogre::Mesh]'
../../OgreMain/include/OgreMesh.h:53: instantiated from here
../../OgreMain/include/OgreSharedPtr.h:149: warning: possible problem detected
in invocation of delete operator:
../../OgreMain/include/OgreSharedPtr.h:149: warning: invalid use of undefined
type `struct Ogre::Mesh'
../../OgreMain/include/OgrePrerequisites.h:252: warning: forward declaration of
`struct Ogre::Mesh'
../../OgreMain/include/OgreSharedPtr.h:149: note: neither the destructor nor
the class-specific operator delete will be called, even if they are declared
when the class is defined.
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl::writeSubMesh(const Ogre::SubMesh*)':
OgreMeshSerializerImpl.cpp:210: error: no matching function for call to `
Ogre::MeshSerializerImpl::writeInts(size_t*, int)'
../../OgreMain/include/OgreSerializer.h:59: error: candidates are: void
Ogre::Serializer::writeInts(const unsigned int*, long unsigned int)
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl::writeGeometry(const Ogre::VertexData*)':
OgreMeshSerializerImpl.cpp:290: error: no matching function for call to `
Ogre::MeshSerializerImpl::writeInts(const size_t*, int)'
../../OgreMain/include/OgreSerializer.h:59: error: candidates are: void
Ogre::Serializer::writeInts(const unsigned int*, long unsigned int)
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl::readGeometry(Ogre::DataStreamPtr&, Ogre::Mesh*,
Ogre::VertexData*)':
OgreMeshSerializerImpl.cpp:476: error: no matching function for call to `
Ogre::MeshSerializerImpl::readInts(Ogre::SharedPtr<Ogre::DataStream>&,
size_t*, int)'
../../OgreMain/include/OgreSerializer.h:74: error: candidates are: void
Ogre::Serializer::readInts(Ogre::DataStreamPtr&, unsigned int*, long
unsigned int)
OgreMeshSerializerImpl.cpp:504: warning: passing negative value `-10' for
converting 1 of `virtual void Ogre::DataStream::skip(long unsigned int)'
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl::readGeometryVertexDeclaration(Ogre::DataStreamPtr&,
Ogre::Mesh*, Ogre::VertexData*)':
OgreMeshSerializerImpl.cpp:534: warning: passing negative value `-10' for
converting 1 of `virtual void Ogre::DataStream::skip(long unsigned int)'
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl::readSubMeshNameTable(Ogre::DataStreamPtr&,
Ogre::Mesh*)':
OgreMeshSerializerImpl.cpp:640: warning: passing negative value `-10' for
converting 1 of `virtual void Ogre::DataStream::skip(long unsigned int)'
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl::readMesh(Ogre::DataStreamPtr&, Ogre::Mesh*)':
OgreMeshSerializerImpl.cpp:742: warning: passing negative value `-10' for
converting 1 of `virtual void Ogre::DataStream::skip(long unsigned int)'
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl::readSubMesh(Ogre::DataStreamPtr&, Ogre::Mesh*)':
OgreMeshSerializerImpl.cpp:762: error: no matching function for call to `
Ogre::MeshSerializerImpl::readInts(Ogre::SharedPtr<Ogre::DataStream>&,
size_t*, int)'
../../OgreMain/include/OgreSerializer.h:74: error: candidates are: void
Ogre::Serializer::readInts(Ogre::DataStreamPtr&, unsigned int*, long
unsigned int)
OgreMeshSerializerImpl.cpp:842: warning: passing negative value `-10' for
converting 1 of `virtual void Ogre::DataStream::skip(long unsigned int)'
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl::readEdgeList(Ogre::DataStreamPtr&, Ogre::Mesh*)':
OgreMeshSerializerImpl.cpp:1648: warning: passing negative value `-10' for
converting 1 of `virtual void Ogre::DataStream::skip(long unsigned int)'
OgreMeshSerializerImpl.cpp: In member function `virtual void
Ogre::MeshSerializerImpl_v1_2::readGeometry(Ogre::DataStreamPtr&,
Ogre::Mesh*, Ogre::VertexData*)':
OgreMeshSerializerImpl.cpp:1687: error: no matching function for call to `
Ogre::MeshSerializerImpl_v1_2::readInts(Ogre::SharedPtr<Ogre::DataStream>&,
size_t*, int)'
../../OgreMain/include/OgreSerializer.h:74: error: candidates are: void
Ogre::Serializer::readInts(Ogre::DataStreamPtr&, unsigned int*, long
unsigned int)
OgreMeshSerializerImpl.cpp:1724: warning: passing negative value `-10' for
converting 1 of `virtual void Ogre::DataStream::skip(long unsigned int)'
make[2]: *** [OgreMeshSerializerImpl.lo] Error 1
make[2]: Leaving directory `/home/nathan/cvs_repositories/ogrenew/OgreMain/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/nathan/cvs_repositories/ogrenew/OgreMain'
make: *** [all-recursive] Error 1

what am I doing wrong?
Nod51
Newcomer
 
Posts: 8
Joined: Thu Dec 09, 2004 4:35 am

Re: still can't compile...

Postby donmartio » Tue Dec 28, 2004 11:01 am

Nod51 wrote:I have tried to compile the CVS and I get this error:


what am I doing wrong?


There are two patches supplied from Bullfraqed on the previous page of this thread. One is the fix for your error. If you apply them ogre should compile.
User avatar
donmartio
Familiar face
 
Posts: 26
Joined: Tue Sep 28, 2004 10:11 am

sorry...

Postby Nod51 » Tue Dec 28, 2004 5:47 pm

I thought it didnt break anything in 32bit and you had applied the patch to the cvs for some reason.

*inserts foot back into mouth*
Nod51
Newcomer
 
Posts: 8
Joined: Thu Dec 09, 2004 4:35 am

Postby _mental_ » Thu Dec 30, 2004 12:13 am

@Nod51: try using the Hastur branch instead of CVS HEAD.
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby _mental_ » Thu Dec 30, 2004 12:14 am

donmartio wrote:I tried OgreMeshUpdate but it is aborted

I'll take a look into it. The changes for the amd64.patch could have something to do with the problem.
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby _mental_ » Thu Dec 30, 2004 6:20 am

Bullfraged wrote:now you mention it, I noticed I don't see a mesh in the CubeMapping demo

Now that I've finally got jpgs textures loading properly I can see what you mean. I'll take a look into it.
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby _mental_ » Sun Jan 02, 2005 4:42 am

I've figured out the mesh loading issues and will submit a patch once I've worked out some of the kinks. This will be applied against HEAD rather than Hastur since it will be an interface breaking change.
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby _mental_ » Sun Jan 02, 2005 6:35 am

Ok the invisible mesh fix is now in CVS HEAD.
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby _mental_ » Thu Jan 27, 2005 1:58 am

Anyone getting any other issues with AMD64?
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby donmartio » Thu Jan 27, 2005 11:28 am

I haven't tested it since last year. How is the status, shell i check out head? I may test it this evening.
User avatar
donmartio
Familiar face
 
Posts: 26
Joined: Tue Sep 28, 2004 10:11 am

Postby _mental_ » Thu Jan 27, 2005 4:25 pm

AMD64 support should be completely in so feel free to try it out.
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby donmartio » Thu Jan 27, 2005 8:39 pm

Heyho... ok as far as i can see everything works fine (all demos are running). The only problem that still exists is that i have to recompile libpng before i use ogre and remerge it before i shutdown. I tried to install the libpng-64 to an extra location and link the DevIL-LIBS to this version but that didn't work (actually i don't know why... may i'm doing something wrong).
But that doesn't matter at this moment.
Great work mental.
User avatar
donmartio
Familiar face
 
Posts: 26
Joined: Tue Sep 28, 2004 10:11 am

Postby donmartio » Fri Feb 11, 2005 8:30 am

Heyh ho,

just want to mention that everything is alright now.

Running Ogre from cvs with devil-1.6.7, libpng-1.2.8 and everything is working.

The problem with the libpng that i had is gone.

Now the Ogre can walk on an amd64... (many thanks to mental)

The only problem that is remaining is, i need more time to make the Ogre show my millions of gameideas on the screen....

But that is of topic i think...

Great work... great engine...

Greetings from
DonMartio
User avatar
donmartio
Familiar face
 
Posts: 26
Joined: Tue Sep 28, 2004 10:11 am

Postby Chandon » Sat Feb 12, 2005 12:29 am

I'm still stuck on "Function: png library error" when trying to run any of the samples. Is this fixed by the typedef hack in libpng? Is this actually a libpng bug that should be fixed there or what?

I'm running Debian-amd64 and installing a new, binary incompatible version of libpng seems like asking for trouble - I'd need to maintain *everything* from source if I did that.

Am I missing something?
Chandon
Newcomer
 
Posts: 5
Joined: Fri Feb 11, 2005 9:30 pm

Postby donmartio » Sat Feb 12, 2005 2:56 am

Sorry to say, but as far as i know you have to hack the pngconf.h.
I had the problem, that after i have patched the file, ogre runs fine but on restart kde didn't anymore.
This is somehow fixed on my gentoo system.
I don't know what kdedependent package have caused the problem but it's gone.

If i'm right you can install the patched libpng and if it doesn't work than apt-get the original (similiar to emerge again under gentoo).

Hope you get it running.

Greetings
DonMartio
User avatar
donmartio
Familiar face
 
Posts: 26
Joined: Tue Sep 28, 2004 10:11 am

Postby Chandon » Sat Feb 19, 2005 4:35 am

Hmm... It would make sense that when you re-emerge everything gentoo would work fine - changing the libpng header file actually changes the interface, but it doesn't matter if you recompile all the dependant stuff from source.

So at this point I can do one of:
- Wait for the bug to be fixed in whichever of Ogre or libpng is wrong and for new debian packages to be made for libpng if the problem is there.
- OR -
- Figure out how to install a custom version of libpng for Ogre.
Chandon
Newcomer
 
Posts: 5
Joined: Fri Feb 11, 2005 9:30 pm

Postby _mental_ » Sat Feb 19, 2005 6:03 am

I think I'll post to the debian amd64 list about this issue with libpng. In the meantime you could try the following if you don't want to alter pngconf.h

_mental_ wrote:png_get_IHDR seems to be the offending function. When I removed that and used png_get_image_width, png_get_image_height, png_get_bit_depth and png_get_color_depth instead it started working to a point. Since this solution doesn't really solve the underlying problem I'm reluctant to call it a fix. Anyway this change was done in DevIL's il_png.c.
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby Chandon » Sun Mar 06, 2005 2:24 am

Has any progress been made on this?

Even if I can get Ogre to run by modifiying other libraries (libpng, devil), I can't really write software using it unless it plays nicely with the standard binary packages of libraries that it depends on.

Is this a devil bug?
Chandon
Newcomer
 
Posts: 5
Joined: Fri Feb 11, 2005 9:30 pm

Postby quadfour » Sun Mar 13, 2005 1:18 pm

Since I started this thread, seems fitting that I would *bump* it.

Any news on libpng or devil?
quadfour
Newcomer
 
Posts: 9
Joined: Wed Nov 10, 2004 4:22 am

Postby _mental_ » Sun Mar 13, 2005 7:29 pm

Sorry I must have missed the last post. No news yet. Personally I think the best solution atm is to modify devil. I already run a custom version of devil anyway since I have a few patches that I apply to it to get it to work properly on Linux anyway. I'll post here when I have an update.
User avatar
_mental_
OGRE Team Member
OGRE Team Member
 
Posts: 983
Joined: Mon Jan 27, 2003 11:51 pm
Location: The Woodlands, TX

Postby Chandon » Tue Mar 15, 2005 8:36 pm

_mental_: Could you post a tarball of your "devil-linux-amd64" sources?
Chandon
Newcomer
 
Posts: 5
Joined: Fri Feb 11, 2005 9:30 pm

PreviousNext

Return to Help

Who is online

Users browsing this forum: Chris Jones, NQ and 9 guests