как скомпилировать проект VC с использованием g ?

#c #linux #g

#c #linux #g

Вопрос:

у меня есть исходный код проекта vc . Теперь я использую Linux. я знаю, как скомпилировать один файл .cpp не весь проект. Итак, как скомпилировать проект VC с использованием g ?

Комментарии:

1. Найдите хороший учебник по Makefiles.

2. Или еще лучше: взгляните на такой современный инструмент, как SConstruct

3. вам нужна только компиляция или весь набор инструментов сборки, включая компоновщик, редактор ресурсов и т.д.? что это за проект VC ?

Ответ №1:

Небольшим преимуществом Makefiles была бы возможная интеграция с autotools (кашель — Это может оказаться удобным для получения отправной точки для функциональных макросов).[2]

В составе winemaker есть инструмент, который чрезвычайно полезен при настройке дерева исходных текстов, в котором предполагалось, что имена не чувствительны к регистру, для работы с чувствительной к регистру файловой системой. (_ это было предназначено главным образом для сборки с использованием winelib, но это не обязательно)

Если вы хотите продолжать использовать Windows API для некоторых частей кода, вы можете рассмотреть возможность компиляции с помощью winelib (и использовать winegcc, создавая исполняемые файлы WIN32; я не уверен, что это то, чего вы хотите)

[2]: SCons — очень хороший инструмент, хотя

Комментарии:

1. Присоединяюсь к рекомендации scons. Однажды у меня был небольшой проект, созданный с его помощью.

Ответ №2:

Первым шагом было бы сгенерировать Makefile из файла vcproj. Для этого (очевидно) есть несколько инструментов: http://www.codeproject.com/KB/cross-platform/sln2mak.aspx

Ответ №3:

Простого способа сделать это нет. Как предлагали другие, вы можете выяснить, как работает процесс сборки для этого проекта (возможно, прочитав выходные данные сборки в VS) и воссоздать его с помощью вашего любимого инструмента сборки Linux (scons, cmake, autotools и т.д.). Альтернативой является использование инструмента преобразования. Помимо упомянутого ниже sln2mak, есть также winemaker. Документы для winemaker содержат много старой информации, как и большинство документов Linux tools, но он может конвертировать .sln в makefile. Я не уверен насчет более новых файлов vs .sln.