First Last Prev Next    No search results available      Search page      Enter new bug
Bug#: 83306
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Gentoo Games <games@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Matthew Gates <matthewg42@yahoo.co.uk>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
ogre-1.0.0.ebuild Provisional ebuild for the new version of dev-games/ogre (1.0.0) text/plain Matthew Gates 2005-02-25 13:49 0000 1.39 KB Details
cegui-0.2.0.ebuild Crazy Eds Gui ebuild (version 0.2.0) text/plain Mark <Line72> Dillavou 2005-02-27 12:54 0000 750 bytes Details
1.2.8-long.patch patch for libpng (only amd64 version needs this patch!) text/plain Mark <Line72> Dillavou 2005-02-27 12:55 0000 424 bytes Details
1.6.7-configure.patch patch for amd64 only to link against patch libpng text/plain Mark <Line72> Dillavou 2005-02-27 12:55 0000 479 bytes Details
ogre-1.0.0.ebuild ogre-1.0.0.ebuild text/plain Michael Kedzierski 2005-03-19 20:03 0000 3.36 KB Details
ogre-1.0.0.ebuild ogre-1.0.0.ebuild text/plain Michael Kedzierski 2005-03-20 20:22 0000 3.41 KB Details
ogre-1.0.0.ebuild ogre-1.0.0.ebuild text/plain Michael Kedzierski 2005-03-21 22:57 0000 3.41 KB Details
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 83306 depends on: 83603 85971 Show dependency tree
Bug 83306 blocks:
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2005-02-25 07:35 0000
Ogre has reached version 1.0.0.  Compiled cleanly on my system once the
dependencies were satisfied (zziplib required - new dependency?).

Reproducible: Always
Steps to Reproduce:





I'm reading up on how to make an ebuild, but I've not done one before, so it
might be quicker for someone else to do it!

------- Comment #1 From Matthew Gates 2005-02-25 13:49:45 0000 -------
Created an attachment (id=52154) [details]
Provisional ebuild for the new version of dev-games/ogre (1.0.0)

This is the first ebuild I have submitted, so beware!  Compiles and installs
against stable versions of dependencies (specifically libglademm-2.0.1 was used
by adding "dev-games/ogre ~x86" to /etc/portage/portage.keywords).  Provisional
tests (compiling my ogre test project against the ebuilt libs) worked OK, but
it's really a trivial example, so YMMV. 

