Получаю ошибку «неопределенная ссылка на ' ' » несколько раз при компиляции вот фрагмент вывода терминала:
Код: Выделить всё
/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
Код: Выделить всё
#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"
Каждый файл .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