All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
* undefined reference to `rt_task_create
@ 2019-12-04 11:01 Electronic Dept. - Vbm Group
  2019-12-04 11:10 ` Jan Kiszka
  0 siblings, 1 reply; 11+ messages in thread
From: Electronic Dept. - Vbm Group @ 2019-12-04 11:01 UTC (permalink / raw
  To: xenomai

Goodmorning,
I'm using a Beaglebone black and I'm doing the first tests with Xenomai.
I've created a kernel patched with Xenomai from here:
https://github.com/RobertCNelson/ti-linux-kernel-dev/tree/ti-linux-xenomai-4.4.y
and installed Xenomai libraries following:
https://forum.digikey.com/t/how-to-cross-compile-application-for-xenomai-with-beaglebone/4943/3


I've made a test file named cyclic_test.c and the following Makefile:

MAIN_SRC= cyclic_test
TARGET    = cyclic_test

SKIN     := alchemy
CFLAGS     := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --cflags)
LDFLAGS := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --ldflags)
CC     := $(shell /usr/xenomai/bin/xeno-config --cc)

$(TARGET): $(MAIN_SRC).c
     $(CC) -o $@ $< $(CFLAGS) $(LDFLAGS)

clean:
     @rm $(MAIN_SRC)


And I get the following response:

gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt 
-I/usr/xenomai/in
clude -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE -D_REENTRANT 
-fasynchronous-unwind
-tables -D__COBALT__ -Wl,--no-as-needed 
-Wl,@/usr/xenomai/lib/modechk.wrappers
/usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main 
-Wl,--dynamic-list=/usr/xen
omai/lib/dynlist.ld -L/usr/xenomai/lib -lcobalt -lmodechk -lpthread -lrt 
-march=
armv7-a -mfpu=vfp3
/tmp/ccNmb1Fm.o: In function `rt_timer_read':
cyclic_test.c:(.text+0xe): undefined reference to `clockobj_get_time'
cyclic_test.c:(.text+0x20): undefined reference to `alchemy_clock'
/tmp/ccNmb1Fm.o: In function `loop_task_proc':
cyclic_test.c:(.text+0x32): undefined reference to `rt_task_self'
cyclic_test.c:(.text+0x40): undefined reference to `rt_task_inquire'
cyclic_test.c:(.text+0x76): undefined reference to `rt_task_set_periodic'
cyclic_test.c:(.text+0xc4): undefined reference to `rt_task_wait_period'
/tmp/ccNmb1Fm.o: In function `main':
cyclic_test.c:(.text+0x11c): undefined reference to `rt_task_create'
cyclic_test.c:(.text+0x12e): undefined reference to `rt_task_start'
collect2: error: ld returned 1 exit status
Makefile:10: recipe for target 'cyclic_test' failed
make: *** [cyclic_test] Error 1

Can you advise me plase?
Thank you very much.

Best Regards
Davide Brunelli

*Electronic Vbm Group*
e-mail: electronic2@vbm-grp.com <mailto:electronic2@vbm-grp.com>

Vbm Group <http://service.vbm-grp.com/signature/logogrp.png>


Vbm Group Vbm Group Vbm Group


*Vbm Group is a trademark of VI.BE.MAC S.p.a.*

*Declaration according to Law No. 196 of 30 June 2003*
We hereby inform you that your data will be treated automatically, 
according to the current security regulations for written 
correspondence; your data will not be spread by Vi.Be.Mac. Spa. In any 
way, as far as your data are concerned, you have the rights indicated in 
art. No. 13 L. 675/1996 (such as access, cancellation, modification, 
objection, etc.). Vi.Be.Mac. Spa. Is the holder of treatment of your 
data. Vi.Be.Mac. is located in via Monte Pastello, 7/i (Vr) Italy. For 
further information, please write to: privacy@vibemac.com According to 
Art. No. 13 of law 196/2003, in any moment and free of any charge you 
have the right to deny the use of your personal data to send you written 
correspondence. You just have to advise about this by writing to: 
privacy@vibemac.com


*Informativa ai sensi del d.lgs n. 196, 30.6.2003*
I suoi dati saranno trattati in forma automatizzata, nel rispetto delle 
idonee misure di sicurezza, per l'invio di comunicazioni e non saranno 
soggetti a diffusione all'esterno di Vi.Be.Mac. Spa. In relazione al 
trattamento dei dati, potrà esercitare i diritti (accesso,cancellazione, 
rettifica, opposizione, etc.) specificamente previsti dall'art. 13 L. 
675/1996 e nelle modalità ivi contemplate. Titolare del trattamento dei 
dati è Vi.Be.Mac. Spa, con sede legale in San Giovanni Lupatoto (Vr) via 
Monte Pastello 7/i. Per informazioni scrivere a privacy@vibemac.com Ai 
sensi dell'art. 13 del d.lgs. 196/2003, potrà opporsi in ogni momento, 
in via gratuita, al trattamento dei suoi dati al fine dell'invio di 
analoghe comunicazioni a mezzo di posta elettronica, semplicemente 
comunicandocelo all'indirizzo e-mail privacy@vibemac.com Qualsiasi 
utilizzo non autorizzato del presente messaggio nonchè dei suoi allegati 
è vietato e potrebbe costituire reato. Se lei ha ricevuto erroneamente 
il presente messaggio, Le saremmo grati se via e-mail ce ne comunicasse 
la ricezione e provvedesse alla distruzione del messaggio stesso e dei 
suoi eventuali allegati.

VI.BE.MAC s.p.a. - 37057 S. GIOVANNI LUPATOTO (VR) ITALY - Via Monte 
Pastello, 7/i - Tel. +39 045 8778151/52 - Fax +39 045 8779024 - Cod. 
Fisc./Partita IVA 01264050236- Cap. Soc. Euro 2.000.000,00 int. Vers. - 
Reg. Imprese di VERONA N. 01264050236 - REA N. 170441
Società soggetta a direzione e coordinamento di Jack Europe S.à.r.l.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
  2019-12-04 11:01 Electronic Dept. - Vbm Group
@ 2019-12-04 11:10 ` Jan Kiszka
  0 siblings, 0 replies; 11+ messages in thread
