2015-11-01 3 views
0

Я знаю, что Cygwin - это интерфейс Windows для Linux, но есть ли интерфейс Linux для Windows.C++ linux интерфейс для Windows?

Если я использую интерфейс Linux для Windows, как только библиотека построена на этом интерфейсе, его можно использовать для создания проектов в Windows?

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

Благодаря

+0

Вы можете посмотреть https://www.reactos.org. Это платформа с открытым исходным кодом платформы Windows. Вы можете использовать свои заголовки и библиотеки с помощью кросс-компилятора, размещенного в Linux, который предназначен для Windows и проверяет ваши двоичные файлы с помощью Wine. Никаких обещаний относительно того, будет ли это работать для вашего конкретного приложения. –

ответ

1

Cygwin не является "интерфейс для Windows для Linux" сами по себе. Это набор библиотек эмуляции, инструменты и оболочка bash, которые позволяют перекомпилировать и запустить существующий код Unix/Linux в Windows. Приложения, скомпилированные как EXE в Cygwin, обычно могут быть перераспределены на другие компьютеры Windows, просто включив встроенный EXE и некоторое подмножество DLL Cygwin в один и тот же каталог установки.

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

+0

Спасибо, Андрей. Это довольно хорошее объяснение Cygwin. Я начинаю задаваться вопросом, есть ли что-нибудь, что эти модераторы не откладывают. Stackoverflow, похоже, отказывается от того, чтобы быть настоящим форумом для того, чтобы быть и над сайтом полиции. Еще раз спасибо за вашу помощь, я посмотрю на это. – domonica

+0

Добро пожаловать в Stack Overflow @domonica. Ваш вопрос, вероятно, был приостановлен по следующим причинам: 1. Обращался с просьбой об общей помощи к двусмысленной проблеме получения кода для компиляции. * «Я ищу решение для множества ошибок сборки ...» * недостаточно. 2. Ваше название по вашему вопросу не соответствует тому, что вы действительно задавали. Вместо того, чтобы говорить * «Linux-интерфейс C++ для Windows» *, вы могли бы назвать его ** «Код переноса неполадок с Linux на Windows» **, а затем упомянули, если Cygwin был вариантом в вопросе как решение в более широком смысле , – selbie

+0

Представьте, что ваш вопрос был сформулирован следующим образом: «Я пытаюсь включить исходные файлы libWhatever в мой проект Windows Visual Studio. Проблема в том, что я получаю много ошибок сборки, таких как: Как мне обходить эти типы ошибок? Или я должен использовать другой подход, чтобы этот код, как правило, предназначался для Linux для компиляции и работы в Windows? Я слышал о Cygwin - это поможет? * « – selbie

Смежные вопросы