------- Comment #2 From Mark <Line72> Dillavou 2005-02-27 12:53:14 0000 -------
The gui system in ogre has changed and it no longer provides its own.  It now
uses Crazy Eds Gui (CEGui) from ( http://www.cegui.org.uk ).  I've attached a
cegui ebuild.

Also, there are several issues for getting this to work under amd64.  I have
included a patch for libpng-1.2.8.  I have also included a patch for
DevIL-1.6.7.  The biggest issue here, is after libpng is re-installed with this
patch, everything that is built using libpng MUST be recompiled (gtk+, etc,
etc) or the programs will crash!  A lot of this issue has been discussed here:

http://www.ogre3d.org/phpBB2/viewtopic.php?t=6624&start=50&postdays=0&postorder=asc&highlight=&sid=36f88eef6934a85e0c7d84cae84c1e7a

I also had trouble building ogre-1.0 with gtk+ support.  For some reason I
would get a segfault everytime I ran an ogre demo.  It does work fine without
gtk+ (just uses sdl).  The above ebuild doesn't currently check for that.

Also, the current nvidia-cg-toolkit ebuild does not work for amd64.  There is
now an amd64 version of cg available on nvidia's website (
http://developer.nvidia.com/object/cg_toolkit.html ).  The cg ebuild should
download and install the correct version.

------- Comment #3 From Mark <Line72> Dillavou 2005-02-27 12:54:34 0000 -------
Created an attachment (id=52259) [details]
Crazy Eds Gui ebuild (version 0.2.0)

------- Comment #4 From Mark <Line72> Dillavou 2005-02-27 12:55:15 0000 -------
Created an attachment (id=52260) [details]
patch for libpng (only amd64 version needs this patch!)

------- Comment #5 From Mark <Line72> Dillavou 2005-02-27 12:55:43 0000 -------
Created an attachment (id=52261) [details]
patch for amd64 only to link against patch libpng

------- Comment #6 From Mr. Bones. 2005-02-27 14:00:41 0000 -------
file individual bugs for libpng and cegui and mark this bug as depending on
them please.

------- Comment #7 From Mark <Line72> Dillavou 2005-02-28 13:43:55 0000 -------
I've filed indiviual bug reports for libpng: bug 83602 and devil: bug 83603

------- Comment #8 From Pablo Trabajos 2005-03-06 08:55:10 0000 -------
Mark: you put the errors as blockers, not as dependendants.

Also I want to know how can i guess what packages depend upon libpng.

And if that patch might affect in a negative way any other package.

------- Comment #9 From Mark <Line72> Dillavou 2005-03-06 10:29:37 0000 -------
The only programs I've recompiled are:
gtk+
imlib

That fixed more gtk+ programs
I've also had to recompile gimp.

The only program I'm having trouble with is galeon.  For some reason, it won't show all .png files.  It's possible that I haven't rebuilt everything it depends on.  I don't have qt or any qt based programs installed, so I don't know what need to be rebuilt for them.

------- Comment #10 From Pablo Trabajos 2005-03-06 15:18:48 0000 -------
Ok, it has "nvidia-cg-toolkit" as a dependency (marked ~amd64). So i emerge it
but then ogre outputs this error:
checking for cgCreateProgram in -lCg... no
configure: error:
        ****************************************************************
        * You do not have the nVidia Cg libraries installed.           *
        * Go to http://developer.nvidia.com/object/cg_toolkit.html     *
        * (Click on Cg_Linux.tar.gz).                                  *
        * You can disable the building of Cg support by providing      *
        * --disable-cg to this configure script but this is highly     *
        * discouraged as this breaks many of the examples.             *
        ****************************************************************

!!! Please attach the config.log to your bug report:
!!! /var/tmp/portage/ogre-1.0.0/work/ogrenew/config.log

!!! ERROR: dev-games/ogre-1.0.0 failed.
!!! Function econf, Line 485, Exitcode 0
!!! econf failed
!!! If you need support, post the topmost build error, NOT this status message.

------- Comment #11 From Mark <Line72> Dillavou 2005-03-06 16:10:30 0000 -------
The nvidia-cg-toolkit in portage doesn't work correctly on amd64.  It downloads
the 32-bit binaries instead of the 64-bit ones which are now available on the
website.  When building ogre in 64-bits, you can't link against the 32-bit cg
library.

You can get the 64-bit version of cg from here
(ftp://download.nvidia.com/developer/cg/Cg_1.3/Linux64/Cg-1.3.0501-0700.x86_64.tar.gz
) and manually install it.

------- Comment #12 From Pablo Trabajos 2005-03-07 00:52:31 0000 -------
I made a ebuild for cg (just take an older one and corrected the SRC_URI and
the dolib path).
Compiled fine but only three executables are created:
   usr/bin/OgreXMLConverter
   usr/bin/OgreMeshUpgrade
   usr/bin/OgreMaterialUpgrade

Is it normal? Sorry, but i'm very new to ogre and espected a main executable.

------- Comment #13 From Mark <Line72> Dillavou 2005-03-07 04:27:03 0000 -------
yes, Ogre is a game library.  It should create those 3 executables, these
libraries:
/usr/lib/libOgreMain.so.5.0.0
/usr/lib/libOgreMain.so.5 -> libOgreMain.so.5.0.0 1109537410
/usr/lib/libOgreMain.so -> libOgreMain.so.5.0.0 1109537410
/usr/lib/libOgreMain.la
/usr/lib/libOgrePlatform.so
/usr/lib/libOgrePlatform.la
/usr/lib/OGRE
/usr/lib/OGRE/Plugin_BSPSceneManager.so
/usr/lib/OGRE/Plugin_BSPSceneManager.la
/usr/lib/OGRE/Plugin_ParticleFX.so
/usr/lib/OGRE/Plugin_ParticleFX.la
/usr/lib/OGRE/Plugin_OctreeSceneManager.so
/usr/lib/OGRE/Plugin_OctreeSceneManager.la
/usr/lib/OGRE/Plugin_CgProgramManager.so
/usr/lib/OGRE/Plugin_CgProgramManager.la
/usr/lib/OGRE/RenderSystem_GL.so
/usr/lib/OGRE/RenderSystem_GL.la
/usr/lib/libCEGUIOgreRenderer.so.0.0.0
/usr/lib/libCEGUIOgreRenderer.so.0 -> libCEGUIOgreRenderer.so.0.0.0 1109537410
/usr/lib/libCEGUIOgreRenderer.so -> libCEGUIOgreRenderer.so.0.0.0 1109537410
/usr/lib/libCEGUIOgreRenderer.la

and a lot of c++ header files.

------- Comment #14 From Pablo Trabajos 2005-03-07 05:39:05 0000 -------
Ok, i somewhat misunderstood the concept of ogre and though it was something
like blender or maya (i mean editors + render + ... with pretty gui)

In the meantime I'd submitted a new ebuild for nvidia-cg (bug #75792).

------- Comment #15 From Matt Anderson 2005-03-12 09:17:50 0000 -------
This ebuild does not produce libOgrePlatform.[so|la] for me.  The previous <
1.0.0 builds in portage do however work fine.  I looked through this ebuild
compared to the builds in portage and dont see any reason why this would be. 
Output durring merge to file system is

prepallstrip:
strip: strip --strip-unneeded
strip: strip --strip-unneeded
   usr/bin/OgreMaterialUpgrade
   usr/bin/OgreMeshUpgrade
   usr/bin/OgreXMLConverter
   usr/lib/libOgreMain.so.5.0.0
   usr/lib/libCEGUIOgreRenderer.so.0.0.0
making executable: /usr/lib/libCEGUIOgreRenderer.so.0.0.0
making executable: /usr/lib/libOgreMain.so.5.0.0
>>> Completed installing ogre-1.0.0 into /var/tmp/portage/ogre-1.0.0/image/

 ...done!
>>> emerge (1 of 1) dev-games/ogre-1.0.0 to /
>>> md5 src_uri ;-) ogre-linux_osx-v1-0-0.tar.bz2
>>> Merging dev-games/ogre-1.0.0 to /
--- /usr/
--- /usr/bin/
>>> /usr/bin/OgreMaterialUpgrade
>>> /usr/bin/OgreMeshUpgrade
>>> /usr/bin/OgreXMLConverter
--- /usr/include/
>>> /usr/include/OGRE/
--snip, bunch of headers
--- /usr/lib/
>>> /usr/lib/OGRE/
>>> /usr/lib/libCEGUIOgreRenderer.la
>>> /usr/lib/libOgreMain.la
--- /usr/lib/pkgconfig/
>>> /usr/lib/pkgconfig/OGRE.pc
>>> /usr/lib/libOgreMain.so.5.0.0
>>> /usr/lib/libCEGUIOgreRenderer.so.0.0.0
>>> /usr/lib/libOgreMain.so.5 -> libOgreMain.so.5.0.0
--- /usr/share/
>>> /usr/share/OGRE/
>>> /usr/share/OGRE/Media/
--- /usr/share/doc/
>>> /usr/share/doc/ogre-1.0.0/
>>> /usr/share/doc/ogre-1.0.0/AUTHORS.gz
>>> /usr/share/doc/ogre-1.0.0/BUGS.gz
>>> /usr/share/doc/ogre-1.0.0/LINUX.DEV.gz
>>> /usr/share/doc/ogre-1.0.0/README.gz
>>> /usr/share/doc/ogre-1.0.0/README.linux.gz
>>> /usr/share/doc/ogre-1.0.0/html/
>>> /usr/share/doc/ogre-1.0.0/html/ChangeLog.html
>>> /usr/share/doc/ogre-1.0.0/html/FAQ.html
>>> /usr/share/doc/ogre-1.0.0/html/License.html
>>> /usr/share/doc/ogre-1.0.0/html/ReadMe.html
>>> /usr/share/doc/ogre-1.0.0/html/ContributorLicenseAgreement.html
>>> /usr/lib/libCEGUIOgreRenderer.so -> libCEGUIOgreRenderer.so.0.0.0
>>> /usr/lib/libOgreMain.so -> libOgreMain.so.5.0.0
>>> /usr/lib/libCEGUIOgreRenderer.so.0 -> libCEGUIOgreRenderer.so.0.0.0
>>> dev-games/ogre-1.0.0 merged.
>>> Recording dev-games/ogre in "world" favorites file...

