makefile: 6: рецепт для цели 'all' не удался на ubuntu-16.04 - PullRequest
0 голосов
/ 30 сентября 2018
g++ -std=c++11 -g -o run NumberNode.cpp LinkedList.cpp CarBST.cpp Queue.cpp CarNode.cpp Manager.cpp main.cpp NumberBST.cpp CarBST.h Queue.h CarNode.h Manager.h NumberBST.h NumberNode.h LinkedList.h
In file included from CarBST.h:2:0,
                 from NumberNode.h:2,
                 from NumberNode.cpp:1:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
NumberNode.cpp: In destructor ‘NumberNode::~NumberNode()’:
NumberNode.cpp:13:9: warning: converting to non-pointer type ‘int’ from NULL [-Wconversion-null]
  number = NULL;
         ^
In file included from LinkedList.h:2:0,
                 from LinkedList.cpp:1:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
In file included from CarBST.h:2:0,
                 from CarBST.cpp:1:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
CarBST.cpp: In member function ‘void CarBST::Delete(int)’:
CarBST.cpp:90:21: warning: converting to non-pointer type ‘int’ from NULL [-Wconversion-null]
  int lastLocation = NULL; //leafNode \B0\E6\BF\EC \BAθ\F0\B3\EB\B5\E5\C0\C7 \B
                     ^
In file included from Queue.h:2:0,
                 from Queue.cpp:1:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
In file included from CarNode.cpp:1:0:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
CarNode.cpp: In destructor ‘CarNode::~CarNode()’:
CarNode.cpp:12:12: warning: converting to non-pointer type ‘int’ from NULL [-Wconversion-null]
  carNumber = NULL;
            ^
CarNode.cpp:14:8: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
  state = NULL;
        ^
In file included from LinkedList.h:2:0,
                 from Manager.h:11,
                 from Manager.cpp:6:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
In file included from LinkedList.h:2:0,
                 from Manager.h:11,
                 from main.cpp:3:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
In file included from CarBST.h:2:0,
                 from NumberNode.h:2,
                 from NumberBST.h:2,
                 from NumberBST.cpp:1:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
NumberBST.cpp: In member function ‘void NumberBST::Delete(int)’:
NumberBST.cpp:119:21: warning: converting to non-pointer type ‘int’ from NULL [-Wconversion-null]
  int lastLocation = NULL; //leafNode \B0\E6\BF\EC \BAθ\F0\B3\EB\B5\E5\C0\C7 \B
                     ^
CarBST.h:1:9: warning: #pragma once in main file
 #pragma once
         ^
In file included from CarBST.h:2:0:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
Queue.h:1:9: warning: #pragma once in main file
 #pragma once
         ^
In file included from Queue.h:2:0:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
CarNode.h:1:9: warning: #pragma once in main file
 #pragma once
         ^
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
Manager.h:1:9: warning: #pragma once in main file
 #pragma once
         ^
In file included from LinkedList.h:2:0,
                 from Manager.h:11:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
NumberBST.h:1:9: warning: #pragma once in main file
 #pragma once
         ^
In file included from CarBST.h:2:0,
                 from NumberNode.h:2,
                 from NumberBST.h:2:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
NumberNode.h:1:9: warning: #pragma once in main file
 #pragma once
         ^
In file included from CarBST.h:2:0,
                 from NumberNode.h:2:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
LinkedList.h:1:9: warning: #pragma once in main file
 #pragma once
         ^
In file included from LinkedList.h:2:0:
CarNode.h: In constructor ‘CarNode::CarNode(int)’:
CarNode.h:24:9: warning: converting to non-pointer type ‘char’ from NULL [-Wconversion-null]
   state = NULL;
         ^
/tmp/ccYwuJus.o: In function `Manager::MOVE(int)':
/home/limsh/project/Manager.cpp:172: undefined reference to `CarBST::CarBST()'
/tmp/ccYwuJus.o: In function `Manager::Insert_BST(std::basic_ifstream<char, std::char_traits<char> >&)':
/home/limsh/project/Manager.cpp:363: undefined reference to `CarBST::CarBST()'
collect2: error: ld returned 1 exit status
Makefile:6: recipe for target 'all' failed
make: *** [all] Error 1

Я не знаю, как решить эту проблему.

эта программа работает на VS2017.

, но на Ubuntu не работает с этой проблемой.

какая доза 'makefile: 6' означает?

Я не могу найти это в Google и переполнение стека .....

И я слышал, что это работает дажес предупреждениями.поэтому я не проверял эти предупреждения.

в любом случае, пожалуйста, помогите ..

1 Ответ

0 голосов
/ 30 сентября 2018

Это

Makefile:6: recipe for target 'all' failed

означает, что у цели 'all', которая неявно вызывается, если не были указаны другие цели, были ошибки и что она определена в вашем Makefile в строке 6.

Основной ошибкой является ошибка компоновщика:

undefined reference to `CarBST::CarBST()'

Это то, что вы должны исправить.Команда, которую вы используете для компиляции и компоновки:

g++ -std=c++11 -g -o run NumberNode.cpp LinkedList.cpp CarBST.cpp Queue.cpp CarNode.cpp Manager.cpp main.cpp NumberBST.cpp CarBST.h Queue.h CarNode.h Manager.h NumberBST.h NumberNode.h LinkedList.h

Однако там присутствует файл CarBST.cpp, который предположительно содержит определение класса.Похоже, что нет конструктора без параметров;либо добавьте его в класс, либо вызовите доступный конструктор.

Кроме того, редко задаются файлы заголовков (* .h) в командной строке компилятора, они обычно включаются в исходные файлы (* .cpp)..

И наконец, вы не должны игнорировать предупреждения и проверять, почему указатель NULL назначается символам.Вероятно, это должно быть

state = 0;

или подобное.

...