VS Code в Debian, ошибка компилятора: неопределенная ссылка на ' ' [дубликат]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 VS Code в Debian, ошибка компилятора: неопределенная ссылка на ' ' [дубликат]

Сообщение Anonymous »

Я использую raylib и physac, чтобы создать игру на C++. Я использую Debian и использую VS Code в качестве IDE, так как это то, с чем я знаком больше всего. Недавно я преобразовал весь код своего проекта в объектно-ориентированный код и с тех пор не могу скомпилировать свой проект.
Получаю ошибку «неопределенная ссылка на ' ' » несколько раз при компиляции вот фрагмент вывода терминала:

Код: Выделить всё

/usr/bin/ld: /tmp/ccqSfrNi.o: in function `__static_initialization_and_destruction_0(int, int)':
/usr/include/c++/12/iostream:74: undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: /usr/include/c++/12/iostream:74: undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: /tmp/cc5w8RbU.o: in function `__static_initialization_and_destruction_0(int, int)':
/usr/include/c++/12/iostream:74: undefined reference to `std::ios_base::Init::Init()'
/usr/bin/ld: /usr/include/c++/12/iostream:74: undefined reference to `std::ios_base::Init::~Init()'
/usr/bin/ld: /tmp/cc5w8RbU.o: in function `__static_initialization_and_destruction_0(int, int)':
~/GameFiles/headers/internal/gameVars.hpp:41: undefined reference to `GetAssetFilepath(char const*)'
Это файловая структура моего проекта:

Код: Выделить всё

GameFiles
--main.cpp
--textures.cpp
--level.cpp
--game.cpp
--functions.cpp
--Makefile
--main.code-workspace
--/.vscode
--/assets
--/headers
----/external
------physac.h
----/internal
------common.hpp
------textures.hpp
------level.hpp
------game.hpp
------functions.hpp
------gameVars.hpp
Это включения из main.cpp:

Код: Выделить всё

#define PHYSAC_IMPLEMENTATION

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#include "headers/external/physac.h"

#include "headers/internal/textures.hpp"
#include "headers/internal/gameVars.hpp"
#include "headers/internal/level.hpp"
#include "headers/internal/functions.hpp"
#include "headers/internal/game.hpp"
Каждый файл заголовка включает файл common.hpp. Некоторые из них включают в себя функции.hpp, текстуры.hpp и gameVars.hpp.
Каждый файл .cpp (кроме main.cpp) включает свой собственный файл заголовка, а некоторые включают в себя файлы Functions.hpp,textures.hpp и/или gameVars. hpp.
'GetAssetFilepath(char const*)' из приведенной выше ошибки объявлен в Functions.hpp и определен в Functions.cpp.
Makefile, main.code-workspace и каждый файл в .vscode копируется из репозитория raylib для настройки VS Code с помощью raylib. В файле Tasks.json я изменил аргумент OBJS для каждого типа сборки на «OBJS=${fileDirname}/**.cpp», чтобы он создавал все файлы .cpp в папке текущего файла.
Вероятно, я упускаю что-то очевидное, но я несколько дней искал по форумам, пытаясь понять это! Пришлите помощь!
Подпись,
Неопытный программист-любитель

Подробнее здесь: https://stackoverflow.com/questions/786 ... ference-to
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»