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: electron...@vbm-grp.com <mailto:electron...@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: priv...@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:
priv...@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 priv...@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 priv...@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


Reply via email to