Система сборки Windows: Как создать проект (из его исходного кода), у которого нет файла * .sln или Visual C ++ proj (* .vcproj) - PullRequest
1 голос
/ 28 апреля 2010

Я сталкиваюсь с этой проблемой. Итак, мне нужно собрать вспомогательные библиотеки (zlib, libtiff, libpng, libxml2, libiconv) с опциями «Multithreaded DLL» (/ MD) и «Multithreaded DLL Debug» (/ MDd). Но проблема в том, что прямого пути нет. Я имею в виду, что нет файла * .sln / * .vcproj, который я могу открыть в Visual C ++ и собрать его.

Я знаком с системой сборки GNU :

$./configure --with-all-sorts-of-required-switches
$./make
$./make install

Во время поиска я столкнулся с чем-то, что называется CMake , которое генерирует файл * .vcproj & * .sln, но для этого требуется CMakeLists.txt. Не все проекты предоставляют CMakeLists.txt.

Я никогда ничего не компилировал из командной строки Visual C ++.

  • Как правило, большинство проектов предоставляют makefile. Теперь, как мне сгенерировать * .vcproj / * .sln из этого?

  • Можно ли скомпилировать с mingw-make из MinGW ?

  • Если я могу, как мне установить различные параметры («Многопоточная» (/ MT), «Многопоточная отладка» (/ MTd), «Многопоточная DLL» (/ MD) » Многопоточная DLL «Отладка» (/ MDd)) для библиотек времени выполнения?

  • Я не знаю, какие еще способы доступны. Пожалуйста, пролите немного света на это.

Ответы [ 4 ]

2 голосов
/ 28 апреля 2010

Я считаю, что все эти проекты включают в себя файл .vcproj (открыть / собрать в VC) и / или make-файл VC (собрать с помощью nmake).

2 голосов
/ 28 апреля 2010

Вы можете просто создать новый проект в Visual Studio и добавить в него существующие файлы .cpp.

Обратите внимание, что для некоторых из упомянутых вами библиотек GNU у вас могут возникнуть проблемы с их сборкой на компиляторе Microsoft Visual Studio, поскольку, насколько я знаю, они не стесняются использовать расширения GCC в таких программах.

1 голос
/ 28 апреля 2010

Большинство проектов работают, когда вы создаете пустой проект Win32 и перетаскиваете в него все файлы.

Затем измените пути вывода и, возможно, выберите несколько вариантов.

0 голосов
/ 29 апреля 2010

Вы можете создать сценарии оболочки для компилятора + компоновщика, чтобы вызывать компилятор VC и дать им возможность конфигурирования с помощью ./configure CC=my-visual-c-script CXX=my-visual-c++-script. Я взломал скрипт компиляции, распространяемый с automake, чтобы сделать это. Обратите внимание, что automake также вызывает компилятор для связи, поэтому оболочка должна решить, должен ли он вызывать компилятор или компоновщик.

...