2013-11-21 2 views
0

У меня есть решение Visual Studio на C++, содержащее 27 проектов с известным порядком сборки и всего остального, я могу успешно построить цельное решение, и все работает отлично. Как вы знаете, после создания каждого проекта некоторые файлы будут создайте в папке «Debug» (или «release»), и я получаю доступ к ним для каждого проекта, 26 проектов этого решения не нуждаются в изменениях, я просто хочу изменить один проект. Поэтому мне просто интересно, могу ли я использовать выпущенные файлы отладки все 26 других проектов и снова создайте мое решение в Visual Studio или любой другой среде IDE? Большое спасибоСоздайте проект на C++ с отладочными файлами

+0

Что именно вопрос, я все cofused, вы хотите знать, можете ли вы повторно использовать скомпилированные файлы lib или ...? – Raxvan

+0

Visual Studio достаточно умен, чтобы построить только то, что нужно построить. Если вы меняете общий заголовок, который включает несколько проектов, то вы увидите, что все они каждый раз перестраиваются - в противном случае он должен только строить проект, содержащий измененный Исходный файл (ы) – benjymous

ответ

1

«Файлы отладки» визуальных студии * PDB-файлы и являются собственным форматом MS и, следовательно, не может быть использован в другой Иде: What is the structure of a PDB file?

Промежуточных файлами VS «* .obj» генерируется для каждой единицы перевода, но преобразования в другой компилятор не достижимо простым способом: Is there a tool that can convert a Visual Studio object file to GCC format?

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

Добавление поддержки для другой системы сборки или IDE должно выполняться опытным разработчиком, знакомым с этими проектами.

+0

Большое вам спасибо за ваш ответ с курса Я хочу использовать тот же компилятор «Visual C++», поэтому я не беспокоюсь о конверсии, о котором вы говорили, и у меня есть решение VS, и я знаю, что VS не перестраивает все решения, но я должен использовать мой проект, поскольку я сказал, есть ли способ представить эти файлы отладки (PDB и OBJ) в качестве внешней зависимости или что? – AardalanN

+0

Я думаю, вы хотите связать эти проекты. Это можно сделать, используя свойства проекта. Если вам повезет, вы можете создать новое решение и импортировать только проект, который хотите изменить. Если это не сработает, вы должны установить имена путей для библиотек/include-каталогов и имена файлов * .lib, которые вы хотите связать в конфигурациях проекта, см .: http://en.wikibooks.org/wiki/C%2B % 2B_Programming/Compiler/Linker/Libraries/Configuring_Visual_Studio – DarthB

+0

Большое спасибо, что я работал для меня. Я использовал файлы библиотеки и DLL-файлы, и у меня такие же результаты, как и огромное решение. – AardalanN

0

Теоретически Visual Studio увидит, что изменилось (в решении), и просто говоря, что build должен просто построить то, что изменилось (и его зависимости).
Опасайтесь, если вы используете библиотеки и exes из одного компилятора с другими - вам почти наверняка нужно использовать ту же версию Visual Studio, поскольку, например, реализации stl будут меняться между версиями. Кроме того, если вы используете другой компилятор, то почти наверняка произойдет ужасно неправильно.

Если вы используете другую IDE и указываете ее на один и тот же компилятор, все должно быть в порядке.

редактировать
Если под «другой IDE» вы имеете в виду другой экземпляр того же IDE, то есть вы хотите, чтобы открыть другое решение, но использовать это как «библиотека», что это нормально. Вам не нужны файлы .obj - они являются частью процесса сборки. Это окончательные файлы .lib или .dll, которые вам нужны, вместе с файлами .pdb, если вам нужны символы отладки.

+0

уверен, что я хочу использовать тот же самый компилятор (Visual C++), вы знаете, например, я хочу, чтобы проект был в другой среде IDE и добавлял 1 проект (тот, который нуждается в изменении) в качестве исходного проекта и каким-то образом (это это мой вопрос, который я не знаю, как?) прикреплять файлы отладки - из 26 других проектов, которые я описал, - к ним и иметь те же результаты, что и VS, с таким огромным решением, которое содержит 27 проектов. – AardalanN

+0

На самом деле вы пытаетесь создать какую-то библиотеку для использования в других * проектах * (а не в других * IDE)? – doctorlove

+0

Да, это действительно не важно, чтобы сделать это в другой среде IDE, но мне нужно ввести .pdb и.obj файлы в другое решение как внешняя зависимость или что-то еще, чего я действительно не знаю! – AardalanN

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