From: Jan Kiszka @ 2019-12-04 11:10 UTC (permalink / raw
  To: Electronic Dept. - Vbm Group, xenomai

On 04.12.19 12:01, Electronic Dept. - Vbm Group via Xenomai wrote:
> Goodmorning,
> I'm using a Beaglebone black and I'm doing the first tests with Xenomai.
> I've created a kernel patched with Xenomai from here:
> https://github.com/RobertCNelson/ti-linux-kernel-dev/tree/ti-linux-xenomai-4.4.y
> 
> and installed Xenomai libraries following:
> https://forum.digikey.com/t/how-to-cross-compile-application-for-xenomai-with-beaglebone/4943/3
> 
> 
> 
> I've made a test file named cyclic_test.c and the following Makefile:
> 
> MAIN_SRC= cyclic_test
> TARGET    = cyclic_test
> 
> SKIN     := alchemy
> CFLAGS     := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --cflags)
> LDFLAGS := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --ldflags)
> CC     := $(shell /usr/xenomai/bin/xeno-config --cc)
> 
> $(TARGET): $(MAIN_SRC).c
>     $(CC) -o $@ $< $(CFLAGS) $(LDFLAGS)
> 
> clean:
>     @rm $(MAIN_SRC)
> 
> 
> And I get the following response:
> 
> gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt
> -I/usr/xenomai/in
> clude -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE -D_REENTRANT
> -fasynchronous-unwind
> -tables -D__COBALT__ -Wl,--no-as-needed
> -Wl,@/usr/xenomai/lib/modechk.wrappers
> /usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main
> -Wl,--dynamic-list=/usr/xen
> omai/lib/dynlist.ld -L/usr/xenomai/lib -lcobalt -lmodechk -lpthread -lrt
> -march=
> armv7-a -mfpu=vfp3
> /tmp/ccNmb1Fm.o: In function `rt_timer_read':
> cyclic_test.c:(.text+0xe): undefined reference to `clockobj_get_time'
> cyclic_test.c:(.text+0x20): undefined reference to `alchemy_clock'
> /tmp/ccNmb1Fm.o: In function `loop_task_proc':
> cyclic_test.c:(.text+0x32): undefined reference to `rt_task_self'
> cyclic_test.c:(.text+0x40): undefined reference to `rt_task_inquire'
> cyclic_test.c:(.text+0x76): undefined reference to `rt_task_set_periodic'
> cyclic_test.c:(.text+0xc4): undefined reference to `rt_task_wait_period'
> /tmp/ccNmb1Fm.o: In function `main':
> cyclic_test.c:(.text+0x11c): undefined reference to `rt_task_create'
> cyclic_test.c:(.text+0x12e): undefined reference to `rt_task_start'
> collect2: error: ld returned 1 exit status
> Makefile:10: recipe for target 'cyclic_test' failed
> make: *** [cyclic_test] Error 1
> 
> Can you advise me plase?
> Thank you very much.

You are missing "-lalchemy" in your linker flags. Normally, xeno-config
--skin=alchemy --ldflags returns this, at least for me here with both
latest stable and the 3.1-rc. What version are you using?

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
       [not found] <d3c4d944-807a-a2d4-7ec1-2d1639f36f78@vbm-grp.com>
@ 2019-12-05  7:35 ` Electronic Dept. - Vbm Group
  2019-12-05  7:44   ` Jan Kiszka
  0 siblings, 1 reply; 11+ messages in thread
From: Electronic Dept. - Vbm Group @ 2019-12-05  7:35 UTC (permalink / raw
  To: xenomai

Hello Jan,

thank you for your answer.

My Xenomai version is:

Xenomai/cobalt v3.0.9 -- #5b99a61 (2019-11-04 19:44:03 +0100)

My kernel version is:

Linux arm 4.4.113-ti-xenomai-r149.1 #1 SMP Mon Oct 21 11:55:55 CEST 2019 
armv7l GNU/Linux

If it can be useful the result of xeno-test is:

Started child 676: /bin/bash /usr/xenomai/bin/xeno-test-run-wrapper 
./xeno-test
++ echo 0
++ testdir=/usr/xenomai/bin
++ /usr/xenomai/bin/smokey --run
arith OK
bufp skipped (no kernel support)
cpu_affinity OK
iddp skipped (no kernel support)
leaks OK
net_packet_dgram skipped (no kernel support)
net_packet_raw skipped (no kernel support)
net_udp skipped (no kernel support)
posix_clock OK
posix_cond OK
posix_fork OK
mutex_trylock not supported
posix_mutex OK
posix_select OK
rtdm skipped (no kernel support)
sched_quota skipped (no kernel support)
sched_tp skipped (no kernel support)
setsched OK
sigdebug skipped (no kernel support)
timerfd OK
tsc OK
vdso_access OK
xddp skipped (no kernel support)
++ /usr/xenomai/bin/clocktest -D -T 30 -C CLOCK_HOST_REALTIME
hostrt data area is live
sequence counter : 197044
wall_time_sec    : 1575475032
wall_time_nsec   : 492643503
wall_to_monotonic_sec    : -1575471617
wall_to_monotonic_nsec   : 197320093
cycle_last       : 81979795008
mask             : 0xffffffffffffffff
mult             : 699025481
shift            : 24

== Testing built-in CLOCK_HOST_REALTIME (32)
CPU      ToD offset [us] ToD drift [us/s]      warps max delta [us]
--- -------------------- ---------------- ---------- --------------
   0                  3.3            0.054          0 0.0
++ /usr/xenomai/bin/switchtest -T 30
== Testing FPU check routines...
d0: 1 != 2
d1: 1 != 2
d2: 1 != 2
d3: 1 != 2
d4: 1 != 2
d5: 1 != 2
d6: 1 != 2
d7: 1 != 2
d8: 1 != 2
d9: 1 != 2
d10: 1 != 2
d11: 1 != 2
d12: 1 != 2
d13: 1 != 2
d14: 1 != 2
d15: 1 != 2
== FPU check routines: OK.
== Threads: sleeper_ufps0-0 rtk0-1 rtk0-2 rtk_fp0-3 rtk_fp0-4 
rtk_fp_ufpp0-5 rtk_fp_ufpp0-6 rtup0-7 rtup0-8 rtup_ufpp0-9 rtup_ufpp0-10 
rtus0-11 rtus0-12 rtus_ufps0-13 rtus_ufps0-14 rtuo0-15 rtuo0-16 
rtuo_ufpp0-17 rtuo_ufpp0-18 rtuo_ufps0-19 rtuo_ufps0-20 
rtuo_ufpp_ufps0-21 rtuo_ufpp_ufps0-22
RTT|  00:00:01
RTH|---------cpu|ctx switches|-------total
RTD|           0|       15937|       15937
RTD|           0|       15732|       31669
RTD|           0|       15736|       47405
RTD|           0|       15797|       63202
RTD|           0|       15801|       79003
RTD|           0|       15667|       94670
RTD|           0|       15730|      110400
RTD|           0|       15661|      126061
RTD|           0|       15801|      141862
RTD|           0|       15801|      157663
RTD|           0|       15801|      173464
RTD|           0|       15801|      189265
RTD|           0|       15736|      205001
RTD|           0|       15801|      220802
RTD|           0|       15866|      236668
RTD|           0|       15732|      252400
RTD|           0|       15736|      268136
RTD|           0|       15866|      284002
RTD|           0|       15732|      299734
RTD|           0|       15663|      315397
RTD|           0|       15732|      331129
RTT|  00:00:22
RTH|---------cpu|ctx switches|-------total
RTD|           0|       15801|      346930
RTD|           0|       15734|      362664
RTD|           0|       15734|      378398
RTD|           0|       15799|      394197
RTD|           0|       15799|      409996
RTD|           0|       15801|      425797
RTD|           0|       15734|      441531
RTD|           0|       15799|      457330
RTD|           0|       14490|      471820
++ start_load
++ echo start_load
++ false
++ check_alive /usr/xenomai/bin/latency
++ echo check_alive /usr/xenomai/bin/latency
++ wait_load
++ read rc
Started child 744: dohell 900
Started child 745: /usr/xenomai/bin/latency
== Sampling period: 1000 us
== Test mode: periodic user-mode task
== All results in microseconds
warming up...
RTT|  00:00:01  (periodic user-mode task, 1000 us period, priority 99)
RTH|----lat min|----lat avg|----lat max|-overrun|---msw|---lat 
best|--lat worst
RTD|     14.416|     29.666|     55.416|       0|     0| 14.416|     55.416
RTD|     14.374|     29.543|     53.583|       0|     0| 14.374|     55.416
RTD|     14.374|     28.730|     54.582|       0|     0| 14.374|     55.416
RTD|     14.374|     28.170|     56.249|       0|     0| 14.374|     56.249
RTD|     14.374|     28.609|     54.374|       0|     0| 14.374|     56.249
RTD|     14.332|     27.711|     55.874|       0|     0| 14.332|     56.249
RTD|     14.331|     28.196|     57.956|       0|     0| 14.331|     57.956
RTD|     14.373|     27.163|     54.915|       0|     0| 14.331|     57.956
RTD|     14.331|     28.497|     61.623|       0|     0| 14.331|     61.623
RTD|     11.414|     28.633|     56.914|       0|     0| 11.414|     61.623
RTD|     14.414|     27.801|     60.914|       0|     0| 11.414|     61.623
RTD|     14.372|     27.482|     57.289|       0|     0| 11.414|     61.623
RTD|     14.372|     28.480|     56.038|       0|     0| 11.414|     61.623
RTD|     14.371|     28.990|     56.413|       0|     0| 11.414|     61.623
RTD|     14.371|     28.460|     54.371|       0|     0| 11.414|     61.623
RTD|     14.371|     27.868|     54.704|       0|     0| 11.414|     61.623
RTD|     14.412|     27.557|     53.746|       0|     0| 11.414|     61.623
RTD|     14.287|     27.530|     53.287|       0|     0| 11.414|     61.623
RTD|     14.370|     26.841|     55.829|       0|     0| 11.414|     61.623
RTD|     14.412|     26.846|     52.912|       0|     0| 11.414|     61.623
RTD|     14.411|     26.671|     53.953|       0|     0| 11.414|     61.623
RTT|  00:00:22  (periodic user-mode task, 1000 us period, priority 99)
RTH|----lat min|----lat avg|----lat max|-overrun|---msw|---lat 
best|--lat worst
RTD|     14.411|     26.720|     54.245|       0|     0| 11.414|     61.623
RTD|     14.369|     26.391|     57.869|       0|     0| 11.414|     61.623
RTD|     14.411|     26.184|     55.536|       0|     0| 11.414|     61.623
RTD|     14.411|     26.052|     54.286|       0|     0| 11.414|     61.623
RTD|     14.410|     26.045|     54.369|       0|     0| 11.414|     61.623
RTD|     13.577|     26.106|     56.410|       0|     0| 11.414|     61.623
RTD|      9.243|     25.842|     54.452|       0|     0| 9.243|     61.623
RTD|     14.285|     26.535|     54.701|       0|     0| 9.243|     61.623
RTD|     14.326|     26.546|     54.409|       0|     0| 9.243|     61.623
RTD|     14.368|     26.472|     52.284|       0|     0| 9.243|     61.623
RTD|     14.409|     26.455|     53.867|       0|     0| 9.243|     61.623
RTD|     14.409|     26.570|     54.784|       0|     0| 9.243|     61.623
RTD|     14.325|     26.518|     54.367|       0|     0| 9.243|     61.623
RTD|     14.325|     26.566|     52.492|       0|     0| 9.243|     61.623
RTD|     14.241|     26.803|     53.616|       0|     0| 9.243|     61.623
RTD|     14.408|     26.506|     53.783|       0|     0| 9.243|     61.623
RTD|     14.324|     26.520|     54.407|       0|     0| 9.243|     61.623
RTD|     14.282|     26.762|     52.616|       0|     0| 9.243|     61.623
RTD|     14.365|     26.757|     53.657|       0|     0| 9.243|     61.623
RTD|     14.323|     26.326|     53.657|       0|     0| 9.243|     61.623
RTD|     14.406|     26.473|     55.907|       0|     0| 9.243|     61.623

Thank you for your help.

Best Regards
Davide Brunelli

*Electronic Vbm Group*
e-mail: electronic2@vbm-grp.com <mailto:electronic2@vbm-grp.com>

Vbm Group <http://service.vbm-grp.com/signature/logogrp.png>


Vbm Group Vbm Group Vbm Group


*Vbm Group is a trademark of VI.BE.MAC S.p.a.*

*Declaration according to Law No. 196 of 30 June 2003*
We hereby inform you that your data will be treated automatically, 
according to the current security regulations for written 
correspondence; your data will not be spread by Vi.Be.Mac. Spa. In any 
way, as far as your data are concerned, you have the rights indicated in 
art. No. 13 L. 675/1996 (such as access, cancellation, modification, 
objection, etc.). Vi.Be.Mac. Spa. Is the holder of treatment of your 
data. Vi.Be.Mac. is located in via Monte Pastello, 7/i (Vr) Italy. For 
further information, please write to: privacy@vibemac.com According to 
Art. No. 13 of law 196/2003, in any moment and free of any charge you 
have the right to deny the use of your personal data to send you written 
correspondence. You just have to advise about this by writing to: 
privacy@vibemac.com


*Informativa ai sensi del d.lgs n. 196, 30.6.2003*
I suoi dati saranno trattati in forma automatizzata, nel rispetto delle 
idonee misure di sicurezza, per l'invio di comunicazioni e non saranno 
soggetti a diffusione all'esterno di Vi.Be.Mac. Spa. In relazione al 
trattamento dei dati, potrà esercitare i diritti (accesso,cancellazione, 
rettifica, opposizione, etc.) specificamente previsti dall'art. 13 L. 
675/1996 e nelle modalità ivi contemplate. Titolare del trattamento dei 
dati è Vi.Be.Mac. Spa, con sede legale in San Giovanni Lupatoto (Vr) via 
Monte Pastello 7/i. Per informazioni scrivere a privacy@vibemac.com Ai 
sensi dell'art. 13 del d.lgs. 196/2003, potrà opporsi in ogni momento, 
in via gratuita, al trattamento dei suoi dati al fine dell'invio di 
analoghe comunicazioni a mezzo di posta elettronica, semplicemente 
comunicandocelo all'indirizzo e-mail privacy@vibemac.com Qualsiasi 
utilizzo non autorizzato del presente messaggio nonchè dei suoi allegati 
è vietato e potrebbe costituire reato. Se lei ha ricevuto erroneamente 
il presente messaggio, Le saremmo grati se via e-mail ce ne comunicasse 
la ricezione e provvedesse alla distruzione del messaggio stesso e dei 
suoi eventuali allegati.

VI.BE.MAC s.p.a. - 37057 S. GIOVANNI LUPATOTO (VR) ITALY - Via Monte 
Pastello, 7/i - Tel. +39 045 8778151/52 - Fax +39 045 8779024 - Cod. 
Fisc./Partita IVA 01264050236- Cap. Soc. Euro 2.000.000,00 int. Vers. - 
Reg. Imprese di VERONA N. 01264050236 - REA N. 170441
Società soggetta a direzione e coordinamento di Jack Europe S.à.r.l.
Il 04/12/2019 12:10, Jan Kiszka ha scritto:
> On 04.12.19 12:01, Electronic Dept. - Vbm Group via Xenomai wrote:
>> Goodmorning,
>> I'm using a Beaglebone black and I'm doing the first tests with Xenomai.
>> I've created a kernel patched with Xenomai from here:
>> https://github.com/RobertCNelson/ti-linux-kernel-dev/tree/ti-linux-xenomai-4.4.y
>>
>> and installed Xenomai libraries following:
>> https://forum.digikey.com/t/how-to-cross-compile-application-for-xenomai-with-beaglebone/4943/3
>>
>>
>>
>> I've made a test file named cyclic_test.c and the following Makefile:
>>
>> MAIN_SRC= cyclic_test
>> TARGET    = cyclic_test
>>
>> SKIN     := alchemy
>> CFLAGS     := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --cflags)
>> LDFLAGS := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --ldflags)
>> CC     := $(shell /usr/xenomai/bin/xeno-config --cc)
>>
>> $(TARGET): $(MAIN_SRC).c
>>      $(CC) -o $@ $< $(CFLAGS) $(LDFLAGS)
>>
>> clean:
>>      @rm $(MAIN_SRC)
>>
>>
>> And I get the following response:
>>
>> gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt
>> -I/usr/xenomai/in
>> clude -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE -D_REENTRANT
>> -fasynchronous-unwind
>> -tables -D__COBALT__ -Wl,--no-as-needed
>> -Wl,@/usr/xenomai/lib/modechk.wrappers
>> /usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main
>> -Wl,--dynamic-list=/usr/xen
>> omai/lib/dynlist.ld -L/usr/xenomai/lib -lcobalt -lmodechk -lpthread -lrt
>> -march=
>> armv7-a -mfpu=vfp3
>> /tmp/ccNmb1Fm.o: In function `rt_timer_read':
>> cyclic_test.c:(.text+0xe): undefined reference to `clockobj_get_time'
>> cyclic_test.c:(.text+0x20): undefined reference to `alchemy_clock'
>> /tmp/ccNmb1Fm.o: In function `loop_task_proc':
>> cyclic_test.c:(.text+0x32): undefined reference to `rt_task_self'
>> cyclic_test.c:(.text+0x40): undefined reference to `rt_task_inquire'
>> cyclic_test.c:(.text+0x76): undefined reference to `rt_task_set_periodic'
>> cyclic_test.c:(.text+0xc4): undefined reference to `rt_task_wait_period'
>> /tmp/ccNmb1Fm.o: In function `main':
>> cyclic_test.c:(.text+0x11c): undefined reference to `rt_task_create'
>> cyclic_test.c:(.text+0x12e): undefined reference to `rt_task_start'
>> collect2: error: ld returned 1 exit status
>> Makefile:10: recipe for target 'cyclic_test' failed
>> make: *** [cyclic_test] Error 1
>>
>> Can you advise me plase?
>> Thank you very much.
> You are missing "-lalchemy" in your linker flags. Normally, xeno-config
> --skin=alchemy --ldflags returns this, at least for me here with both
> latest stable and the 3.1-rc. What version are you using?
>
> Jan
>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
  2019-12-05  7:35 ` Electronic Dept. - Vbm Group
@ 2019-12-05  7:44   ` Jan Kiszka
  2019-12-05  7:50     ` Electronic Dept. - Vbm Group
  0 siblings, 1 reply; 11+ messages in thread
From: Jan Kiszka @ 2019-12-05  7:44 UTC (permalink / raw
  To: Electronic Dept. - Vbm Group, xenomai

On 05.12.19 08:35, Electronic Dept. - Vbm Group via Xenomai wrote:
> Hello Jan,
> 
> thank you for your answer.
> 
> My Xenomai version is:
> 
> Xenomai/cobalt v3.0.9 -- #5b99a61 (2019-11-04 19:44:03 +0100)

OK, but when I call "xeno-config --skin=alchemy --ldflags" for that
version, I do have "-lalchemy" in the output. That would fix your
linking issue. Can you check the output you get?

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
  2019-12-05  7:44   ` Jan Kiszka
