Open Elmo299 opened 2 years ago
Remove the brace on the end of line 186 of utils.c. It will compile with warnings but no errors.
Remove the brace on the end of line 186 of utils.c. It will compile with warnings but no errors.
I seem to get a different problem, I just get one error "gcc: error: unrecognized command-line option ‘-cl-std=CL1.2’"
and then when I correct the line in src_OpenCL/Makefile to -lOpenCL I get fatal errors...
I have spend the last 8 days trying to build Bitcracker OpenCL, used different platforms with all the same results...
First, I am not a coder...
The first errors where in the Utils.c file, compared it with the Utils.c from src_Cuda and filled up the missing lines. So it now jumps to Main.c and gives coding errors, compared to Cuda Main, but unclear to me what it means...
====== Build BitCracker OpenCL version ====== rm -rf .o rm -rf bitcracker_opencl gcc -I/usr/include -L/usr/lib64 -L/usr/lib -I/opt/intel/oneapi/lib/include -L/opt/intel/oneapi/lib/intel64 -lOpenCL -O3 -Wextra -o bitcracker_opencl main.c opencl_attack.c utils.c w_blocks.c -lOpenCL In file included from /usr/include/CL/cl.h:20, from bitcracker.h:37, from main.c:22: /usr/include/CL/cl_version.h:22:9: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’ 22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)") | ^
~~ main.c: In function ‘checkDeviceStatistics’: main.c:101:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘cl_uint’ {aka ‘unsigned int’} [-Wsign-compare] 101 | for (i = 0; i < platformCount; i++) | ^ main.c:110:31: warning: comparison of integer expressions of different signedness: ‘int’ and ‘cl_uint’ {aka ‘unsigned int’} [-Wsign-compare] 110 | for (j = 0; j < deviceCount; j++) | ^ main.c: In function ‘createClCtx’: main.c:261:9: warning: ‘clCreateCommandQueue’ is deprecated [-Wdeprecated-declarations] 261 | cqCommandQueue = clCreateCommandQueue(cxGPUContext, cdDevices[gpu_id], 0, &clErr); | ^~~~~~ In file included from bitcracker.h:37, from main.c:22: /usr/include/CL/cl.h:1906:1: note: declared here 1906 | clCreateCommandQueue(cl_context context, | ^~~~~~~~ In file included from /usr/include/CL/cl.h:20, from bitcracker.h:37, from opencl_attack.c:22: /usr/include/CL/cl_version.h:22:9: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’ 22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)") | ^~~ opencl_attack.c: In function ‘opencl_attack’: opencl_attack.c:278:18: warning: ‘d_macIV’ may be used uninitialized in this function [-Wmaybe-uninitialized] 278 | ciErr1 = clEnqueueWriteBuffer(cqCommandQueue, d_macIV, CL_TRUE, 0, IV_SIZEsizeof(char), macIV, 0, NULL, NULL); | ^~~~~~~~~~~~~~~~~~~~~opencl_attack.c:281:18: warning: ‘d_computeMacIV’ may be used uninitialized in this function [-Wmaybe-uninitialized] 281 | ciErr1 = clEnqueueWriteBuffer(cqCommandQueue, d_computeMacIV, CL_TRUE, 0, IV_SIZE*sizeof(char), computeMacIV, 0, NULL, NULL); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/CL/cl.h:20, from bitcracker.h:37, from utils.c:22: /usr/include/CL/cl_version.h:22:9: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’ 22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)") | ^~~ utils.c: In function ‘parse_data’: utils.c:208:17: warning: ‘fphash’ may be used uninitialized in this function [-Wmaybe-uninitialized] 208 | fclose(fphash); | ^~~~~~ In file included from /usr/include/CL/cl.h:20, from bitcracker.h:37, from w_blocks.c:22: /usr/include/CL/cl_version.h:22:9: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’ 22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)") | ^~~ w_blocks.c: In function ‘w_block_precomputed’: w_blocks.c:160:28: warning: ‘ckKernelWBlocks’ may be used uninitialized in this function [-Wmaybe-uninitialized] 160 | if(ckKernelWBlocks)clReleaseKernel(ckKernelWBlocks); | ^~~~~~~~ w_blocks.c:161:18: warning: ‘cpProgram’ may be used uninitialized in this function [-Wmaybe-uninitialized] 161 | if(cpProgram)clReleaseProgram(cpProgram); | ^~~~~~~ /usr/bin/ld: warning: libsvml.so, needed by /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/libOpenCL.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libirng.so, needed by /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/libOpenCL.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libimf.so, needed by /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/libOpenCL.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libintlc.so.5, needed by /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/libOpenCL.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/libOpenCL.so: undefined reference to `_intel_fast_memset' collect2: error: ld returned 1 exit status make: *** [Makefile:9: all] Error 1