[CELT-dev] Visual Studio support

Gregory Maxwell gmaxwell at gmail.com
Tue Jul 28 15:59:30 PDT 2009

On Tue, Jul 28, 2009 at 6:17 PM, John Dunn<John_Dunn at qscaudio.com> wrote:
> I'd like to add support for CELT in a C# application. To do so, I'd like to build CELT as a static library using VS which I would then wrap with C++/CLI so I can access the encode/decode funtionality from within C#. Is it possible to compile CELT using Visual Studio? The first issue I ran into was that VS doesn't support the 'restrict' keyword. It does have __restrict which appears to be slightly different - http://msdn.microsoft.com/en-us/library/5ft82fed(VS.80).aspx.

There is a regular in the CELT IRC channel who has a C# application
using CELT. His wrappers are available online, but I'm not sure if
thats his latest work. I'll prod him to come comment here when I see

As far as I can tell that page is stating that __restrict is the same
as C99 restrict. You should be able to #define it.  It can also be
defined as nothing: Restrict is an optional compiler hint for better

> If it's too much trouble to get it to compile with VS, are there any prebuilt .lib files availble?
> The celt_060_tools_win32.zip contains a libcelt-0.dll but it's out of date ( and I don't have the
> corresponding .def file ).

Thanks for the reminder to rebuild the windows binaries.

As far as the ".def" files goes, I have no clue what those are.
libcelt-0.dll is built with mingw32, which has the nice quality of
being available to us Linux developers as well as the advantage of
keeping things on our primary tool-chain (GCC).  Perhaps the
previously mentioned wrapper includes one.

More information about the celt-dev mailing list