[Miwi-middleware] Fast CDR Buffer Integration

Dmitri Rubinstein rubinstein at cs.uni-saarland.de
Fri Jan 17 15:08:48 CET 2014


Short update:

Ricardo added missing files and I updated build system so everything 
compiles on 64-bit Linux. I pushed it to fastcdr branch on ZHAW server.

However, I now have a big problem on Windows. It is not possible to 
compile FastCDR as LLVM bitcode on Windows because it uses too much of 
C++. Here is the description of the problem that I encountered:

http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-June/030327.html

This compilation problem is caused in FastCDR by using C++11 standard 
array header.

There are now two options:

1. No support for FastCDR on Windows. I will just deactivate building of 
it on Windows and that's all.

2. Check for some macro in FastCDR (e.g. BUILD_FOR_KIARA ?) and in the 
case it is defined don't use any C++ features that cause build to fail 
on Windows with clang.

Best,

Dmitri

P.S. I still need Rafaels integration code in order to proceed further 
with the integration.

On 01/17/14 12:53, Dmitri Rubinstein wrote:
> Hi,
>
> couple hours ago eProsima created fastcdr Repository on ZHAW server. So
> I started integration process. First steps are already done, I build
> fastcdr library and FastCDR_ResizeTest tool in native form (just for
> testing) and as LLVM bitcode (for integration) on Linux 64-bit.
>
> The integration is done on fastcdr branch in the KIARA Repository:
>
> gitor at dornbirn.zhaw.ch:kiara/kiara.git
>
> In order to work on integration follow the usual KIARA building
> instructions, then change directory to kiara and switch to the fastcdr
> branch.
>
> cd kiara
> git checkout fastcdr
>
> When you already have a working devenv environment, just update kiara:
> de update kiara --pull, and then switch to the fastcdr branch.
>
> Now start building by running de build kiara -j. KIARA build system will
> checkout fastcdr source code first. Then currently building will fail
> because one file is missing:
>
> src/third_party/fastcdr/include/eProsima_cpp/eProsima_auto_link.h
>
> @Ricardo: Please add this file ASAP.
>
> Fortunately you can just create an empty file by using touch:
>
> touch src/third_party/fastcdr/include/eProsima_cpp/eProsima_auto_link.h
>
> Restart build process: de build kiara -j
>
> When no errors appear you should be able to run FastCDR_ResizeTest
> program, which will print message:
>
> TEST SUCCESSFUL.
>
> Also you can run the same program in LLVM bitcode form:
>
> MCJIT:
> kiara-lli -use-mcjit -jit-enable-eh $(devenvGetModuleLIBPATH
> kiara)/FastCDR_ResizeTest_tool.bc
>
> JIT:
> kiara-lli -jit-enable-eh $(devenvGetModuleLIBPATH
> kiara)/FastCDR_ResizeTest_tool.bc
>
> I also took a short look on the code, and there might be a problem with
> the integration. Fast CDR Buffer library uses exceptions, which are not
> well supported by JIT and MCJIT. As long as they are not thrown it can
> possibly work, but when they are thrown KIARA library can be aborted
> immediately (especially on Windows).
>
> Best,
>
> Dmitri
> _______________________________________________
> Miwi-middleware mailing list
> Miwi-middleware at lists.fi-ware.eu
> https://lists.fi-ware.eu/listinfo/miwi-middleware




More information about the Miwi-middleware mailing list

You can get more information about our cookies and privacy policies clicking on the following links: Privacy policy   Cookies policy