Файл компилируется в одном проекте, но не в другом - PullRequest
0 голосов
/ 13 января 2012

У меня есть большой класс ClassA, который я определил в Code :: Blocks Project ProjectA.ProjectA компилируется нормально, но когда я пытаюсь использовать ClassA в другом проекте ProjectB, я начинаю получать ошибки, такие как

C:\ProjectA\ClassA.cpp|17|error: boost/foreach.hpp: No such file or directory|
C:\ProjectA\ClassA.cpp|649|error: 'strlen' was not declared in this scope|

, также одна из них для каждой функции в cstring

c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\cstring|76|error: '::memchr' has not been declared|

Iдобавили и ClassA.h, и ClassA.cpp в ProjectB и добавили папку для ProjectA в каталоги, найденные в ProjectB.

Я видел этот вопрос, относящийся к аналогичной ошибке, но я неиспользуйте C, поэтому было бы странно, если бы мои проекты вдруг начали пытаться компилировать в C. Однако я не хочу полностью исключать такую ​​возможность, поэтому я также хотел бы знать, как проверить, компилируется ли проект в Cили C ++ в Code :: Blocks.

Использование файлов из нескольких проектов работало для меня до сегодняшнего дня, поэтому я в полной растерянности из-за того, что может быть не так.Заранее спасибо за ваши ответы!

1 Ответ

0 голосов
/ 13 января 2012

Похоже, что ProjectB имеет различные пути включения, убедитесь, что он имеет эквивалент ProjectA.Обычно вы устанавливаете boost во внешнем каталоге.

...