Как я могу создать один проект Visual Studio, который смешивает C и C ++, используя CLR? - PullRequest
4 голосов
/ 06 октября 2011

Я работаю над переносом кода, который построен на GCC в Unix, на окна с использованием Visual Studio 2008. Я хотел бы создать один исполняемый файл, который не зависит от каких-либо библиотек (dll) моего собственного создания и только встроен воперационная система Windows.

Мой код включает zlib, который сам включает в себя файлы C, которые я могу собрать и точно связать с моим исполняемым файлом Unix.

В моих первых попытках сборки возникла первая ошибказаключается в том, что код C из zlib не может быть собран с помощью CLR, поскольку это не C ++.

Я вижу, что некоторые предлагают разбить это на отдельную DLL, которая будет связана с моим исполняемым файлом, но я бы хотел избежатьсложность разделяемых библиотек, если это возможно.(Возможно, это предотвращение еще более сложно?)

Есть ли способ смешать мой C ++ с кодом C zlib в один исполняемый файл с CLR?

Моя текущая ошибка сборки следующая:

1>cl : Command line error D8045 : cannot compile C file '..\src\zlib-1.2.5\zutil.c' with the /clr option

1 Ответ

3 голосов
/ 06 октября 2011

Вы можете изменить его на cpp, чтобы компилировать его компилятором C ++ (и исправлять любые возникающие ошибки компиляции). Это может быть сложнее, чем использование общей библиотеки (dll).

...