Halcompile: stdio.h no such file or directory
- AndrewHsasku
- Offline
- Junior Member
Less
More
- Posts: 23
- Thank you received: 0
20 Dec 2017 17:17 #103392
by AndrewHsasku
Halcompile: stdio.h no such file or directory was created by AndrewHsasku
I would create Hal driver for serial port communication. I would use open function that is in stdio.h.
Compiling driver with #include <stdio.h> usingprints:
What to do?
Compiling driver with #include <stdio.h> using
halcompile --install driver.c
make KBUILD_EXTRA_SYMBOLS=/usr/realtime-3.4-9-rtai-686-pae/modules/linuxcnc/Module.symvers -C /usr/src/linux-headers-3.4-9-rtai-686-pae SUBDIRS=`pwd` CC=gcc V=0 modules
make[1]: Entering directory `/usr/src/linux-headers-3.4-9-rtai-686-pae'
CC [M] /tmp/tmpqrHbhd/driver.o
/tmp/tmpqrHbhd/driver.c:13:19: fatal error: stdio.h: No such file or directory
compilation terminated.
make[4]: *** [/tmp/tmpqrHbhd/driver.o] Error 1
make[3]: *** [_module_/tmp/tmpqrHbhd] Error 2
make[2]: *** [sub-make] Error 2
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.4-9-rtai-686-pae'
make: *** [modules] Error 2
What to do?
Please Log in or Create an account to join the conversation.
- AndrewHsasku
- Offline
- Junior Member
Less
More
- Posts: 23
- Thank you received: 0
20 Dec 2017 17:32 #103393
by AndrewHsasku
Replied by AndrewHsasku on topic Halcompile: stdio.h no such file or directory
UsingResults in:undefined reference to `hal_export_funct' is a problem
sudo halcompile --install --userspace driver.c
gcc -Os -g -I. -I/usr/realtime-3.4-9-rtai-686-pae/include -I. -I/usr/realtime-3.4-9-rtai-686-pae/include -I/usr/include/i386-linux-gnu -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0 -fno-math-errno -funsafe-math-optimizations -fno-rounding-math -fno-signaling-nans -fcx-limited-range -mhard-float -DRTAI=3 -fno-fast-math -mieee-fp -fno-unsafe-math-optimizations -DRTAPI -D_GNU_SOURCE -Drealtime -D__MODULE__ -I/usr/include/linuxcnc -Wframe-larger-than=2560 -URTAPI -U__MODULE__ -DULAPI -Os -o driver /tmp/tmpNAGuWQ/driver.c -Wl,-rpath,/lib -L/lib -llinuxcnchal
/usr/lib/gcc/i486-linux-gnu/4.7/../../../i386-linux-gnu/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
/tmp/ccwZbC2U.o: In function `rtapi_app_main':
/tmp/tmpNAGuWQ/driver.c:68: undefined reference to `hal_export_funct'
/tmp/tmpNAGuWQ/driver.c:75: undefined reference to `hal_export_funct'
collect2: error: ld returned 1 exit status
make: *** [driver] Error 1
Please Log in or Create an account to join the conversation.
24 Dec 2017 01:00 #103504
by andypugh
Replied by andypugh on topic Halcompile: stdio.h no such file or directory
Rather than using #include in the C code you could try using the "include" command above the ;; marker in the comp.
(This is undocumented, but you can find it in the halcompile source:
github.com/LinuxCNC/linuxcnc/blob/master...ils/halcompile.g#L46 )
If you use --preprocess you will see the difference between the two: A #include in the C-code ends up further down the file than the declarations that need it.
It _still_ might not work, but it is worth a try.
(This is undocumented, but you can find it in the halcompile source:
github.com/LinuxCNC/linuxcnc/blob/master...ils/halcompile.g#L46 )
If you use --preprocess you will see the difference between the two: A #include in the C-code ends up further down the file than the declarations that need it.
It _still_ might not work, but it is worth a try.
Please Log in or Create an account to join the conversation.
- AndrewHsasku
- Offline
- Junior Member
Less
More
- Posts: 23
- Thank you received: 0
24 Dec 2017 01:03 #103505
by AndrewHsasku
Replied by AndrewHsasku on topic Halcompile: stdio.h no such file or directory
I ve read about it before posting this topic - did not work.
Installing debian on own with Preempt-RT kernel was a solution.
Installing debian on own with Preempt-RT kernel was a solution.
Please Log in or Create an account to join the conversation.
24 Dec 2017 10:44 #103531
by andypugh
Replied by andypugh on topic Halcompile: stdio.h no such file or directory
Thinking further: You probably don't want stdio.h anyway.
For a realtime module you want the guaranteed-threadsafe things from rtapi.
linuxcnc.org/docs/2.7/html/man/man3/intro.3rtapi.html
The list is at the bottom of linuxcnc.org/docs/2.7/html/
You probably wanted linuxcnc.org/docs/2.7/html/man/man3/rtapi_print.3rtapi.html
For a realtime module you want the guaranteed-threadsafe things from rtapi.
linuxcnc.org/docs/2.7/html/man/man3/intro.3rtapi.html
The list is at the bottom of linuxcnc.org/docs/2.7/html/
You probably wanted linuxcnc.org/docs/2.7/html/man/man3/rtapi_print.3rtapi.html
Please Log in or Create an account to join the conversation.
- AndrewHsasku
- Offline
- Junior Member
Less
More
- Posts: 23
- Thank you received: 0
24 Dec 2017 11:31 #103538
by AndrewHsasku
Replied by AndrewHsasku on topic Halcompile: stdio.h no such file or directory
I do not care about real-timing. Latencies like 20ms are absolutely ok.
I would use usb-uart device and communicate with it via linuxcnc.
I would use usb-uart device and communicate with it via linuxcnc.
Please Log in or Create an account to join the conversation.
24 Dec 2017 13:36 #103545
by andypugh
Not if it is a realtime component. The realtime components run one at a time in sequence. If your component blocks for 20mS then everything else stops too.
If it is a userspace component, (option userspace) then this is not a problem.
Replied by andypugh on topic Halcompile: stdio.h no such file or directory
I do not care about real-timing. Latencies like 20ms are absolutely ok.
Not if it is a realtime component. The realtime components run one at a time in sequence. If your component blocks for 20mS then everything else stops too.
If it is a userspace component, (option userspace) then this is not a problem.
Please Log in or Create an account to join the conversation.
- AndrewHsasku
- Offline
- Junior Member
Less
More
- Posts: 23
- Thank you received: 0
24 Dec 2017 13:50 #103547
by AndrewHsasku
Replied by AndrewHsasku on topic Halcompile: stdio.h no such file or directory
How to create such, non python, component? Any example?
Please Log in or Create an account to join the conversation.
24 Dec 2017 15:37 #103554
by andypugh
Replied by andypugh on topic Halcompile: stdio.h no such file or directory
Here is an example
github.com/LinuxCNC/linuxcnc/blob/af15a4...cs/src/hal/rand.comp
You need the user_mainloop and you can cycle though all the instances with the FOR_ALL_INSTS macro.
github.com/LinuxCNC/linuxcnc/blob/af15a4...cs/src/hal/rand.comp
You need the user_mainloop and you can cycle though all the instances with the FOR_ALL_INSTS macro.
Please Log in or Create an account to join the conversation.
Time to create page: 0.077 seconds