Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
16556 Discussions

implicit declaration of function ‘send_sig_info’ error

Altera_Forum
Honored Contributor II
4,276 Views

Hi, 

 

I am a student. I want to use OPenCL to write code for my FPGA. I installed FPGA SDK standard edition 17.1 in Ubuntu 16.04. After that I installed intel fpga runtime environment for opencl linux x86-64. After sourcing the script init_opencl.s, I was able to verify my installation using 'aocl version' command. After that I tried to install an FPGA board. So I tried the command 'aocl install' command. 

 

It stopped with an error saying/tmp/opencl_driver_tf7ebm/aclpci.c:343:17: error: implicit declaration of function ‘send_sig_info’ [-werror=implicit-function-declaration] int ret = send_sig_info(aclpci->signal_number, &aclpci->signal_info, aclpci- 

 

Complete output of the command: 

 

 

/media/deepak/82d940f9-6526-47c8-8053-79204d78529f/deepak/intelFPGA/17.1/aclrte-linux64/board/a10_ref? y aocl install: Running install from /media/deepak/82d940f9-6526-47c8-8053-79204d78529f/deepak/intelFPGA/17.1/aclrte-linux64/board/a10_ref/linux64/libexec /media/deepak/82d940f9-6526-47c8-8053-79204d78529f/deepak/intelFPGA/17.1/aclrte-linux64/board/a10_ref/linux64/libexec/install: 9: /tmp/opencl_driver_tF7ebM/aclpci_queue.o CC /tmp/opencl_driver_tF7ebM/aclpci.o /tmp/opencl_driver_tF7ebM/aclpci.c: In function ‘aclpci_irq’: /tmp/opencl_driver_tF7ebM/aclpci.c:343:17: error: implicit declaration of function ‘send_sig_info’ int ret = send_sig_info(aclpci->signal_number, &aclpci->signal_info, aclpci- ^ cc1: some warnings being treated as errors scripts/Makefile.build:308: recipe for target '/tmp/opencl_driver_tF7ebM/aclpci.o' failed make: *** Error 1 Makefile:1550: recipe for target '_module_/tmp/opencl_driver_tF7ebM' failed make: *** Error 2 make: Leaving directory '/usr/src/linux-headers-4.13.0-36-generic' aocl install: failed. deepak@deepak:deepak$ aocl install  

 

 

Help me out. 

 

Regards 

Deepak
0 Kudos
6 Replies
Altera_Forum
Honored Contributor II
2,291 Views

Ubuntu is not officially supported by the Intel FPGA SDK for OpenCL, and even though kernel compilation might work correct, the PCI-E driver likely won't (as is your case): 

 

http://dl.altera.com/requirements/17.1/ 

 

I recommend using a supported operating system. 

 

If you insist on using Ubuntu, you can take a look at this thread and see if the provided solution works for you: 

 

http://www.alteraforum.com/forum/showthread.php?t=56568
0 Kudos
Altera_Forum
Honored Contributor II
2,291 Views

Thanks. I have now installed it in Windows 10. But the problem now is that aoc command is compiling a hello world program for DE2 board for 2.5 hours. 

 

The command I used: 

aoc device\hello_world.cl -o bin\hello_world.aocx --board de5net_a7 

 

hello_world.aocx content: 

 

// AOC kernel demonstrating device-side printf call 

 

__kernel void hello_world(int thread_id_from_which_to_print_message) { 

// Get index of the work item 

unsigned thread_id = get_global_id(0); 

 

if(thread_id == thread_id_from_which_to_print_message) { 

printf("Thread# %u: Hello from Altera's OpenCL Compiler!\n", thread_id); 

 

The following is message after executing the above command: 

Warning: Please use -board=<value> instead of --board <value> 

aoc: Running OpenCL parser.... 

aoc: Optimizing and doing static analysis of code... 

Compiling for FPGA. This process may take a long time, please be patient. 

 

 

 

Still the compilation has not stopped.
0 Kudos
Altera_Forum
Honored Contributor II
2,291 Views

Depending on the characteristics of your machine (CPU speed, memory size, etc.) the compilation could take multiple hours.

0 Kudos
Altera_Forum
Honored Contributor II
2,291 Views

Okay I understand. The reason why asked is that the kernel code looks simple and yet it took lot of time. That is why I asked. Thanks anyway

0 Kudos
EBozo
Beginner
2,291 Views

This happened to me and my solution is

Add #include <linux/sched/signal.h> to the aclpci.h file.

The location of the prototype, send_sig_info, changed, which is not in linux/sched.hanymore for the newer kernel, so that it failed to compile.

 

https://forums.intel.com/s/question/0D50P00003yyTBTSA2/de5net-opencl-support-on-ubuntu-1610?t=1541575434952

 

JMilt1
Beginner
2,291 Views

EBozo's fix also worked for me - thanks! Much better than Altera's response of 'Ubuntu not supported' 🙂

0 Kudos
Reply