Cygwin в Visual Studio

Я пытаюсь портировать старую программу, которую я записал для класса от KDev в Ubuntu к использованию Windows Visual Studio 2008 Cygwin как персональному осуществлению изучения. У меня есть включать путь, настроенный для включения C:\cygwin\usr\include но это не читает.h файлы правильно.

А именно, мне любопытно относительно того, как можно было бы пойти об использовании Unix sockets.h функциональность в использовании среды Visual Studio Cygwin. Кто-либо когда-либо получал эту работу или имеет более легкий способ пойти о выполнении этого?

11
задан WarrenB 18 December 2009 в 04:39
поделиться

2 ответа

Есть несколько способов сделать это, в зависимости от ваших конкретных целей. Самый простой способ - это, вероятно, просто создать проект «makefile» Visual Studio, который запускает пользовательскую команду сборки для запуска созданного вами make-файла. Но это удерживает вас от многих приятных преимуществ Visual Studio как IDE, так что я предполагаю, что это не совсем то, что вам нужно.

Если вам нужно более полностью интегрированное решение, вы собираетесь нужно сделать две вещи. Прежде всего, вам нужно будет изменить все ваши пути include / library, чтобы избежать путей Microsoft, и вместо этого перейти к Cygwin. Вы можете сделать это, выбрав «Инструменты-> Параметры» в меню, затем выбрав «Проекты и решения-> Каталоги VC ++». с дерева в левой части открывшегося окна. У вас будет возможность изменить каталоги поиска исполняемых файлов, заголовков, библиотек и т. Д. Для того, что вы пытаетесь сделать, я бы предложил удалить все и добавить только каталоги cygwin.

Во-вторых, вам нужно указать Visual Studio использовать компилятор gcc / g ++. Это немного сложнее. VS поддерживает настраиваемые правила сборки для настраиваемых типов файлов ... но, похоже, в компилятор Microsoft встроен C ++. Я действительно не знаю, как это обойтись, кроме как использовать собственное расширение файла. Вы можете попробовать стандартные расширения unix для файлов .c (файлы C) и .cc (файлы C ++), но я подозреваю, что Visual Studio автоматически подберет их. Возможно, вам придется выбрать что-то совершенно чуждое.

Если вы щелкните правой кнопкой мыши свой проект в обозревателе решений и выберите «Пользовательские правила сборки», вам будет предоставлен интерфейс, который позволит вам создавать собственные правила сборки для выбранного вами расширения файла. Интерфейс оттуда относительно прост.

Это может не дать вам именно то, что вы хотели, но, вероятно, примерно так близко, как вы собираетесь получить с Visual Studio.

8
ответ дан 3 December 2019 в 08:55
поделиться

Проще говоря, не делайте этого . Это было бы пустой тратой времени. Я пробовал несколько раз, но всегда терпел неудачу. В основном я был разочарован множеством ошибок связывания, а также не мог использовать VS в качестве отладчика.

Вы можете использовать Visual Studio для редактирования и просмотра исходного кода. Это приятно, потому что VS предоставляет лучшие функции intellisense C / C ++ (например, автоматическое завершение, быстрый переход к определению / объявлению). Но очень сложно использовать цепочки инструментов cygwin с Visual Studio 2008. Visual Studio 2008 не предназначена для работы с другими цепочками инструментов. В частности, вам нужно изменить (1) заголовки, (2) библиотеки, (3) компилятор и (4) компоновщик. Однако, как правило, это очень сложно, или вам придется отказаться от хороших функций Visual Studio.

Самая сильная особенность Visual Studio - это возможность отладки, такая как полностью интегрированная среда отладки и очень простые окна просмотра (например, вы может видеть элемент вектора STL прямо в окнах просмотра). Однако вы не сможете этого сделать, если измените базовую цепочку инструментов (хотя я очень подозреваю, что можно даже безопасно создавать с помощью цепочек инструментов Visual Studio и cygwin).

К сожалению, текущая версия Visual Studio 2008 не для cygwin /MinGW.

Самой сильной особенностью Visual Studio является ее способность отладки, такая как полностью интегрированная среда отладки и очень простые окна просмотра (например, вы можете видеть элемент вектора STL непосредственно в окнах просмотра). Однако вы не сможете этого сделать, если измените основную цепочку инструментов (хотя я очень подозреваю, что можно даже безопасно создавать с помощью цепочек инструментов Visual Studio и cygwin).

К сожалению, текущая версия Visual Studio 2008 не для cygwin /MinGW.

Самой сильной особенностью Visual Studio является возможность отладки, такая как полностью интегрированная среда отладки и очень простые окна просмотра (например, вы можете видеть элемент вектора STL непосредственно в окнах просмотра). Однако вы не сможете этого сделать, если измените основную цепочку инструментов (хотя я очень подозреваю, что можно даже безопасно создавать с помощью цепочек инструментов Visual Studio и cygwin).

К сожалению, текущая версия Visual Studio 2008 не для cygwin /MinGW.

5
ответ дан 3 December 2019 в 08:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: