The following issue resolved by reinstalling OS here.I had cgminer working beautifully and then one day I went did something stupid... I "upgraded" my software. Now typically you want to patch your computer to make sure there are no known exploits available to hackers who might want to hijack your machine. That is NOT the case with fragile systems like these bitcoin mining 'rigs'. If you have a working system, do yourself a favor and leave it the F alone.
Now, onto the problem. I cannot get OpenGL to work. I've tried several versions of Catalyst and they all seem to work fine but the OpenGL calls just seem to fail. So I started reading about Catalyst and found something very weird... looks like they took GPU support OUT of the SDK. Am I reading this correctly?
If they took out the GPU support how do I now compile the miner software?
Here's the beginning of my search for answers:
https://bitcointalksearch.org/topic/m.1711097My current status remains the same...
$ ./cgminer -n
[2013-03-31 14:05:49] CL Platform 0 vendor: Advanced Micro Devices, Inc.
[2013-03-31 14:05:49] CL Platform 0 name: AMD Accelerated Parallel Processing
[2013-03-31 14:05:49] CL Platform 0 version: OpenCL 1.1 AMD-APP-SDK-v2.4 (595.10)
[2013-03-31 14:05:49] Error -1: Getting Device IDs (num)
[2013-03-31 14:05:49] clDevicesNum returned error, no GPUs usable
[2013-03-31 14:05:49] 0 GPU devices max detected
Though under my current OS I can actually see multiple cards:
$ lspci -nn | grep VGA
06:00.0 VGA compatible controller [0300]: ATI Technologies Inc Barts XT [ATI Radeon HD 6800 Series] [1002:6738]
0e:00.0 VGA compatible controller [0300]: ATI Technologies Inc Barts XT [ATI Radeon HD 6800 Series] [1002:6738]
ATI *seems* fine:
$ aticonfig --lsa
* 0. 06:00.0 AMD Radeon HD 6800 Series
1. 0e:00.0 AMD Radeon HD 6800 Series
2. 07:00.0 AMD Radeon HD 6800 Series
3. 0f:00.0 AMD Radeon HD 6800 Series
* - Default adapter
But fglrx just will not work:
$ fglrxinfo
Error: unable to open display (null)
Oh yea, you think you figured it out? I wasn't setting my display?
$ fglrxinfo
Error: unable to open display (null)
$ export DISPLAY=:0
$ fglrxinfo
X Error of failed request: BadRequest (invalid request code or no such operation)
Major opcode of failed request: 139 (ATIFGLEXTENSION)
Minor opcode of failed request: 66 ()
Serial number of failed request: 13
Current serial number in output stream: 13
Here's one I haven't seen before:
./cgminer -n
Setting of real/effective user Id to 0/0 failed
FATAL: Module fglrx not found.
Error! Fail to load fglrx kernel module! Maybe you can switch to root user to load kernel module directly
X Error of failed request: BadRequest (invalid request code or no such operation)
Major opcode of failed request: 136 ()
Minor opcode of failed request: 19
Serial number of failed request: 12
Current serial number in output stream: 12
After reading about SDK's after 12.8 not offering GPU support I checked and found indeed they are not there!:
$ ldconfig -p | grep AMD
libglut.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libglut.so
libglut.so (libc6) => /opt/AMDAPP/lib/x86/libglut.so
libGLEW.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libGLEW.so
libGLEW.so (libc6) => /opt/AMDAPP/lib/x86/libGLEW.so
libAMDXvBA.so.1 (libc6,x86-64) => /usr/lib64/libAMDXvBA.so.1
libAMDXvBA.so.1 (libc6) => /usr/lib/libAMDXvBA.so.1
Compared to a known working system:
$ ldconfig -p | grep AMD
libglut.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libglut.so
libglut.so (libc6) => /opt/AMDAPP/lib/x86/libglut.so
libamdocl64.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libamdocl64.so
libamdocl32.so (libc6) => /opt/AMDAPP/lib/x86/libamdocl32.so
libOpenCL.so.1 (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libOpenCL.so.1
libOpenCL.so.1 (libc6) => /opt/AMDAPP/lib/x86/libOpenCL.so.1
libOpenCL.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libOpenCL.so
libOpenCL.so (libc6) => /opt/AMDAPP/lib/x86/libOpenCL.so
libGLEW.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libGLEW.so
libGLEW.so (libc6) => /opt/AMDAPP/lib/x86/libGLEW.so
libAMDXvBA.so.1 (libc6,x86-64) => /usr/lib64/libAMDXvBA.so.1
libAMDXvBA.so.1 (libc6) => /usr/lib/libAMDXvBA.so.1
Unfortunately getting those to match did not fix my problem:
Working:
ldconfig -p | grep AMD
libglut.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libglut.so
libglut.so (libc6) => /opt/AMDAPP/lib/x86/libglut.so
libamdocl64.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libamdocl64.so
libamdocl32.so (libc6) => /opt/AMDAPP/lib/x86/libamdocl32.so
libOpenCL.so.1 (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libOpenCL.so.1
libOpenCL.so.1 (libc6) => /opt/AMDAPP/lib/x86/libOpenCL.so.1
libOpenCL.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libOpenCL.so
libOpenCL.so (libc6) => /opt/AMDAPP/lib/x86/libOpenCL.so
libGLEW.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libGLEW.so
libGLEW.so (libc6) => /opt/AMDAPP/lib/x86/libGLEW.so
libAMDXvBA.so.1 (libc6,x86-64) => /usr/lib64/libAMDXvBA.so.1
libAMDXvBA.so.1 (libc6) => /usr/lib/libAMDXvBA.so.1
Not Working:
ldconfig -p | grep AMD
libglut.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libglut.so
libglut.so (libc6) => /opt/AMDAPP/lib/x86/libglut.so
libamdocl64.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libamdocl64.so
libamdocl32.so (libc6) => /opt/AMDAPP/lib/x86/libamdocl32.so
libOpenCL.so.1 (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libOpenCL.so.1
libOpenCL.so.1 (libc6) => /opt/AMDAPP/lib/x86/libOpenCL.so.1
libOpenCL.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libOpenCL.so
libOpenCL.so (libc6) => /opt/AMDAPP/lib/x86/libOpenCL.so
libGLEW.so (libc6,x86-64) => /opt/AMDAPP/lib/x86_64/libGLEW.so
libGLEW.so (libc6) => /opt/AMDAPP/lib/x86/libGLEW.so
libAMDXvBA.so.1 (libc6,x86-64) => /usr/lib64/libAMDXvBA.so.1
libAMDXvBA.so.1 (libc6) => /usr/lib/libAMDXvBA.so.1
Now I've identified another mismatch between the working and non-working systems...
Working:
$ glxinfo| grep -i version
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
OpenGL version string: 4.2.11566 Compatibility Profile Context
OpenGL shading language version string: 4.20
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
OpenGL version string: 4.2.11566 Compatibility Profile Context
OpenGL shading language version string: 4.20
Not Working:
$ glxinfo| grep -i version
server glx version string: 1.2
client glx version string: 1.4
GLX version: 1.2
OpenGL version string: 1.2 (4.2.11631 Compatibility Profile Context)
Anyone have a good handle on What GLX version is tied to What Catalyst package?Happy to reformat and start again with any known working configuration of multiple GPU's operating cleanly under Linux.
Working to set up some documentation and test ideas
here.
Any and all help appreciated.
The previous issue was resolved by reinstalling OS here.