List Info

Thread: Re: Modifying ribosome




Re: Modifying ribosome
country flaguser name
Germany
2007-07-11 08:11:34
Greg Wright schrieb:

> You need to add a new entry to the BIF file you are
using. I will assume,
> for this discussion, that you are using the following
branch:
> 
>    hxclient_1_5_0_cayenne

I do.

> In that case the 'BIF' file you are using is
hxclient_1_5_0_cayenne.bif and
> it can be found in your ribosome/build/bif-cvs
directory. It will be in
> some sub directory of there. Go take a look at it, it
is XML. For each
> DLL or library built there is an entry for it that
describes where it is
> at and for what platforms it is built. Now, take a look
at the 'splay'
> entry. You will see it lists a bunch of dependencies.
This is how
> ribosome knows what source code to check out and what
DLLs/libs to build.
> Just add a new entry for your lib and also add your new
entry as a
> dependency to splay or whatever makes sense. After
that, when you run

I did. That worked!

> ribosome, it will know to check out your code (which
may be a problem
> since your code is not checked in), build it and then
be able to link
> against it.

Checking out wasn't a problem. At least there is no error in
build.out. 
After doing what you said my library is built and linked
against that 
projects where I added the dependency explicitely. Yippie!

Now I run into another problem: I modified a file in
common/util to use 
my library and altered Umakefil and bif. After that every
project using 
utillib.lib complains about unresolved externals of my
functions.

I don't think that I have to add my lib as dependency for
each project 
using utillib.


Here are the questions:

How do I tell ribosome to link against my library each time
i.e. utillib 
ist needed?

How do I tell ribosome _not_ to link against my library when
it is 
already done. I get errors like

utillib.lib(hxurlrep.obj) : error LNK2005: "private:
static class 
MyStuff::My_Helper * MyStuff::My_Helper::_instance" 
(?_instanceMy_HelperMyStuff0PAV12A)
already defined in 
rtsplib.lib(rtspbase.obj)

when building client/core, where I put mylib as dependency
module in 
Umakefil.

Summarizing: Modules only using mylib (i.e. splay) build
without 
problems. Utillib builds, too. Modules using utillib fail
with 
unresolved external. Modules using utillib and mylib fail
because of 
double definitions.


Do you have any suggestion where to search for the error?

Thanks for your help,

Gregor

_______________________________________________
Helix-client-dev mailing list
Helix-client-devhelixcommunity.org
http://lists.helixcommunity.org/mailman/listinf
o/helix-client-dev

[1]

about | contact  Other archives ( Real Estate discussion Medical topics )