Ошибка связывания при попытке создать простое окно с библиотекой SFML.C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка связывания при попытке создать простое окно с библиотекой SFML.

Сообщение Anonymous »

Моя проблема в следующем: всякий раз, когда я пытаюсь скомпилировать следующий код

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

#include 
#include 
#include 
...

int main(int argc, char* const argv[])
{
...

//these next two lines are the only instances in the whole program of anything inside sfml
sf::Window window;
window.create(sf::VideoMode(800, 600), "My window");

std::cin.get();
}
Я получаю следующую ошибку привязки:

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

Undefined symbols for architecture x86_64: "sf::String::String(char const\*, std::locale const&)", referenced from:
_main in ccBWrMPd.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
Команда, которую я использовал для компиляции проекта:

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

g++-14 main.cpp simulation.cpp boid.cpp -I /usr/local/Cellar/sfml/2.6.1/include -L /usr/local/Cellar/sfml/2.6.1/lib -l sfml-graphics -l sfml-window  -l sfml-system
Я установил SFML через менеджер пакетов Brew на свой Macbook, и у меня установлена ​​версия 2.6.1.
Что странно, проблема исчезает и программа успешно свяжется, если я закомментирую строку

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

window.create(sf::VideoMode(800, 600), "My window");
Я пытался изменить порядок аргументов библиотеки команд (как предлагалось во многих других сообщениях), но безрезультатно.
Должен ли я скопировать что-то в каталог моего проекта? В настоящее время он содержит только файлы .cpp и .hpp вместе с файлом CMakeLists.txt.
Имейте в виду, что я я все еще новичок в работе с внешними библиотеками, поэтому, если эта проблема очень банальна, извините.

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

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

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

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

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

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

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