how to add static link library to S function

6 views (last 30 days)
I am creating block scheme i want to use hil sdk functions to controll qube servo 2 from for linux (ubuntu 20.4.)
These functions should be only c functions.
I created S function but i can't link .a static link library and .h how can it be done ?
  1 Comment
Yavuzhan Erdem
Yavuzhan Erdem on 2 Dec 2023
Hello Dear,
Have you solved the problem ? I have also same problem. Actualll, I can compile s-function and get output file with .mexwa extension. However , when I run the simulink mod el , Undefined symbol error occured.

Sign in to comment.

Answers (1)

Mark McBroom
Mark McBroom on 20 Dec 2021
When compiling and linking your s-function using the mex command, you can provide optional argument -L to link to a library.
You can also use the legacy_code tool or the C Caller Block to define your s-function and specify the names and locations of libraries that are to be linked with your s-function.
  1 Comment
Stefan Jakubjak
Stefan Jakubjak on 2 Jan 2022
Edited: Stefan Jakubjak on 2 Jan 2022
Thank you for your answer but , i don't really understand how it should it work I have c file with code which i want to get to matlab. I have this in makefile:
CFLAGS += -I/opt/quanser/hil_sdk/include
LDFLAGS += -L/opt/quanser/hil_sdk/lib
LIBS += -lhil -lquanser_runtime -lquanser_common -lrt -lpthread -ldl -lm -lc
myhilapp: myhilapp.o
cc $(LDFLAGS) $< -o $@ $(LIBS)
myhilapp.o: myhilapp.c
When i write make in terminal it generates file from .c file and i can run it using ./
How can i convert this makefile to matlab and make it work altogether ?

Sign in to comment.

Categories

Find more on Introduction to Installation and Licensing in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!