Ignacio GarcĂ­a wrote:
Same happened to me (linking), looking at the task manager it happened when
I run out of physical memory (seems it builds the .lib in memory, and when
there was no more left, crashed). It seemed that mem-file that found "disk
full", and not your HD.
But I solved it somehow. I remember something about a not-well-documented
linker parameter, where I specified that memfile size request, up to 2GB for
linking some osgXXX.libs. But I can't remember that option name, and google
hasn't helped me.
But as some users prefer static linking, maybe different project
architecture should be used just for that linkage. Having several projects
leading to several DLLs is useful for dynamic linkage, but it leads to
thousands of linker warnings when building OSG (same symbols found in many
libs) because the libs uses each other, and that also increases the size of
the libs (the biggest debug libs reached 900MB in my last static build).

  I think you guys missed a critical step that is then causing you much grief.

I don't think the wiki page mentions it, it is newly-required, since the introduction of standard "static" targets in the DSP files.

The step is: You must remove the dependencies between libraries. It seems that the IDE, when it sees a library dependency, automatically links that library in for you. You do not want this to happen, as you do NOT want each .lib to incorporate all of the code of all the other .libs it uses. At final EXE link time, all libs will be combined anyway, and these linkages resolved.

  Doing this step should solve the problem of massive .libs, linker crashes, 
etc.

Has anybody tried building a single project including osg, osgGA, osgDB...,
all the core projects? Maybe the namespaces used avoid conflicts with names,
and a complete OSG.lib can be built, much smaller than the separate libs and
without the problem of symbols repetition of those separate libs.

  None of that is necessary if you follow the step above.


I'm hoping that someone who does this process will update the Wiki page. I haven't had to go through with it very recently, and I'd like it to be updated by someone right after they've done the sequence and remember the steps and details they had to do.

Ignacio Garcia

--
Chris 'Xenon' Hanson aka Eric Hammil | http://www.3DNature.com/ eric at logrus
 "I set the wheels in motion, turn up all the machines, activate the programs,
  and run behind the scenes. I set the clouds in motion, turn up light and 
sound,
  activate the window, and watch the world go 'round." -Prime Mover, Rush.
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to