so of cource OGRE samples give since libOgrePlatform.so is missing:

Creating resource group General
Registering ResourceManager for type Material
Registering ResourceManager for type Mesh
Registering ResourceManager for type Skeleton
Loading library libOgrePlatform.so
An exception has occured: An exception has been thrown!

-----------------------------------
Details:
-----------------------------------
Error #: 9
Function: DynLib::load
Description: Could not load dynamic library libOgrePlatform.so.  System Error:
libOgrePlatform.so: cannot open shared object file: No such file or directory.
File: OgreDynLib.cpp
Line: 82


I have tried unmerging and remerging, ensure all previous versions are unmerged
before using this ebuild.  If I compile from source by hand it works out fine. 
I would really like to see this verson in portage though

------- Comment #16 From Mark <Line72> Dillavou 2005-03-14 06:51:55 0000 -------
What happens if you emerge ogre-1.0 twice in a row?  Does it build
libOgrePlatform the second time ?

------- Comment #17 From Michael Kedzierski 2005-03-19 20:00:16 0000 -------
I have updated the cegui ebuild and filed it under a new bug #85971

------- Comment #18 From Michael Kedzierski 2005-03-19 20:03:18 0000 -------
Created an attachment (id=53911) [details]
ogre-1.0.0.ebuild

I've updated the ogre 1.0.0 ebuild.
Additionally, I've tested it on both amd64 (my libpng is patched) and x86 and
it seems to work.

