News:

When registered with our forums, feel free to send a "here I am" post here to differ human beings from SPAM bots.

Main Menu

Problem with SFML 2.0 libraries

Started by Qday, May 27, 2024, 06:18:17 AM

Previous topic - Next topic

Qday

Hi, im trying to learn SFML2.0 with this tutorial: https://cpp0x.pl/kursy/Kurs-SFML-2-x-C++/460 (its in polish) and i cant get to it to work. Tried with empty project and with SFML wizard build in CodeBlocks.

tried with SFML 2.0 GCC 4.7 MinGW (DW2) - 32-bit and SFML 2.0 GCC 4.7 TDM (SJLJ) - 32-bit but still getting the same error message.

I have tried changing names of the libraries( deleting .a and "lib" but it doesnt work :(

screanshoots in the zip.

||=== Build: Debug in SFML_04 (compiler: GNU GCC Compiler) ===|
ld.exe||cannot find -lsfml-graphics-d: No such file or directory|
ld.exe||cannot find -lsfml-window-d: No such file or directory|
ld.exe||cannot find -lsfml-system-d: No such file or directory|
||error: ld returned 1 exit status|
||=== Build failed: 4 error(s), 0 warning(s) (0 minute(s), 1 second(s)) ===|




-------------- Build: Debug in SFML_04 (compiler: GNU GCC Compiler)---------------

g++.exe -LC:\Dev\SFML-2.0\lib -o bin\Debug\SFML_04.exe obj\Debug\main.o   -lmingw32 -luser32 -lgdi32 -lwinmm -ldxguid -lsfml-graphics-d -lsfml-window-d -lsfml-system-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-graphics-d.a when searching for -lsfml-graphics-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib\libsfml-graphics-d.a when searching for -lsfml-graphics-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-graphics-d.a when searching for -lsfml-graphics-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lsfml-graphics-d: No such file or directory
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-graphics-d.a when searching for -lsfml-graphics-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-window-d.a when searching for -lsfml-window-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib\libsfml-window-d.a when searching for -lsfml-window-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-window-d.a when searching for -lsfml-window-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lsfml-window-d: No such file or directory
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-window-d.a when searching for -lsfml-window-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-system-d.a when searching for -lsfml-system-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib\libsfml-system-d.a when searching for -lsfml-system-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-system-d.a when searching for -lsfml-system-d
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lsfml-system-d: No such file or directory
C:/msys64/ucrt64/bin/../lib/gcc/x86_64-w64-mingw32/13.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Dev\SFML-2.0\lib/libsfml-system-d.a when searching for -lsfml-system-d
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 1 second(s))
4 error(s), 0 warning(s) (0 minute(s), 1 second(s))




Miguel Gimenez

You are mixing 64 and 32-bit objects, or SFML was compiled with a different compiler.

nenin

Quote from: Qday on May 27, 2024, 06:18:17 AM
Hi, im trying to learn SFML2.0 with this tutorial:
4 error(s), 0 warning(s) (0 minute(s), 1 second(s))
You probably have to try this "GCC 13.1.0 MinGW (SEH) - 64-bit" from here  https://www.sfml-dev.org/download/sfml/2.6.1/  or check msys for  SFML2.
Versions you tried are totally outdated.

Qday

Quote
You probably have to try this "GCC 13.1.0 MinGW (SEH) - 64-bit" from here  https://www.sfml-dev.org/download/sfml/2.6.1/  or check msys for  SFML2.
Versions you tried are totally outdated.

Thanks, it worked but now i have a diffrent problem :( maybe u can help me with this one to ?

nenin

Quote from: Qday on June 04, 2024, 02:39:26 PM
Quote
You probably have to try this "GCC 13.1.0 MinGW (SEH) - 64-bit" from here  https://www.sfml-dev.org/download/sfml/2.6.1/  or check msys for  SFML2.
Versions you tried are totally outdated.

Thanks, it worked but now i have a diffrent problem :( maybe u can help me with this one to ?
How did you link this DLL? Directly or using *.a file?

Qday

Quote
How did you link this DLL? Directly or using *.a file?

I dont know the terminology but the dll is in the same folder as my .exe file

stahta01

C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]

nenin

Quote from: Qday on June 04, 2024, 03:58:34 PM
Quote
How did you link this DLL? Directly or using *.a file?

I dont know the terminology but the dll is in the same folder as my .exe file
exe found dll, but dll did not provide required function. It means that you linked incorrect dll. Linking of the dll can be done in few manners for mingw gcc:
1. Static using interface lib with extension *.a
2. Static using dll by itself (from my experience  it is better)
3. Dynamic by call dll and function from the code.
Something is wrong in your case.

Qday

Quote from: stahta01 on June 04, 2024, 06:23:45 PM
Post the current full re-build log.
Edit: Add link to FAQ https://wiki.codeblocks.org/index.php?title=FAQ-Compiling_%28general%29#Q:_How_do_I_report_a_compilation_problem_on_the_forums.3F

Tim S.
Sorry for the late response. I hope you can still help me .


-------------- Clean: Debug in SFML_01 (compiler: GNU GCC Compiler)---------------

Cleaned "SFML_01 - Debug"

-------------- Build: Debug in SFML_01 (compiler: GNU GCC Compiler)---------------

g++.exe -Wall -g -IC:\Dev\SFML-2.6.1\include -c D:\CPP\SFML_01\main.cpp -o obj\Debug\main.o
g++.exe -LC:\Dev\SFML-2.6.1\lib -o bin\Debug\SFML_01.exe obj\Debug\main.o  -static -static-libgcc  -lsfml-audio-d -lsfml-graphics-d -lsfml-main-d -lsfml-network-d -lsfml-system-d -lsfml-window-d -mwindows
Output file is bin\Debug\SFML_01.exe with size 2.37 MB
Process terminated with status 0 (0 minute(s), 1 second(s))
0 error(s), 0 warning(s) (0 minute(s), 1 second(s))
Build log saved as:
file://D:/CPP/SFML_01/SFML_01_build_log.html




Is it what you were asking for?


stahta01

#9
That is the build log I was asking for.

Are you now using an Compiler that is compatible with the library? What compiler are you using?
Because I did not see a build error. Are you having a run-time problem?

Tim S.

C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]

Qday

Quote from: stahta01 on July 02, 2024, 04:18:25 AM
That is the build log I was asking for.

Are you now using an Compiler that is compatible with the library? What compiler are you using?
Because I did not see a build error. Are you having a run-time problem?

Tim S.

I just reinstaled my whole system. I'll try running SFML now. Gonna let you know how it goes later today. :) 

Qday

Quote from: Qday on July 02, 2024, 06:28:00 AM
Quote from: stahta01 on July 02, 2024, 04:18:25 AM
That is the build log I was asking for.

Are you now using an Compiler that is compatible with the library? What compiler are you using?
Because I did not see a build error. Are you having a run-time problem?

Tim S.

I just reinstaled my whole system. I'll try running SFML now. Gonna let you know how it goes later today. :)


Yea, so after formating my PC and doing everything from scratch im still having the same problem...

Im using MinGW-w64 compiler. On CB 20.03, Windows 11
SFML 2.6.1, GCC 13.1.0 MinGW (SEH) - 64-bit


C:\Windows\System32>gcc --version
gcc (Rev3, Built by MSYS2 project) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


C:\Windows\System32>g++ --version
g++ (Rev3, Built by MSYS2 project) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


C:\Windows\System32>gdb --version
GNU gdb (GDB) 14.1
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.



This is the code im trying to run:


#include <SFML/Graphics.hpp>
#include <cmath>

int main()
{
    sf::RenderWindow okno( sf::VideoMode( 320, 240 ), "Kurs SFML 2.0 - http://cpp0x.pl" );
    sf::Clock stoper;
    while( okno.isOpen() )
    {
        sf::Event event;
        while( okno.pollEvent( event ) )
        {
            if( event.type == sf::Event::Closed )
                 okno.close();
           
        } //while
        okno.clear();
       
        sf::CircleShape ksztalt( std::sin( stoper.getElapsedTime().asSeconds() ) * okno.getSize().y / 8 + okno.getSize().y / 4 );
        ksztalt.setOrigin( sf::Vector2f( ksztalt.getRadius(), ksztalt.getRadius() ) );
        ksztalt.setPosition( okno.getSize().x / 2.0f, okno.getSize().y / 2.0f );
        ksztalt.setFillColor( sf::Color::Yellow );
        okno.draw( ksztalt );
       
        okno.display();
    } //while
    return 0;
}

Build logs:

-------------- Clean: Debug in SFML_Project_01 (compiler: GNU GCC Compiler)---------------

Cleaned "SFML_Project_01 - Debug"

-------------- Build: Debug in SFML_Project_01 (compiler: GNU GCC Compiler)---------------

g++.exe -Wall -g -IC:\Dev\SFML-2.6.1\include -c D:\CPP\SFML_Project_01\main.cpp -o obj\Debug\main.o
g++.exe -LC:\Dev\SFML-2.6.1\lib -o bin\Debug\SFML_Project_01.exe obj\Debug\main.o  -static -static-libgcc -static-libstdc++  -lsfml-audio-d -lsfml-graphics-d -lsfml-main-d -lsfml-network-d -lsfml-system-d -lsfml-window-d -mwindows
Output file is bin\Debug\SFML_Project_01.exe with size 2.37 MB
Process terminated with status 0 (0 minute(s), 1 second(s))
0 error(s), 0 warning(s) (0 minute(s), 1 second(s))



And I did EVERYTHING that this(https://cpp0x.pl/kursy/Kurs-SFML-2-x-C++/Instalacja-i-konfiguracja/Konfiguracja-SFML-2-0-Code-Blocks/464) tutorial said to do.
My dll files are next to .exe file of my program.


My program is building right but can't run... Error i've got is in the attachments.

stahta01

#12
So, you have no reason to believe the compiler and library are compatible with each other!
Do you just wish to waste your time because I no longer plan to waste my time, goodbye!
Edit: If you wish to stop using the non compatible library and instead use the MSys2 MinGW library I am willing to help; but, continuing to waste time will result in me deciding you are an Help Vampire or a newbie unable to learn!

Tim S.

C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]

Qday

Quote from: stahta01 on July 02, 2024, 02:31:50 PM
So, you have no reason to believe the compiler and library are compatible with each other!
Do you just wish to waste your time because I no longer plan to waste my time, goodbye!
Edit: If you wish to stop using the non compatible library and instead use the MSys2 MinGW library I am willing to help; but, continuing to waste time will result in me deciding you are an Help Vampire or a newbie unable to learn!

Tim S.

Ofcourse I wish to "stop using the non compatible library" and im trying. For sure im not here to waste ur time. And im willing to learn.
Im searching for a solution right now.

stahta01

So, install SFML under the MSys2 environment you are using and change the CB project to use the library.

Which MSys2 environment you are using? I will try to create an CB Project.

Tim S.
C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]