Hi Manju,
On Fri, 2005-03-04 at 17:33 -0500, Manjunath Sripadarao wrote:
> Hi,
>
> 1. I am having a networking deadlock in the cluster. I am trying to
> port OpenSG to sepia 3, in this sepiaInit() which is called in
> OSGSepiaComposer.cpp:SepiaComposer::open(). The sepiaInit() in sepia 3
> is a blocking call, it doesn't proceed until all the servers have
> connected to it.
> In OpenSG, my server seems to get to acceptClient() in
> OSGClusterServer.cpp:ClusterServer::start() and then hangs there and
> the client hangs in sepiaInit() (in
> OSGSepiaComposer.cpp:SepiaComposer::open()). The server does not
> proceed and the client does not proceed, is there any fix ? The idea
> is that client and server need to connect over sepia first and then
> connect over the ethernet link.
I have to pass on that. Marcus?
> 2. What changes are needed to build the OSGSepiaComposer as a separate
> libOSGSepia.so instead of including it in the libOSGSystem.so ? I am
> unable to find where libs to be built are specified, any clarification
> would be appreciated. It takes a really long time for sepia to link
> libOSGSystem on the machine I am working on. Making the sepia lib into
> a separate lib would help me solve the issue.
Creating a new lib is not that hard, but it's not totally integrated
(osg-config won't know about it).
You need to remove the directory in question from
CommonConf/common.libs.in. Then you need to put a common.libs.in file
into the directory (see attachment) and reconfigure. It will create
directories for the Sepia lib in Builds/*, and you can compile and link
it.
The alternative is to temporarily put the directory into a smaller lib
in CommonConf/common.libs.in (like WindowGLUT), and move it back once it
works.
After any change to the common.libs.in files you need to reconfigure or
they won't have any effect.
Hope it helps
Dirk
--
Dirk Reiners <[EMAIL PROTECTED]>
# Add a new library to the system
# Let the configure system know about the new library
ac_gdz_packages="${ac_gdz_packages} Sepia"
# and when to work on it
ac_gdz_package_order="${ac_gdz_package_order} Sepia"
# Now define the specs and needs of the new library
# First the name
ac_gdz_package_name_Sepia="Sepia"
# and the #define needed for Windows compilation
ac_gdz_package_def_Sepia="OSG_COMPILESEPIALIB"
# Define whether the library needs factory initialisation. All but the Base
# library will
ac_gdz_package_fact_init_Sepia="1"
# Which directories should be linked together to get the new library
# Note that every name needs to be ended by a @
ac_gdz_package_dirs_Sepia="System/Cluster/Window/SortLast@"
# Which other directories are needed for inclusion to compile this library.
# The @name@ variables refer to other system libraries resp. the directories
# they are made of. External libraries like OpenGL and QT have their own
# shorthand notation. The actual pathes are taken from the configure options or
# test results.
ac_gdz_package_inc_dep_Sepia="@Base@ @System@ GL"
# Which directories are needed for linking the library
ac_gdz_package_link_dep_Sepia="SystemLib BaseLib"
# Which additional directories/libraries are needed for compiling/linking the
# test programs
ac_gdz_package_testinc_dep_Sepia="WindowSystem/GLUT GLUT"
ac_gdz_package_testlink_dep_Sepia="GL GLUT WindowGLUTLib"