I seem to be unable to obsolete the previous ebuild...

------- Comment #19 From Michael Kedzierski 2005-03-20 20:22:08 0000 -------
Created an attachment (id=54018) [details]
ogre-1.0.0.ebuild

I've fixed the bug where libOgrePlatform.so doesn't get built.

It seems that Ogre uses an old version of libtool, which has issues when you
try to run a "make install" with DESTDIR as gentoo does. Running a "libtoolize
--force" over Ogre installs the new version and fixes the problem.

This seems to be a really common problem, I've seen it occur over many
packages, and it was surprisingly difficult to find out information as to what
was causing it.

------- Comment #20 From Michael Kedzierski 2005-03-21 22:57:27 0000 -------
Created an attachment (id=54131) [details]
ogre-1.0.0.ebuild

Heh, I've just discovered the existence of the libtool eclass, and elibtoolize.


Fixed.

------- Comment #21 From Paul Sprakes 2005-03-31 12:11:26 0000 -------
The cegui ebuild wouldn't compile for me. Configure complained about libILU not
being present (I had devil 1.6.6-r2 installed). Unmasking and upgrading to
1.6.7 sorted it so maybe it should depend on this version?

------- Comment #22 From Michael Kedzierski 2005-04-02 05:18:25 0000 -------
It works fine for me on devil-1.6.6, were you using the ebuild in this bug or
the ebuild in bug #85971? (in the case of the latter you should have commented
there, not here)

------- Comment #23 From Paul Sprakes 2005-04-02 06:56:22 0000 -------
I used the cegui ebuild included with this report (I didn't notice bug 85971
earlier). The problem was that the original devil install didn't seem to have
created the ILU symlinks but the masked 1.6.7 did. Maybe it was just a one off
or something.

When I get time I'll start over with the correct cegui ebuild stable devil.

------- Comment #24 From Guido Imperiale 2005-04-25 14:59:52 0000 -------
I've tried to apply your ebuild to version 1.0.1, but compilation fails against
openexr-1.0.7:

In file included from O_IStream.cpp:25:
O_IStream.h:29:22: ImfInt64.h: No such file or directory
O_IStream.h:30:19: ImfIO.h: No such file or directory

Upgrading to openexr-1.2.2 fixes the problem.

------- Comment #25 From Guido Imperiale 2005-04-25 15:00:53 0000 -------
Also with ogre-1.0.1, I can't compile it against GTK:

 i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../../../../OgreMain/include -I../../../../RenderSystems/GL/include -I../../../../OgreMain/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -I/usr/include/gtkglextmm-1.0 -I/usr/lib/gtkglextmm-1.0/include -I/usr/include/gtkglext-1.0 -I/usr/include/gtkmm-2.0 -I/usr/lib/gtkmm-2.0/include -I/usr/lib/gtkglext-1.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/sigc++-1.2/include -I/usr/include/sigc++-1.2 -I/usr/include/atk-1.0 -I../../../../PlatformManagers/gtk/include -I../../../../RenderSystems/GL/include/gtk -I../../../../RenderSystems/GL/src/gtk -O3 -pipe -march=athlon-xp -fforce-addr -fomit-frame-pointer -falign-functions=4 -mfpmath=sse -MT OgreGTKWindow.lo -MD -MP -MF .deps/OgreGTKWindow.Tpo -c OgreGTKWindow.cpp  -fPIC -o .libs/OgreGTKWindow.o
OgreGTKGLSupport.cpp: In member function `virtual Ogre::RenderWindow*
   Ogre::GTKGLSupport::createWindow(bool, Ogre::GLRenderSystem*, const
   Ogre::String&)':
OgreGTKGLSupport.cpp:112: error: no matching function for call to `
   Ogre::GLRenderSystem::createRenderWindow(const std::basic_string<char,
   std::char_traits<char>, std::allocator<char> >&, unsigned int&, unsigned
   int&, int, bool&)'
../../../../RenderSystems/GL/include/OgreGLRenderSystem.h:185: error: candidates
   are: virtual Ogre::RenderWindow*
   Ogre::GLRenderSystem::createRenderWindow(const Ogre::String&, unsigned int,
   unsigned int, bool, const Ogre::NameValuePairList*)
OgreGTKGLSupport.cpp: In member function `Ogre::RenderWindow*
   Ogre::GTKGLSupport::newWindow(const Ogre::String&, unsigned int, unsigned
   int, unsigned int, bool, int, int, bool, Ogre::RenderWindow*, bool)':
OgreGTKGLSupport.cpp:125: error: cannot allocate an object of type `
   Ogre::GTKWindow'
OgreGTKGLSupport.cpp:125: error:   because the following virtual functions are
   abstract:
../../../../OgreMain/include/OgreRenderWindow.h:87: error:      virtual void
   Ogre::RenderWindow::create(const Ogre::String&, unsigned int, unsigned int,
   bool, const Ogre::NameValuePairList*)
make[4]: *** [OgreGTKGLSupport.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory `/var/tmp/portage/ogre-1.0.1/work/ogrenew/RenderSystems/GL/src/gtk'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/ogre-1.0.1/work/ogrenew/RenderSystems/GL/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/ogre-1.0.1/work/ogrenew/RenderSystems/GL'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/ogre-1.0.1/work/ogrenew/RenderSystems'
make: *** [all-recursive] Error 1

------- Comment #26 From Guido Imperiale 2005-04-26 11:02:08 0000 -------
The GLX renderer is broken, too: everything compiles fine, but when I launch a
test application I just get a black screen, with no particular errors. 

The SDL renderer does work.

------- Comment #27 From SpanKY 2005-05-03 15:19:37 0000 -------
ive cleaned up the ebuild and the autotools stuff (i'll be sending the fixes
upstream)

please sync up and check out the ebuild that's in portage now

------- Comment #28 From SpanKY 2005-05-21 18:11:34 0000 -------
1.0.1 is in portage

First Last Prev Next    No search results available      Search page      Enter new bug