@ 2019-12-05  7:50     ` Electronic Dept. - Vbm Group
  2019-12-05 19:22       ` Jan Kiszka
  0 siblings, 1 reply; 11+ messages in thread
From: Electronic Dept. - Vbm Group @ 2019-12-05  7:50 UTC (permalink / raw
  To: xenomai

Hello Jan,
thank you for your quick answer. Adding -lalchemy manually, I get the 
following:

gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt 
-I/usr/xenomai/include -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE 
-D_REENTRANT -fasynchronous-unwind-tables -D__COBALT__ 
-Wl,--no-as-needed -Wl,@/usr/xenomai/lib/modechk.wrappers 
/usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main 
-Wl,--dynamic-list=/usr/xenomai/lib/dynlist.ld -L/usr/xenomai/lib 
-lcobalt -lalchemy -lmodechk -lpthread -lrt -march=armv7-a -mfpu=vfp3
/tmp/cc8rjnqk.o: In function `rt_timer_read':
cyclic_test.c:(.text+0xe): undefined reference to `clockobj_get_time'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`threadobj_set_schedparam'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_wait_drain'
/usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_destroy'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_uninit'
/usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_init'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_stat'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_unblock'
/usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_destroy'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`threadobj_wait_period'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_wait_grant'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`threadobj_notify_entry'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_cancel'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_unlock'
/usr/xenomai/lib/libalchemy.so: undefined reference to `pvsyncluster_addobj'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_lock'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_tskey'
/usr/xenomai/lib/libalchemy.so: undefined reference to `__threadobj_alloc'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`__syncobj_broadcast_drain'
/usr/xenomai/lib/libalchemy.so: undefined reference to `pvsyncluster_init'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_init'
/usr/xenomai/lib/libalchemy.so: undefined reference to `clockobj_init'
/usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_init'
/usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_start'
/usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_inquire'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_suspend'
/usr/xenomai/lib/libalchemy.so: undefined reference to `pvsyncluster_delobj'
/usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_getvalue'
/usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_broadcast'
/usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_uninit'
/usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_addobj'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_spin'
/usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_init'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_init'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_grant_one'
/usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_post'
/usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_init'
/usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_stop'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`clockobj_convert_clocks'
/usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_wait'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`copperplate_create_thread'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_uninit'
/usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_wait'
/usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_destroy'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_set_mode'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_destroy'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_prologue'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`__syncobj_broadcast_grant'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_peek_drain'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`threadobj_set_periodic'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_sleep'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_resume'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_peek_grant'
/usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_delobj'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`pvsyncluster_findobj'
/usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_clear'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`__heapobj_init_private'
/usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_grant_to'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_start'
/usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_post'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`heapobj_init_array_private'
/usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_shadow'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`threadobj_wait_start'
/usr/xenomai/lib/libalchemy.so: undefined reference to 
`copperplate_renice_local_thread'
/usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_uninit'
collect2: error: ld returned 1 exit status

Thanks alot.

Best Regards
Davide Brunelli

*Electronic Vbm Group*
e-mail: electronic2@vbm-grp.com <mailto:electronic2@vbm-grp.com>

Vbm Group <http://service.vbm-grp.com/signature/logogrp.png>


Vbm Group Vbm Group Vbm Group


*Vbm Group is a trademark of VI.BE.MAC S.p.a.*

*Declaration according to Law No. 196 of 30 June 2003*
We hereby inform you that your data will be treated automatically, 
according to the current security regulations for written 
correspondence; your data will not be spread by Vi.Be.Mac. Spa. In any 
way, as far as your data are concerned, you have the rights indicated in 
art. No. 13 L. 675/1996 (such as access, cancellation, modification, 
objection, etc.). Vi.Be.Mac. Spa. Is the holder of treatment of your 
data. Vi.Be.Mac. is located in via Monte Pastello, 7/i (Vr) Italy. For 
further information, please write to: privacy@vibemac.com According to 
Art. No. 13 of law 196/2003, in any moment and free of any charge you 
have the right to deny the use of your personal data to send you written 
correspondence. You just have to advise about this by writing to: 
privacy@vibemac.com


*Informativa ai sensi del d.lgs n. 196, 30.6.2003*
I suoi dati saranno trattati in forma automatizzata, nel rispetto delle 
idonee misure di sicurezza, per l'invio di comunicazioni e non saranno 
soggetti a diffusione all'esterno di Vi.Be.Mac. Spa. In relazione al 
trattamento dei dati, potrà esercitare i diritti (accesso,cancellazione, 
rettifica, opposizione, etc.) specificamente previsti dall'art. 13 L. 
675/1996 e nelle modalità ivi contemplate. Titolare del trattamento dei 
dati è Vi.Be.Mac. Spa, con sede legale in San Giovanni Lupatoto (Vr) via 
Monte Pastello 7/i. Per informazioni scrivere a privacy@vibemac.com Ai 
sensi dell'art. 13 del d.lgs. 196/2003, potrà opporsi in ogni momento, 
in via gratuita, al trattamento dei suoi dati al fine dell'invio di 
analoghe comunicazioni a mezzo di posta elettronica, semplicemente 
comunicandocelo all'indirizzo e-mail privacy@vibemac.com Qualsiasi 
utilizzo non autorizzato del presente messaggio nonchè dei suoi allegati 
è vietato e potrebbe costituire reato. Se lei ha ricevuto erroneamente 
il presente messaggio, Le saremmo grati se via e-mail ce ne comunicasse 
la ricezione e provvedesse alla distruzione del messaggio stesso e dei 
suoi eventuali allegati.

VI.BE.MAC s.p.a. - 37057 S. GIOVANNI LUPATOTO (VR) ITALY - Via Monte 
Pastello, 7/i - Tel. +39 045 8778151/52 - Fax +39 045 8779024 - Cod. 
Fisc./Partita IVA 01264050236- Cap. Soc. Euro 2.000.000,00 int. Vers. - 
Reg. Imprese di VERONA N. 01264050236 - REA N. 170441
Società soggetta a direzione e coordinamento di Jack Europe S.à.r.l.
Il 05/12/2019 08:44, Jan Kiszka ha scritto:
> On 05.12.19 08:35, Electronic Dept. - Vbm Group via Xenomai wrote:
>> Hello Jan,
>>
>> thank you for your answer.
>>
>> My Xenomai version is:
>>
>> Xenomai/cobalt v3.0.9 -- #5b99a61 (2019-11-04 19:44:03 +0100)
> OK, but when I call "xeno-config --skin=alchemy --ldflags" for that
> version, I do have "-lalchemy" in the output. That would fix your
> linking issue. Can you check the output you get?
>
> Jan
>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
  2019-12-05  7:50     ` Electronic Dept. - Vbm Group
@ 2019-12-05 19:22       ` Jan Kiszka
  2019-12-05 19:27         ` steve freyder
  0 siblings, 1 reply; 11+ messages in thread
From: Jan Kiszka @ 2019-12-05 19:22 UTC (permalink / raw
  To: Electronic Dept. - Vbm Group, xenomai

On 05.12.19 08:50, Electronic Dept. - Vbm Group via Xenomai wrote:
> Hello Jan,
> thank you for your quick answer. Adding -lalchemy manually, I get the
> following:

There is more missing. What does "xeno-config --skin=alchemy --ldflags"
report for you?

Jan

> 
> gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt
> -I/usr/xenomai/include -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE
> -D_REENTRANT -fasynchronous-unwind-tables -D__COBALT__
> -Wl,--no-as-needed -Wl,@/usr/xenomai/lib/modechk.wrappers
> /usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main
> -Wl,--dynamic-list=/usr/xenomai/lib/dynlist.ld -L/usr/xenomai/lib
> -lcobalt -lalchemy -lmodechk -lpthread -lrt -march=armv7-a -mfpu=vfp3
> /tmp/cc8rjnqk.o: In function `rt_timer_read':
> cyclic_test.c:(.text+0xe): undefined reference to `clockobj_get_time'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `threadobj_set_schedparam'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_wait_drain'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_destroy'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_uninit'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_init'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_stat'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_unblock'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_destroy'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `threadobj_wait_period'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_wait_grant'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `threadobj_notify_entry'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_cancel'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_unlock'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `pvsyncluster_addobj'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_lock'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_tskey'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `__threadobj_alloc'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `__syncobj_broadcast_drain'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvsyncluster_init'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_init'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `clockobj_init'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_init'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_start'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_inquire'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_suspend'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `pvsyncluster_delobj'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_getvalue'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_broadcast'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_uninit'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_addobj'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_spin'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_init'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_init'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_grant_one'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_post'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_init'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_stop'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `clockobj_convert_clocks'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_wait'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `copperplate_create_thread'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_uninit'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_wait'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_destroy'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_set_mode'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_destroy'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_prologue'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `__syncobj_broadcast_grant'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_peek_drain'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `threadobj_set_periodic'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_sleep'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_resume'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_peek_grant'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_delobj'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `pvsyncluster_findobj'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_clear'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `__heapobj_init_private'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_grant_to'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_start'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_post'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `heapobj_init_array_private'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_shadow'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `threadobj_wait_start'
> /usr/xenomai/lib/libalchemy.so: undefined reference to
> `copperplate_renice_local_thread'
> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_uninit'
> collect2: error: ld returned 1 exit status
> 
> Thanks alot.
> 
> Best Regards
> Davide Brunelli
> 
> *Electronic Vbm Group*
> e-mail: electronic2@vbm-grp.com <mailto:electronic2@vbm-grp.com>
> 
> Vbm Group <http://service.vbm-grp.com/signature/logogrp.png>
> 
> 
> Vbm Group Vbm Group Vbm Group
> 
> 
> *Vbm Group is a trademark of VI.BE.MAC S.p.a.*
> 
> *Declaration according to Law No. 196 of 30 June 2003*
> We hereby inform you that your data will be treated automatically,
> according to the current security regulations for written
> correspondence; your data will not be spread by Vi.Be.Mac. Spa. In any
> way, as far as your data are concerned, you have the rights indicated in
> art. No. 13 L. 675/1996 (such as access, cancellation, modification,
> objection, etc.). Vi.Be.Mac. Spa. Is the holder of treatment of your
> data. Vi.Be.Mac. is located in via Monte Pastello, 7/i (Vr) Italy. For
> further information, please write to: privacy@vibemac.com According to
> Art. No. 13 of law 196/2003, in any moment and free of any charge you
> have the right to deny the use of your personal data to send you written
> correspondence. You just have to advise about this by writing to:
> privacy@vibemac.com
> 
> 
> *Informativa ai sensi del d.lgs n. 196, 30.6.2003*
> I suoi dati saranno trattati in forma automatizzata, nel rispetto delle
> idonee misure di sicurezza, per l'invio di comunicazioni e non saranno
> soggetti a diffusione all'esterno di Vi.Be.Mac. Spa. In relazione al
> trattamento dei dati, potrà esercitare i diritti (accesso,cancellazione,
> rettifica, opposizione, etc.) specificamente previsti dall'art. 13 L.
> 675/1996 e nelle modalità ivi contemplate. Titolare del trattamento dei
> dati è Vi.Be.Mac. Spa, con sede legale in San Giovanni Lupatoto (Vr) via
> Monte Pastello 7/i. Per informazioni scrivere a privacy@vibemac.com Ai
> sensi dell'art. 13 del d.lgs. 196/2003, potrà opporsi in ogni momento,
> in via gratuita, al trattamento dei suoi dati al fine dell'invio di
> analoghe comunicazioni a mezzo di posta elettronica, semplicemente
> comunicandocelo all'indirizzo e-mail privacy@vibemac.com Qualsiasi
> utilizzo non autorizzato del presente messaggio nonchè dei suoi allegati
> è vietato e potrebbe costituire reato. Se lei ha ricevuto erroneamente
> il presente messaggio, Le saremmo grati se via e-mail ce ne comunicasse
> la ricezione e provvedesse alla distruzione del messaggio stesso e dei
> suoi eventuali allegati.
> 
> VI.BE.MAC s.p.a. - 37057 S. GIOVANNI LUPATOTO (VR) ITALY - Via Monte
> Pastello, 7/i - Tel. +39 045 8778151/52 - Fax +39 045 8779024 - Cod.
> Fisc./Partita IVA 01264050236- Cap. Soc. Euro 2.000.000,00 int. Vers. -
> Reg. Imprese di VERONA N. 01264050236 - REA N. 170441
> Società soggetta a direzione e coordinamento di Jack Europe S.à.r.l.
> Il 05/12/2019 08:44, Jan Kiszka ha scritto:
>> On 05.12.19 08:35, Electronic Dept. - Vbm Group via Xenomai wrote:
>>> Hello Jan,
>>>
>>> thank you for your answer.
>>>
>>> My Xenomai version is:
>>>
>>> Xenomai/cobalt v3.0.9 -- #5b99a61 (2019-11-04 19:44:03 +0100)
>> OK, but when I call "xeno-config --skin=alchemy --ldflags" for that
>> version, I do have "-lalchemy" in the output. That would fix your
>> linking issue. Can you check the output you get?
>>
>> Jan
>>

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
  2019-12-05 19:22       ` Jan Kiszka
@ 2019-12-05 19:27         ` steve freyder
  2019-12-05 19:33           ` Jan Kiszka
  0 siblings, 1 reply; 11+ messages in thread
From: steve freyder @ 2019-12-05 19:27 UTC (permalink / raw
  To: Jan Kiszka, xenomai

On 12/5/2019 1:22 PM, Jan Kiszka via Xenomai wrote:
> On 05.12.19 08:50, Electronic Dept. - Vbm Group via Xenomai wrote:
>> Hello Jan,
>> thank you for your quick answer. Adding -lalchemy manually, I get the
>> following:
> There is more missing. What does "xeno-config --skin=alchemy --ldflags"
> report for you?
>
> Jan
>
>> gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt
>> -I/usr/xenomai/include -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE
>> -D_REENTRANT -fasynchronous-unwind-tables -D__COBALT__
>> -Wl,--no-as-needed -Wl,@/usr/xenomai/lib/modechk.wrappers
>> /usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main
>> -Wl,--dynamic-list=/usr/xenomai/lib/dynlist.ld -L/usr/xenomai/lib
>> -lcobalt -lalchemy -lmodechk -lpthread -lrt -march=armv7-a -mfpu=vfp3
>> /tmp/cc8rjnqk.o: In function `rt_timer_read':
>> cyclic_test.c:(.text+0xe): undefined reference to `clockobj_get_time'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `threadobj_set_schedparam'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_wait_drain'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_destroy'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_uninit'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_init'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_stat'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_unblock'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_destroy'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `threadobj_wait_period'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_wait_grant'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `threadobj_notify_entry'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_cancel'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_unlock'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `pvsyncluster_addobj'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_lock'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_tskey'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `__threadobj_alloc'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `__syncobj_broadcast_drain'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvsyncluster_init'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_init'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `clockobj_init'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_init'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_start'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_inquire'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_suspend'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `pvsyncluster_delobj'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_getvalue'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_broadcast'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_uninit'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_addobj'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_spin'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_init'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_init'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_grant_one'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_post'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_init'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_stop'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `clockobj_convert_clocks'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_wait'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `copperplate_create_thread'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_uninit'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_wait'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_destroy'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_set_mode'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_destroy'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_prologue'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `__syncobj_broadcast_grant'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_peek_drain'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `threadobj_set_periodic'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_sleep'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_resume'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_peek_grant'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_delobj'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `pvsyncluster_findobj'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_clear'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `__heapobj_init_private'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_grant_to'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_start'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_post'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `heapobj_init_array_private'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_shadow'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `threadobj_wait_start'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>> `copperplate_renice_local_thread'
>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_uninit'
>> collect2: error: ld returned 1 exit status
>>
>> Thanks alot.
>>
>> Best Regards
>> Davide Brunelli
>>
>> *Electronic Vbm Group*
>> e-mail: electronic2@vbm-grp.com <mailto:electronic2@vbm-grp.com>
>>
>> Vbm Group <http://service.vbm-grp.com/signature/logogrp.png>
>>
>>
>> Vbm Group Vbm Group Vbm Group
>>
>>
>> *Vbm Group is a trademark of VI.BE.MAC S.p.a.*
>>
>> *Declaration according to Law No. 196 of 30 June 2003*
>> We hereby inform you that your data will be treated automatically,
>> according to the current security regulations for written
>> correspondence; your data will not be spread by Vi.Be.Mac. Spa. In any
>> way, as far as your data are concerned, you have the rights indicated in
>> art. No. 13 L. 675/1996 (such as access, cancellation, modification,
>> objection, etc.). Vi.Be.Mac. Spa. Is the holder of treatment of your
>> data. Vi.Be.Mac. is located in via Monte Pastello, 7/i (Vr) Italy. For
>> further information, please write to: privacy@vibemac.com According to
>> Art. No. 13 of law 196/2003, in any moment and free of any charge you
>> have the right to deny the use of your personal data to send you written
>> correspondence. You just have to advise about this by writing to:
>> privacy@vibemac.com
>>
>>
>> *Informativa ai sensi del d.lgs n. 196, 30.6.2003*
>> I suoi dati saranno trattati in forma automatizzata, nel rispetto delle
>> idonee misure di sicurezza, per l'invio di comunicazioni e non saranno
>> soggetti a diffusione all'esterno di Vi.Be.Mac. Spa. In relazione al
>> trattamento dei dati, potrà esercitare i diritti (accesso,cancellazione,
>> rettifica, opposizione, etc.) specificamente previsti dall'art. 13 L.
>> 675/1996 e nelle modalità ivi contemplate. Titolare del trattamento dei
>> dati è Vi.Be.Mac. Spa, con sede legale in San Giovanni Lupatoto (Vr) via
>> Monte Pastello 7/i. Per informazioni scrivere a privacy@vibemac.com Ai
>> sensi dell'art. 13 del d.lgs. 196/2003, potrà opporsi in ogni momento,
>> in via gratuita, al trattamento dei suoi dati al fine dell'invio di
>> analoghe comunicazioni a mezzo di posta elettronica, semplicemente
>> comunicandocelo all'indirizzo e-mail privacy@vibemac.com Qualsiasi
>> utilizzo non autorizzato del presente messaggio nonchè dei suoi allegati
>> è vietato e potrebbe costituire reato. Se lei ha ricevuto erroneamente
>> il presente messaggio, Le saremmo grati se via e-mail ce ne comunicasse
>> la ricezione e provvedesse alla distruzione del messaggio stesso e dei
>> suoi eventuali allegati.
>>
>> VI.BE.MAC s.p.a. - 37057 S. GIOVANNI LUPATOTO (VR) ITALY - Via Monte
>> Pastello, 7/i - Tel. +39 045 8778151/52 - Fax +39 045 8779024 - Cod.
>> Fisc./Partita IVA 01264050236- Cap. Soc. Euro 2.000.000,00 int. Vers. -
>> Reg. Imprese di VERONA N. 01264050236 - REA N. 170441
>> Società soggetta a direzione e coordinamento di Jack Europe S.à.r.l.
>> Il 05/12/2019 08:44, Jan Kiszka ha scritto:
>>> On 05.12.19 08:35, Electronic Dept. - Vbm Group via Xenomai wrote:
>>>> Hello Jan,
>>>>
>>>> thank you for your answer.
>>>>
>>>> My Xenomai version is:
>>>>
>>>> Xenomai/cobalt v3.0.9 -- #5b99a61 (2019-11-04 19:44:03 +0100)
>>> OK, but when I call "xeno-config --skin=alchemy --ldflags" for that
>>> version, I do have "-lalchemy" in the output. That would fix your
>>> linking issue. Can you check the output you get?
>>>
>>> Jan
>>>
Pls forgive the interruption on your thread, I noticed the makefile 
quoted as:


MAIN_SRC= cyclic_test
TARGET    = cyclic_test

SKIN     := alchemy
CFLAGS     := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --cflags)
LDFLAGS := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --ldflags)
CC     := $(shell /usr/xenomai/bin/xeno-config --cc)

$(TARGET): $(MAIN_SRC).c
     $(CC) -o $@ $< $(CFLAGS) $(LDFLAGS)

clean:
     @rm $(MAIN_SRC)


The documentation I have on 'make' says that variable names are case 
sensitive, and so the substitution of the --skin=$(skin) is going to 
substitute an empty string instead of 'alchemy'.  I tried using just 
--skin= on my copy of xeno-config and there was no error or warning 
about an invalid skin name, and as expected it didn't emit the 
alchemy-specific option strings.  So probably when it is changed to 
--skin=$(SKIN) things will improve.


Best Regards,

Steve



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
  2019-12-05 19:27         ` steve freyder
@ 2019-12-05 19:33           ` Jan Kiszka
  2019-12-06  7:39             ` Electronic Dept. - Vbm Group
  0 siblings, 1 reply; 11+ messages in thread
From: Jan Kiszka @ 2019-12-05 19:33 UTC (permalink / raw
  To: steve freyder, xenomai

On 05.12.19 20:27, steve freyder wrote:
> On 12/5/2019 1:22 PM, Jan Kiszka via Xenomai wrote:
>> On 05.12.19 08:50, Electronic Dept. - Vbm Group via Xenomai wrote:
>>> Hello Jan,
>>> thank you for your quick answer. Adding -lalchemy manually, I get the
>>> following:
>> There is more missing. What does "xeno-config --skin=alchemy --ldflags"
>> report for you?
>>
>> Jan
>>
>>> gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt
>>> -I/usr/xenomai/include -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE
>>> -D_REENTRANT -fasynchronous-unwind-tables -D__COBALT__
>>> -Wl,--no-as-needed -Wl,@/usr/xenomai/lib/modechk.wrappers
>>> /usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main
>>> -Wl,--dynamic-list=/usr/xenomai/lib/dynlist.ld -L/usr/xenomai/lib
>>> -lcobalt -lalchemy -lmodechk -lpthread -lrt -march=armv7-a -mfpu=vfp3
>>> /tmp/cc8rjnqk.o: In function `rt_timer_read':
>>> cyclic_test.c:(.text+0xe): undefined reference to `clockobj_get_time'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `threadobj_set_schedparam'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_wait_drain'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_destroy'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_uninit'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_init'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_stat'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_unblock'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_destroy'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `threadobj_wait_period'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_wait_grant'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `threadobj_notify_entry'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_cancel'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_unlock'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `pvsyncluster_addobj'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_lock'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_tskey'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `__threadobj_alloc'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `__syncobj_broadcast_drain'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvsyncluster_init'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_init'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `clockobj_init'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_init'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_start'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_inquire'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_suspend'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `pvsyncluster_delobj'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_getvalue'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_broadcast'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_uninit'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_addobj'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_spin'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_init'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_init'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_grant_one'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_post'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_init'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `timerobj_stop'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `clockobj_convert_clocks'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_wait'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `copperplate_create_thread'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_uninit'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_wait'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_destroy'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_set_mode'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_destroy'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_prologue'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `__syncobj_broadcast_grant'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_peek_drain'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `threadobj_set_periodic'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_sleep'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_resume'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_peek_grant'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `pvcluster_delobj'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `pvsyncluster_findobj'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_clear'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `__heapobj_init_private'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `syncobj_grant_to'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_start'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `eventobj_post'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `heapobj_init_array_private'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `threadobj_shadow'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `threadobj_wait_start'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to
>>> `copperplate_renice_local_thread'
>>> /usr/xenomai/lib/libalchemy.so: undefined reference to `semobj_uninit'
>>> collect2: error: ld returned 1 exit status
>>>
>>> Thanks alot.
>>>
>>> Best Regards
>>> Davide Brunelli
>>>
>>> *Electronic Vbm Group*
>>> e-mail: electronic2@vbm-grp.com <mailto:electronic2@vbm-grp.com>
>>>
>>> Vbm Group <http://service.vbm-grp.com/signature/logogrp.png>
>>>
>>>
>>> Vbm Group Vbm Group Vbm Group
>>>
>>>
>>> *Vbm Group is a trademark of VI.BE.MAC S.p.a.*
>>>
>>> *Declaration according to Law No. 196 of 30 June 2003*
>>> We hereby inform you that your data will be treated automatically,
>>> according to the current security regulations for written
>>> correspondence; your data will not be spread by Vi.Be.Mac. Spa. In any
>>> way, as far as your data are concerned, you have the rights indicated in
>>> art. No. 13 L. 675/1996 (such as access, cancellation, modification,
>>> objection, etc.). Vi.Be.Mac. Spa. Is the holder of treatment of your
>>> data. Vi.Be.Mac. is located in via Monte Pastello, 7/i (Vr) Italy. For
>>> further information, please write to: privacy@vibemac.com According to
>>> Art. No. 13 of law 196/2003, in any moment and free of any charge you
>>> have the right to deny the use of your personal data to send you written
>>> correspondence. You just have to advise about this by writing to:
>>> privacy@vibemac.com
>>>
>>>
>>> *Informativa ai sensi del d.lgs n. 196, 30.6.2003*
>>> I suoi dati saranno trattati in forma automatizzata, nel rispetto delle
>>> idonee misure di sicurezza, per l'invio di comunicazioni e non saranno
>>> soggetti a diffusione all'esterno di Vi.Be.Mac. Spa. In relazione al
>>> trattamento dei dati, potrà esercitare i diritti (accesso,cancellazione,
>>> rettifica, opposizione, etc.) specificamente previsti dall'art. 13 L.
>>> 675/1996 e nelle modalità ivi contemplate. Titolare del trattamento dei
>>> dati è Vi.Be.Mac. Spa, con sede legale in San Giovanni Lupatoto (Vr) via
>>> Monte Pastello 7/i. Per informazioni scrivere a privacy@vibemac.com Ai
>>> sensi dell'art. 13 del d.lgs. 196/2003, potrà opporsi in ogni momento,
>>> in via gratuita, al trattamento dei suoi dati al fine dell'invio di
>>> analoghe comunicazioni a mezzo di posta elettronica, semplicemente
>>> comunicandocelo all'indirizzo e-mail privacy@vibemac.com Qualsiasi
>>> utilizzo non autorizzato del presente messaggio nonchè dei suoi allegati
>>> è vietato e potrebbe costituire reato. Se lei ha ricevuto erroneamente
>>> il presente messaggio, Le saremmo grati se via e-mail ce ne comunicasse
>>> la ricezione e provvedesse alla distruzione del messaggio stesso e dei
>>> suoi eventuali allegati.
>>>
>>> VI.BE.MAC s.p.a. - 37057 S. GIOVANNI LUPATOTO (VR) ITALY - Via Monte
>>> Pastello, 7/i - Tel. +39 045 8778151/52 - Fax +39 045 8779024 - Cod.
>>> Fisc./Partita IVA 01264050236- Cap. Soc. Euro 2.000.000,00 int. Vers. -
>>> Reg. Imprese di VERONA N. 01264050236 - REA N. 170441
>>> Società soggetta a direzione e coordinamento di Jack Europe S.à.r.l.
>>> Il 05/12/2019 08:44, Jan Kiszka ha scritto:
>>>> On 05.12.19 08:35, Electronic Dept. - Vbm Group via Xenomai wrote:
>>>>> Hello Jan,
>>>>>
>>>>> thank you for your answer.
>>>>>
>>>>> My Xenomai version is:
>>>>>
>>>>> Xenomai/cobalt v3.0.9 -- #5b99a61 (2019-11-04 19:44:03 +0100)
>>>> OK, but when I call "xeno-config --skin=alchemy --ldflags" for that
>>>> version, I do have "-lalchemy" in the output. That would fix your
>>>> linking issue. Can you check the output you get?
>>>>
>>>> Jan
>>>>
> Pls forgive the interruption on your thread, I noticed the makefile
> quoted as:
> 
> 
> MAIN_SRC= cyclic_test
> TARGET    = cyclic_test
> 
> SKIN     := alchemy
> CFLAGS     := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --cflags)
> LDFLAGS := $(shell /usr/xenomai/bin/xeno-config --skin=$(skin) --ldflags)
> CC     := $(shell /usr/xenomai/bin/xeno-config --cc)
> 
> $(TARGET): $(MAIN_SRC).c
>     $(CC) -o $@ $< $(CFLAGS) $(LDFLAGS)
> 
> clean:
>     @rm $(MAIN_SRC)
> 
> 
> The documentation I have on 'make' says that variable names are case
> sensitive, and so the substitution of the --skin=$(skin) is going to
> substitute an empty string instead of 'alchemy'.  I tried using just
> --skin= on my copy of xeno-config and there was no error or warning
> about an invalid skin name, and as expected it didn't emit the
> alchemy-specific option strings.  So probably when it is changed to
> --skin=$(SKIN) things will improve.
> 

Good point, thanks for accelerating this!

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
  2019-12-05 19:33           ` Jan Kiszka
@ 2019-12-06  7:39             ` Electronic Dept. - Vbm Group
  2019-12-06  7:58               ` Jan Kiszka
  0 siblings, 1 reply; 11+ messages in thread
From: Electronic Dept. - Vbm Group @ 2019-12-06  7:39 UTC (permalink / raw
  To: xenomai

Hello Jan and Steve,

I modified the Makefile as per your indication and now the compiling 
signature is changed as follow:

gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt 
-I/usr/xenomai/include -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE 
-D_REENTRANT -fasynchronous-unwind-tables -D__COBALT__ 
-I/usr/xenomai/include/alchemy -Wl,--no-as-needed 
-Wl,@/usr/xenomai/lib/modechk.wrappers -lalchemy -lcopperplate 
/usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main 
-Wl,--dynamic-list=/usr/xenomai/lib/dynlist.ld -L/usr/xenomai/lib 
-lcobalt -lmodechk -lpthread -lrt -march=armv7-a -mfpu=vfp3

Unfortunately as response now I get:
./cyclic_test: error while loading shared libraries: libalchemy.so.0: 
cannot open shared object file: No such file or directory

I've check and inside /usr/xenomai/lib there is:
libalchemy.a
libalchemy.la
libalchemy.so
libalchemy.so.0
libalchemy.so.0.0.0

Thank you again for your assistance.

Best Regards
Davide Brunelli


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
  2019-12-06  7:39             ` Electronic Dept. - Vbm Group
@ 2019-12-06  7:58               ` Jan Kiszka
  0 siblings, 0 replies; 11+ messages in thread
From: Jan Kiszka @ 2019-12-06  7:58 UTC (permalink / raw
  To: Electronic Dept. - Vbm Group, xenomai

On 06.12.19 08:39, Electronic Dept. - Vbm Group via Xenomai wrote:
> Hello Jan and Steve,
> 
> I modified the Makefile as per your indication and now the compiling
> signature is changed as follow:
> 
> gcc -o cyclic_test cyclic_test.c -I/usr/xenomai/include/cobalt
> -I/usr/xenomai/include -march=armv7-a -mfpu=vfp3 -D_GNU_SOURCE
> -D_REENTRANT -fasynchronous-unwind-tables -D__COBALT__
> -I/usr/xenomai/include/alchemy -Wl,--no-as-needed
> -Wl,@/usr/xenomai/lib/modechk.wrappers -lalchemy -lcopperplate
> /usr/xenomai/lib/xenomai/bootstrap.o -Wl,--wrap=main
> -Wl,--dynamic-list=/usr/xenomai/lib/dynlist.ld -L/usr/xenomai/lib
> -lcobalt -lmodechk -lpthread -lrt -march=armv7-a -mfpu=vfp3
> 
> Unfortunately as response now I get:
> ./cyclic_test: error while loading shared libraries: libalchemy.so.0:
> cannot open shared object file: No such file or directory
> 
> I've check and inside /usr/xenomai/lib there is:

Either install Xenomai to /usr/lib* or add this path to LD_LIBRARY_PATH.

Jan

> libalchemy.a
> libalchemy.la
> libalchemy.so
> libalchemy.so.0
> libalchemy.so.0.0.0
> 
> Thank you again for your assistance.
> 
> Best Regards
> Davide Brunelli
> 

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: undefined reference to `rt_task_create
       [not found] <9fd1add4-9ea2-c2bb-ccb6-7981aee46efa@vbm-grp.com>
@ 2019-12-06  8:58 ` Electronic Dept. - Vbm Group
  0 siblings, 0 replies; 11+ messages in thread
From: Electronic Dept. - Vbm Group @ 2019-12-06  8:58 UTC (permalink / raw
  To: xenomai

Hello Jan,

problem solved! Thank you very much.

I highly appreciate your very quick help.

Best Regards
Davide Brunelli



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2019-12-06  8:58 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <9fd1add4-9ea2-c2bb-ccb6-7981aee46efa@vbm-grp.com>
2019-12-06  8:58 ` undefined reference to `rt_task_create Electronic Dept. - Vbm Group
     [not found] <d3c4d944-807a-a2d4-7ec1-2d1639f36f78@vbm-grp.com>
2019-12-05  7:35 ` Electronic Dept. - Vbm Group
2019-12-05  7:44   ` Jan Kiszka
2019-12-05  7:50     ` Electronic Dept. - Vbm Group
2019-12-05 19:22       ` Jan Kiszka
2019-12-05 19:27         ` steve freyder
2019-12-05 19:33           ` Jan Kiszka
2019-12-06  7:39             ` Electronic Dept. - Vbm Group
2019-12-06  7:58               ` Jan Kiszka
2019-12-04 11:01 Electronic Dept. - Vbm Group
2019-12-04 11:10 ` Jan Kiszka

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.