On Tue, 2009-06-30 at 00:24 -0700, Shefali Dutta wrote:
> Hello,
> I am stuck up again. Below are the details of the steps that I am following
> and the error that I am getting in syncevolution beta 2 release.
>
> I am using libsynthesis_3.2.0.27 and syncevolution-0-9-beta2 version.
>
> If I configure, make and install libsynthesis first and then run the
> configure script of syncevolution, it shows error: " checking for
> "synthesis"... Package synthesis was not found in the pkg-config search path.
> Perhaps you should add the directory containing `synthesis.pc' to the
> PKG_CONFIG_PATH environment variable No package 'synthesis' found
> configure: error: Library requirements ("synthesis") not met; consider
> adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a
> nonstandard prefix so pkg-config can find them."
>
> Installation of synthesis does not form any .pc file.
That hasn't been added yet. The alternative is to use the
SYNTHESIS_CFLAGS and SYNTHESIS_LIBS environment variables (configure
--help lists those). But I suspect that the following error will still
occur:
> In case I use the --with-synthesis-src option when configuring syncevolution
> rather than compiling synthesis separately, it shows an error on compiling:
> "In function `sysync::UI_Disconnect(sysync::SDK_InterfaceType*, void*)':
> /home/icf/shefali/libsynthesis/libsynthesis_3.2.0.27/src/sysync_SDK/Sources/UI_util.cpp:188:
> undefined reference to `SySync_DisconnectEngine'"
>
> SySync_DisconnectEngine is although present in synthesis-linker.map
Are you building shared objects or static libraries? I typically do the
later (easier for debugging, because gdb loads all relevant symbols
directly), but both should work (Moblin binaries use shared objects).
You can switch to static libs with --disable-shared.
In such a build I get:
$ nm build-synthesis/src/.libs/libsynthesis.a | grep
SySync_DisconnectEngine
0000000000000ace T SySync_DisconnectEngine
$ nm build-synthesis/src/.libs/libsynthesissdk.a | grep
SySync_DisconnectEngine
U SySync_DisconnectEngine
The hard dependency on SySync_DisconnectEngine (and I suspect, also
SySync_ConnectEngine - do you also get that?) is a result of compiling
the SDK so that it has to be linked to the engine directly:
#ifdef DBAPI_LINKED
fDisconnectEngine= SYSYNC_EXTERNAL(DisconnectEngine);
#endif
This is what is enabled on Linux because it integrates more nicely with
packaging (f.i., dependency on the right engine .so can be found
automatically by the build tools).
Perhaps this gives you an idea why it fails to link for you?
Did the previous mail help? If there's anything that we can do to make
the compilation less error-prone or easier, then please feel free to
share your thoughts and suggestions. It really shouldn't be that
hard :-/
--
Best Regards, Patrick Ohly
The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.
_______________________________________________
os-libsynthesis mailing list
[email protected]
http://lists.synthesis.ch/mailman/listinfo/os-libsynthesis