Невозможно скомпилировать файл *.cpp с помощью SFML с помощью g++ в Windows.C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Невозможно скомпилировать файл *.cpp с помощью SFML с помощью g++ в Windows.

Сообщение Anonymous »

Я пытаюсь скомпилировать файл *.cpp:

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

#include 

using namespace sf;

int main()
{

RenderWindow window(VideoMode(400, 400), L"New project", Style::Default);

window.setVerticalSyncEnabled(true);

CircleShape shape(100.f,3);
shape.setPosition(100, 100);
shape.setFillColor(Color::Magenta);

while (window.isOpen())
{
Event event;
while (window.pollEvent(event))
{
if (event.type == Event::Closed)
window.close();
}

window.clear(Color::Blue);
window.draw(shape);
window.display();
}
return 0;
}
Я поставил g++ Durak.cpp -o output.exe -I"C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include" -L" C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\lib" -lsfml-graphics -lsfml-window -lsfml-system в консоли, но получаю ошибки:

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

main.cpp: In function 'int main()':
main.cpp:8:43: error: no matching function for call to 'sf::VideoMode::VideoMode(int, int)'
8 |     RenderWindow window(VideoMode(400, 400), L"New project", Style::Default);
|                                           ^
In file included from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Graphics/RenderWindow.hpp:35,
from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Graphics.hpp:45,
from main.cpp:1:
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/VideoMode.hpp:61:14: note: candidate: 'sf::VideoMode::VideoMode(sf::Vector2u, unsigned int)'
61 |     explicit VideoMode(Vector2u modeSize, unsigned int modeBitsPerPixel = 32);
|              ^~~~~~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/VideoMode.hpp:61:33: note:   no known conversion for argument 1 from 'int' to 'sf::Vector2u' {aka 'sf::Vector2'}
61 |     explicit VideoMode(Vector2u modeSize, unsigned int modeBitsPerPixel = 32);
|                        ~~~~~~~~~^~~~~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/VideoMode.hpp:52:5: note: candidate: 'constexpr sf::VideoMode::VideoMode()'
52 |     VideoMode() = default;
|     ^~~~~~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/VideoMode.hpp:52:5: note:   candidate expects 0 arguments, 2 provided
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/VideoMode.hpp:43:23: note: candidate: 'constexpr sf::VideoMode::VideoMode(const sf::VideoMode&)'
43 | class SFML_WINDOW_API VideoMode
|                       ^~~~~~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/VideoMode.hpp:43:23: note:   candidate expects 1 argument, 2 provided
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/VideoMode.hpp:43:23: note: candidate: 'constexpr sf::VideoMode::VideoMode(sf::VideoMode&&)'
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/VideoMode.hpp:43:23: note:   candidate expects 1 argument, 2 provided
main.cpp:13:22: error: no matching function for call to 'sf::CircleShape::setPosition(int, int)'
13 |     shape.setPosition(100, 100);
|     ~~~~~~~~~~~~~~~~~^~~~~~~~~~
In file included from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Graphics/Shape.hpp:37,
from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Graphics/CircleShape.hpp:32,
from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Graphics.hpp:32:
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Graphics/Transformable.hpp:70:10: note: candidate: 'void sf::Transformable::setPosition(sf::Vector2f)'
70 |     void setPosition(Vector2f position);
|          ^~~~~~~~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Graphics/Transformable.hpp:70:10: note:   candidate expects 1 argument, 2 provided
main.cpp:18:15: error: no matching function for call to 'sf::Event::Event()'
18 |         Event event;
|               ^~~~~
In file included from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/WindowBase.inl:28,
from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/WindowBase.hpp:617,
from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/Window.hpp:32,
from C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Graphics/RenderWindow.hpp:36:
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/Event.hpp:306:5: note: candidate: 'template  sf::Event::Event(const TEventSubtype&)'
306 |     Event(const TEventSubtype& eventSubtype);
|     ^~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/Event.hpp:306:5: note:   template argument deduction/substitution failed:
main.cpp:18:15: note:   candidate expects 1 argument, 0 provided
18 |         Event event;
|               ^~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/Event.hpp:46:7: note: candidate: 'constexpr sf::Event::Event(const sf::Event&)'
46 | class Event
|       ^~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/Event.hpp:46:7: note:   candidate expects 1 argument, 0 provided
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/Event.hpp:46:7: note: candidate: 'constexpr sf::Event::Event(sf::Event&&)'
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/Event.hpp:46:7: note:   candidate expects 1 argument, 0 provided
main.cpp:19:32: error: no matching function for call to 'sf::RenderWindow::pollEvent(sf::Event&)'
19 |         while (window.pollEvent(event))
|                ~~~~~~~~~~~~~~~~^~~~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/WindowBase.hpp:226:40: note: candidate: 'std::optional sf::WindowBase::pollEvent()'
226 |     [[nodiscard]] std::optional pollEvent();
|                                        ^~~~~~~~~
C:\Users\dalvo\IT\SFML (MinGW)\SFML-3.0.0\include/SFML/Window/WindowBase.hpp:226:40: note:   candidate expects 0 arguments, 1 provided
main.cpp:21:23: error: 'class sf::Event' has no member named 'type'
21 |             if (event.type == Event::Closed)
|                       ^~~~
main.cpp:21:44: error: expected primary-expression before ')' token
21 |             if (event.type == Event::Closed)
|                                            ^
Мои версии следующие:
g++ (Rev3, создано в рамках проекта MSYS2) 13.2.0;
SFML-3.0.0.
Строка текста командной строки, который я запросил у ChatGpt.
Код, который я скопировал с сайта с руководством: https://habr.com/ru/articles/703500/. Другие успешно используют этот код, но я нет. Помогите пожалуйста, я работаю над этой проблемой уже несколько дней (уже хочу бросить программирование...)


Подробнее здесь: https://stackoverflow.com/questions/793 ... on-windows
Ответить

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

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

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

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

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