سؤال

وهنا مشكلة صغيرة لا يمكن حلها عن طريق لي مثل هذا البرنامج مبتدئ لينكس.

والآن لدي برنامج MAIN.CPP التي تحتاج إلى جمعها، هناك

#include "Down.h"

في الجزء الأمامي من الملف.

في الواقع، هذا الملف رأس موجودة في دليل آخر، والذي يقع في ../../../include الدليل. الى جانب ذلك، بعض الملفات رأس الأخرى التي يحتاجها Down.h تحديد أيضا في هذا الدليل ../../../include.

وهنا هي المشكلة، وجمع MAIN.CPP مع القيادة

g++ -I /../../../include main.cpp

ولكن، وأنه يعطي الكثير من المعلومات الخطأ مما يعني أنه ليس من الصحيح أن يتم مثل هذا.

هل يجب أيضا تغيير تشمل الإعلان إلى هذا واحد؟

#include "../../../include/DownConvert.h"

وعسى أن يرجى ترك لي مع بعض النصائح؟ شكرا.

تحرير:

وبعد استخدام g++ -I ../../../include main.cpp، وأحصل على الأخطاء التالية:

$ g++ -I ../../../include main.cpp 

In file included from ../../../include/DownConvert.h:98,
from main.cpp:92: ../../../include/ResizeParameters.h:4:22: error:
TypeDefs.h: No such file or directory 

In file included from /usr/include/c++/4.4/bits/stl_algo.h:61, 
from /usr/include/c++/4.4/algorithm:62, 
from ../../../include/H2 
هل كانت مفيدة؟

المحلول

g++ -I /../../../include main.cpp

ونرى أن تؤدي مائلة بعد -I؟ هذا هو مسار مطلق.
تغييره إلى مسار نسبي (كما هو موضح أدناه)، وانه سوف يعمل موافق.

g++ -I ../../../include main.cpp

نصائح أخرى

وز ++ -I ../../../include MAIN.CPP

ويجب أن تعمل

وحاول استخدام الخيار -v:

g++ -v -I ../../../include main.cpp

والتأكد من أن قائمة الدلائل للبحث عن ملفات التضمين يحتوي المجلد الخاص بك، وليس هناك يشكو من أن هذا المجلد هو غائب. إذا كان هناك هذا النوع من يشكو تصحيح المسار التي تعطي بعد -I

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top