С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/40: Рейтинг темы: голосов - 40, средняя оценка - 4.68
0 / 0 / 0
Регистрация: 25.09.2015
Сообщений: 22

Clion и SFML

31.08.2017, 21:06. Показов 8587. Ответов 10
Метки c, clion, sfml (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, уважаемые программисты. Недавно, у меня появилась довольно отличная идея, создать игру. Так как я начал программировать на C++, то решил писать именно на нем. Было много проблем с выбором программы, но все же я остановился на программе Clion. По указанию друга, я установил и MinGW. Простейший код стал работать.
Ладно, объясню суть проблемы. В поисках видео по работе с графикой и музыкой, я наткнулся на "библиотеку" SFML.
Мне она показалась самой подходящей, так как OpenGL уже порядком устарел. Но вот незадача, сколько не пытаясь SFML включить в Clion, ничего не получается. Использовал единственный урок в интернете на русском язык, найти не трудно.
По инструкции, у меня выдает ошибку

"E:\CLion\CLion 2017.2.1\bin\cmake\bin\cmake.exe" --build E:\ProjectC\Igra\cmake-build-debug --target Igra -- -j 2
-- Configuring done
-- Generating done
-- Build files have been written to: E:/ProjectC/Igra/cmake-build-debug
[ 50%] Building CXX object CMakeFiles/Igra.dir/main.cpp.obj
[100%] Linking CXX executable Igra.exe
G__~1.EXE: error: $(CMAKE_CXX_FLAGS): No such file or directory
G__~1.EXE: error: $(CMAKE_EXE_LINKER_FLAGS): No such file or directory
mingw32-make.exe[3]: *** [CMakeFiles\Igra.dir\build.make:96: Igra.exe] Error 1
mingw32-make.exe[2]: *** [CMakeFiles\Makefile2:67: CMakeFiles/Igra.dir/all] Error 2
mingw32-make.exe[1]: *** [CMakeFiles\Makefile2:79: CMakeFiles/Igra.dir/rule] Error 2
mingw32-make.exe: *** [Makefile:117: Igra] Error 2


Пожалуйста, объясните, по порядку, как и что мне нужно сделать. Очень нужно.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.08.2017, 21:06
Ответы с готовыми решениями:

Не получается поднять SFML в Clion под Ubuntu
Доброго времени суток. Пытаюсь хотя бы скомпилировать рандомный код из интернета на SFML под linux в clion'e, не получив "undefined...

CLion, SFML
Недавно скачал и поставил мультимедийную библиотеку SFML, решил опробовать, но выдаёт ошибки. Не подскажете на что стоит обратить...

Ошибка при работе с SFML в CLION
Пытаюсь запустить простую программу с сфмл. Текст cmake: cmake_minimum_required(VERSION 3.15) set(PROJECT_NAME...

10
0 / 0 / 0
Регистрация: 25.09.2015
Сообщений: 22
31.08.2017, 21:11  [ТС]
Вот скриншот
Миниатюры
Clion и SFML  
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
01.09.2017, 10:52
Цитата Сообщение от ZlajaMalekula Посмотреть сообщение
Недавно, у меня появилась довольно отличная идея, создать игру. Так как я начал программировать на C++
добро пожаловать в клуб

Цитата Сообщение от ZlajaMalekula Посмотреть сообщение
я остановился на программе Clion
отличный выбор

Цитата Сообщение от ZlajaMalekula Посмотреть сообщение
Пожалуйста, объясните, по порядку, как и что мне нужно сделать.
начните создание игрушки своей мечты не с библиотеки SFML,
а с освоения используемых инструментов.

прямо сейчас вам нужно понять идею использования,
и технику написания cmake-скриптов для сборки продукта.

прямо сейчас в данный момент, вам нужно понять, как вообще указать cmake,
что нужно линковаться с статическими библиотеками.


в кратце:

компилятору/линкеру нужно знать три вещи:

1. пути, где лежат хедера (*.h) библиотеки.

2. пути, где лежат lib-файлы.

3. список имен библиотек (только имена без расширения .lib)
с которыми нужно линковаться.

теперь, как это сделать:

https://cmake.org/documentation/
https://habrahabr.ru/post/155467/
2
0 / 0 / 0
Регистрация: 25.09.2015
Сообщений: 22
01.09.2017, 12:17  [ТС]
hoggy, Большое спасибо за информацию. Могу ли я к вам обратиться, если будут какие нибудь трудности?
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
01.09.2017, 12:32
Цитата Сообщение от ZlajaMalekula Посмотреть сообщение
Могу ли я к вам обратиться, если будут какие нибудь трудности?
конечно
0
0 / 0 / 0
Регистрация: 20.06.2015
Сообщений: 1
29.01.2018, 01:13
Не могли бы вы помочь ?
Я добавил папку с хердерами и папку с файлами библиотеки, подключил сами файлый библиотеки. CMake код:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
cmake_minimum_required(VERSION 3.9)
project(cpp_test)
 
include_directories(lib/sfml/include)
link_directories(lib/sfml/lib)
 
add_executable(main main.cpp)
target_link_libraries(main
        sfml-audio-s
        sfml-graphics-s
        sfml-main
        sfml-network-s
        sfml-system-s
        sfml-window-s)
Но при этом все равно получаю ошибку при компиляции:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
"D:\Program Files\JetBrains\CLion 2017.3.2\bin\cmake\bin\cmake.exe" --build D:\Projects\cpp-test\cmake-build-debug --target main -- -j 2
-- Configuring done
-- Generating done
-- Build files have been written to: D:/Projects/cpp-test/cmake-build-debug
[ 50%] Linking CXX executable main.exe
CMakeFiles\main.dir/objects.a(main.cpp.obj): In function `main':
D:/Projects/cpp-test/main.cpp:4: undefined reference to `_imp___ZN2sf6StringC1EPKcRKSt6locale'
D:/Projects/cpp-test/main.cpp:4: undefined reference to `_imp___ZN2sf9VideoModeC1Ejjj'
D:/Projects/cpp-test/main.cpp:4: undefined reference to `_imp___ZN2sf12RenderWindowC1ENS_9VideoModeERKNS_6StringEjRKNS_15ContextSettingsE'
D:/Projects/cpp-test/main.cpp:5: undefined reference to `_imp___ZN2sf4FontC1Ev'
D:/Projects/cpp-test/main.cpp:7: undefined reference to `_imp___ZN2sf4Font12loadFromFileERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
D:/Projects/cpp-test/main.cpp:9: undefined reference to `_imp___ZN2sf6StringC1EPKcRKSt6locale'
D:/Projects/cpp-test/main.cpp:9: undefined reference to `_imp___ZN2sf4TextC1ERKNS_6StringERKNS_4FontEj'
D:/Projects/cpp-test/main.cpp:11: undefined reference to `_imp___ZN2sf4Text16setCharacterSizeEj'
D:/Projects/cpp-test/main.cpp:13: undefined reference to `_imp___ZNK2sf12RenderWindow7getSizeEv'
D:/Projects/cpp-test/main.cpp:13: undefined reference to `_imp___ZNK2sf4Text15getGlobalBoundsEv'
D:/Projects/cpp-test/main.cpp:12: undefined reference to `_imp___ZNK2sf12RenderWindow7getSizeEv'
D:/Projects/cpp-test/main.cpp:12: undefined reference to `_imp___ZNK2sf4Text15getGlobalBoundsEv'
D:/Projects/cpp-test/main.cpp:12: undefined reference to `_imp___ZN2sf13Transformable11setPositionEff'
D:/Projects/cpp-test/main.cpp:15: undefined reference to `_imp___ZNK2sf6Window6isOpenEv'
D:/Projects/cpp-test/main.cpp:18: undefined reference to `_imp___ZN2sf6Window9pollEventERNS_5EventE'
D:/Projects/cpp-test/main.cpp:20: undefined reference to `_imp___ZN2sf6Window5closeEv'
D:/Projects/cpp-test/main.cpp:23: undefined reference to `_imp___ZN2sf5Color5BlackE'
D:/Projects/cpp-test/main.cpp:23: undefined reference to `_imp___ZN2sf12RenderTarget5clearERKNS_5ColorE'
D:/Projects/cpp-test/main.cpp:24: undefined reference to `_imp___ZN2sf12RenderStates7DefaultE'
D:/Projects/cpp-test/main.cpp:24: undefined reference to `_imp___ZN2sf12RenderTarget4drawERKNS_8DrawableERKNS_12RenderStatesE'
D:/Projects/cpp-test/main.cpp:25: undefined reference to `_imp___ZN2sf6Window7displayEv'
D:/Projects/cpp-test/main.cpp:5: undefined reference to `_imp___ZN2sf4FontD1Ev'
D:/Projects/cpp-test/main.cpp:4: undefined reference to `_imp___ZN2sf12RenderWindowD1Ev'
D:/Projects/cpp-test/main.cpp:5: undefined reference to `_imp___ZN2sf4FontD1Ev'
D:/Projects/cpp-test/main.cpp:4: undefined reference to `_imp___ZN2sf12RenderWindowD1Ev'
CMakeFiles\main.dir/objects.a(main.cpp.obj): In function `ZN2sf8DrawableD2Ev':
D:/Projects/cpp-test/lib/sfml/include/SFML/Graphics/Drawable.hpp:52: undefined reference to `_imp___ZTVN2sf8DrawableE'
CMakeFiles\main.dir/objects.a(main.cpp.obj): In function `ZN2sf11VertexArrayD1Ev':
D:/Projects/cpp-test/lib/sfml/include/SFML/Graphics/VertexArray.hpp:45: undefined reference to `_imp___ZTVN2sf11VertexArrayE'
CMakeFiles\main.dir/objects.a(main.cpp.obj): In function `ZN2sf4TextD1Ev':
D:/Projects/cpp-test/lib/sfml/include/SFML/Graphics/Text.hpp:48: undefined reference to `_imp___ZTVN2sf4TextE'
D:/Projects/cpp-test/lib/sfml/include/SFML/Graphics/Text.hpp:48: undefined reference to `_imp___ZTVN2sf4TextE'
D:/Projects/cpp-test/lib/sfml/include/SFML/Graphics/Text.hpp:48: undefined reference to `_imp___ZN2sf13TransformableD2Ev'
collect2.exe: error: ld returned 1 exit status
mingw32-make.exe[3]: *** [CMakeFiles\main.dir\build.make:97: main.exe] Error 1
mingw32-make.exe[2]: *** [CMakeFiles\Makefile2:67: CMakeFiles/main.dir/all] Error 2
mingw32-make.exe[1]: *** [CMakeFiles\Makefile2:79: CMakeFiles/main.dir/rule] Error 2
mingw32-make.exe: *** [Makefile:117: main] Error 2
Сижу уже который час, не могу понять, что не так. Был бы очень признателен за помощь.

Добавлено через 12 минут
Цитата Сообщение от hoggy Посмотреть сообщение
компилятору/линкеру нужно знать три вещи:
1. пути, где лежат хедера (*.h) библиотеки.
2. пути, где лежат lib-файлы.
3. список имен библиотек (только имена без расширения .lib)
с которыми нужно линковаться.
Не могли бы вы помочь ?
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
29.01.2018, 01:47
Цитата Сообщение от Ziqul Посмотреть сообщение
Не могли бы вы помочь ?
вы уже ознакомились с документацией?

просматривали в гугле примеры CMakeLists.txt ?

например, что то подобное:
https://github.com/SFML/SFML/w... with-CMake
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
31.01.2018, 03:02
hoggy, Ziqul, ZlajaMalekula, http://scons.org/ попроще CMake будет.

Добавлено через 53 секунды
Цитата Сообщение от ZlajaMalekula Посмотреть сообщение
я остановился на программе Clion
Ну а мне и VSCode по душе. Легко, просто и без лишних наворотов.
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
31.01.2018, 12:39
Цитата Сообщение от outoftime Посмотреть сообщение
попроще CMake будет.
CMake в настоящие дни - "стандарт де факто"
скунс не нужен.
0
 Аватар для Kastaneda
5232 / 3205 / 362
Регистрация: 12.12.2009
Сообщений: 8,143
Записей в блоге: 2
31.01.2018, 14:47
Цитата Сообщение от Ziqul Посмотреть сообщение
link_directories(lib/sfml/lib)
путь точно не со слеша начинается?
Цитата Сообщение от Ziqul Посмотреть сообщение
target_link_libraries(main
Я точно не помню, но вроде тут надо указывать название проекта (вместо main). Название проекта у тебя
Цитата Сообщение от Ziqul Посмотреть сообщение
project(cpp_test)
0
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
31.01.2018, 22:51
В каталоге с проектом создаете директорию cmake/Modules.
Закидываете туда файл FindSFML.cmake, а лучше всё что есть здесь:
https://github.com/SFML/SFML/t... ke/Modules

В CMakeLists.txt:
Code
1
2
3
4
5
6
7
8
#set(SFML_ROOT "путь_к_sfml")
 
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake/Modules)
 
find_package(SFML REQUIRED COMPONENTS graphics window system)
include_directories(${SFML_INCLUDES})
#...
target_link_libraries(${PROJECT_NAME} ${SFML_LIBRARIES})
Если SFML находится не в системных путях, то раскомментировать строчку с установкой переменной SFML_ROOT, указав там путь до каталога SFML (тот, в котором находятся каталоги include, lib).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.01.2018, 22:51
Помогаю со студенческими работами здесь

Скачал Clion, установил MinGW, пытался настроить, но так и не смог. Clion говорит, что Cmake выдаёт ошибку
Скачал Clion, установил MinGW, пытался настроить, но так и не смог. Clion говорит, что Cmake выдаёт ошибку -- The C compiler...

Как подключить SFML к CLion?
Здравствуйте. В интернете много мануалов о подключении данной библиотеки к visual studio, но для CLion я не нашел ни одного мануала. Не...

SFML в C::B пытается что-то найти в D:\sfml-release\ которого нет
Добрый день, вторые сутки пытаюсь подключить SFML библиотеку к C::B. При подключении по мануалу с офф сайта любой версии SFML к любой...

D:\C++ Projekts\SFML\main.cpp [Error] SFML\Graphics.hpp: No such file or directory
Пытаюсь начать кодить на библиотеке SFML но при компиляции пучтого проэкта выдает SFML\Graphics.hpp: No such file or directory. Пытался...

Ошибка: CMake Error at deps/SFML/src/SFML/Window/CMakeLists.txt:106 (message): Xrandr library not found
Собсна, решил собрать библиотеку , столкнулся с непонятками, но потом дошло что не так, начал собирать, и в итоге получил ошибку, как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru