First sorry for my bad English and for the big post.
English is not my main language and I have not found a "spoiler" or similar function
I have the same problem here with an Archlinux guest on Oracle Virtuablox VM. I'm using SFML 2.0
I have to report a weird thing : my program works well on another PC with the same VM (imported from my main PC) provided that 3D acceleration is disabled.
The problem is so strange that it may be out of the SFML scope but I will provide everyhting I have.
I will stick to the fact to I won't be able to us 3D acceleration, so everything that follows is without that.
Here is the exact error, on any SFML app (mine as well as examples one) without 3D acceleration:
libGL error: pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: Failed to connect to host. Make sure 3D acceleration is enabled for this VM.
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
Illegal instruction (core dumped)
So i tried GDB, but it didn't help :
(gdb) run
...
libGL error: pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: Failed to connect to host. Make sure 3D acceleration is enabled for this VM.
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
Program received signal SIGILL, Illegal instruction.
0xb40a10a4 in ?? ()
(gdb) bt
Python Exception <class 'gdb.MemoryError'> Cannot access memory at address 0x48:
#0 0xb40a10a4 in ?? ()
Cannot access memory at address 0x48
(gdb) frame 0
#0 0xb40a10a4 in ?? ()
(gdb) info frame
Stack level 0, frame at 0x4c:
eip = 0xb40a10a4; saved eip = <error: Cannot access memory at address 0x48> called by frame at frame.c:472: internal-error: get_frame_id: Assertion `fi->this_id.p' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) n
Then I tried valgrind and after a memory error report,
the SFML window opens and displays everything correctly. No more Illegal Instruction error. I don't know how valgrind works so I can't tell if it's normal or not.
Here is the memory error reported by valgrind :
> valgrind ./game
==372== Memcheck, a memory error detector
==372== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==372== Using Valgrind-3.9.0 and LibVEX; rerun with -h for copyright info
==372== Command: ./game
==372==
libGL error: pci id for fd 4: 80ee:beef, driver (null)
==372== Conditional jump or move depends on uninitialised value(s)
==372== at 0x4FBCD10: crGetProcName (in /usr/lib/VBoxOGLcrutil.so)
==372== by 0x4EC7964: ??? (in /usr/lib/VBoxOGL.so)
==372== by 0x4EC7EC4: ??? (in /usr/lib/VBoxOGL.so)
==372== by 0x4EB86EB: ??? (in /usr/lib/VBoxOGL.so)
==372== by 0x400ECBD: call_init.part.0 (in /usr/lib/ld-2.19.so)
==372== by 0x400EDB3: _dl_init (in /usr/lib/ld-2.19.so)
==372== by 0x4012DBD: dl_open_worker (in /usr/lib/ld-2.19.so)
==372== by 0x400EB65: _dl_catch_error (in /usr/lib/ld-2.19.so)
==372== by 0x40125B3: _dl_open (in /usr/lib/ld-2.19.so)
==372== by 0x4855CBB: ??? (in /usr/lib/libdl-2.19.so)
==372== by 0x400EB65: _dl_catch_error (in /usr/lib/ld-2.19.so)
==372== by 0x485637B: ??? (in /usr/lib/libdl-2.19.so)
==372==
OpenGL Warning: Failed to connect to host. Make sure 3D acceleration is enabled for this VM.
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
I have done some tests with 3D acceleration enabled but had not enough time to finish, I have the same errors on my second PC. I did try valgrind earlier but I don't remember it helped.
libGL error: pci id for fd 4: 80ee:beef, driver (null)
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
libGL error: core dri or dri2 extension not found
libGL error: failed to load driver: vboxvideo
Segmentation fault (core dumped)
GDB:
>gdb game
(gdb) run
...
Program received signal SIGSEGV, Segmentation fault.
0xb7cc22f1 in __printf_fp () from /usr/lib/libc.so.6
(gdb) bt
#0 0xb7cc22f1 in __printf_fp () from /usr/lib/libc.so.6
#1 0xb7cbc0a7 in vfprintf () from /usr/lib/libc.so.6
#2 0xb7cde812 in vsprintf () from /usr/lib/libc.so.6
#3 0xb7cc517f in sprintf () from /usr/lib/libc.so.6
#4 0xb7203b09 in ?? () from /usr/lib/VBoxOGLpackspu.so
#5 0xb74c5e74 in ?? () from /usr/lib/xorg/modules/dri/vboxvideo_dri.so
#6 0xb7f76100 in ?? () from /usr/lib/libsfml-window.so.2
#7 0xb7f765d6 in sf::GlResource::GlResource() ()
from /usr/lib/libsfml-window.so.2
#8 0xb7f77c2d in sf::Window::Window() () from /usr/lib/libsfml-window.so.2
#9 0xb7fb6531 in sf::RenderWindow::RenderWindow(sf::VideoMode, sf::String const&, unsigned int, sf::ContextSettings const&) () from /usr/lib/libsfml-graphics.so.2
#10 0x08049978 in __cxx_global_var_init3 () at main.cpp:7
#11 0x08049a2a in global constructors keyed to a () at main.cpp:41
#12 0x0804dec2 in __libc_csu_init ()
#13 0xb7c9192a in __libc_start_main () from /usr/lib/libc.so.6
#14 0x08049a50 in _start ()
(gdb)
That's all. I hope this can help.