tuixte ha scritto:
Risposta sintetica: si.
Risposta completa: le librerie non si installano NELL'editor. Le librerie sono porzioni di codice prodotte da terzi (o volendo da te), che possono essere inclusi nei tuoi file/progetti. Ciò che l'editor fa è solamento un riferimento a tali librerie, e nel caso utilizzi ambienti di sviluppo un filo più completi di un semplice Blocco note, linkarli con il tuo codice creando l'eseguibile finale.
Nel tuo progetto puoi includere contemporaneamente tutte le librerie che vuoi (anche la iostream che utilizzi per stampare stringhe a schermo è una liberia!)
In ogni caso, nei tutorial presenti sul sito ufficiale delle SFML è spiegato passo passo come installare la libreria e configurare il progetto su diversi OS e ambienti di sviluppo.
Ciao
Grazie, sapevo che anche iostream, come stdio e (in generale) tutte le cose che finiscono in .h sono librerie;)
Se sono più semplici delle SDL provo subito.. Il fatto è che le sdl sno più pratiche ma anche più difficili e dato che sono solo all'inizio preferisco usare le SFML
E' abbastanza tardi, ma la mia forza di volontà mi fà stare sveglio anche se domani devo alzarmi alle 6. Oggi installerò queste librerie!
E' spiegato anche come usarle?
Sapete, aspettare 9 anni per qualcosa e arrivare molto vicino all'imminente inizio dà una certa carica. Se oggi riuscissi soltanto a montare un'immagine in una finestra mi sentirei realizzato
___________
Ecco, provato ad installarle e mi dà una serie di errori:
||=== Build: Debug in Dinamyc (compiler: GNU GCC Compiler) ===|
obj\Debug\Untitled1.o(.text+0x1e4)||In function `main':|
C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|6|undefined reference to `sf::String::String(char const*, std::locale const&)'|
obj\Debug\Untitled1.o(.text+0x220):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|6|undefined reference to `sf::VideoMode::VideoMode(unsigned int, unsigned int, unsigned int)'|
obj\Debug\Untitled1.o(.text+0x268):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|6|undefined reference to `sf::RenderWindow::RenderWindow(sf::VideoMode, sf::String const&, unsigned int, sf::ContextSettings const&)'|
obj\Debug\Untitled1.o(.text+0x32b):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|7|undefined reference to `sf::CircleShape::CircleShape(float, unsigned int)'|
obj\Debug\Untitled1.o(.text+0x333):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|8|undefined reference to `sf::Color::Green'|
obj\Debug\Untitled1.o(.text+0x34b):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|8|undefined reference to `sf::Shape::setFillColor(sf::Color const&)'|
obj\Debug\Untitled1.o(.text+0x363):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|10|undefined reference to `sf::Window::isOpen() const'|
obj\Debug\Untitled1.o(.text+0x38d):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|13|undefined reference to `sf::Window::pollEvent(sf::Event&)'|
obj\Debug\Untitled1.o(.text+0x3a8):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|16|undefined reference to `sf::Window::close()'|
obj\Debug\Untitled1.o(.text+0x3e2):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|19|undefined reference to `sf::Color::Color(unsigned char, unsigned char, unsigned char, unsigned char)'|
obj\Debug\Untitled1.o(.text+0x3fd):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|19|undefined reference to `sf::RenderTarget::clear(sf::Color const&)'|
obj\Debug\Untitled1.o(.text+0x405):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|20|undefined reference to `sf::RenderStates::Default'|
obj\Debug\Untitled1.o(.text+0x420):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|20|undefined reference to `sf::RenderTarget::draw(sf::Drawable const&, sf::RenderStates const&)'|
obj\Debug\Untitled1.o(.text+0x42e):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|21|undefined reference to `sf::Window::display()'|
obj\Debug\Untitled1.o(.text+0x463):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|24|undefined reference to `sf::RenderWindow::~RenderWindow()'|
obj\Debug\Untitled1.o(.text+0x504):C:\Users\cristian\Desktop\Dinamyc Box\Untitled1.cpp|24|undefined reference to `sf::RenderWindow::~RenderWindow()'|
obj\Debug\Untitled1.o(.text$_ZN2sf11CircleShapeD1Ev[sf::CircleShape::~CircleShape()]+0xb)||In function `ZN9__gnu_cxx13new_allocatorIcE10deallocateEPcj':|
C:\Dev-Cpp\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\include\c++\3.4.2\bits\allocator.h||undefined reference to `vtable for sf::CircleShape'|
obj\Debug\Untitled1.o(.text$_ZN2sf11CircleShapeD1Ev[sf::CircleShape::~CircleShape()]+0x17):C:\Dev-Cpp\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\include\c++\3.4.2\bits\allocator.h||undefined reference to `vtable for sf::CircleShape'|
obj\Debug\Untitled1.o(.text$_ZN2sf11CircleShapeD1Ev[sf::CircleShape::~CircleShape()]+0x22):C:\Dev-Cpp\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\include\c++\3.4.2\bits\allocator.h||undefined reference to `sf::Shape::~Shape()'|
||=== Build failed: 19 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
Perchè mi dà questo errore??
Il link della guida:
http://sfml-dev.org/tutorials/2.1/start-cb.ph
Il codice:
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
sf::CircleShape shape(100.f);
shape.setFillColor(sf::Color::Green);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear();
window.draw(shape);
window.display();
}
return 0;
}