错误使用自定义C代码仿真库模型和Stateflow金宝app

4视图(30天)
我用Matlab Stateflow特定的流程,这些流程模型假设与现有的c++库进行交互。允许Matlab Stateflow与c++库交互,我编写了一个简单的C接口库和进口的头文件和库模拟目标的选择。使用这个简单的过程中,我能够加载自定义库在Stateflow MacOS X,它与图书馆exepected交互。
现在我想复制这个linux下,但遗憾的是有很多麻烦,最终没能成功Stateflow加载库。然后我创建了一个新的概念C库进行调试这个问题只包含一个测试函数,也无法获得Stateflow加载共享库。
错误Stateflow抛出的每一个时间:
失败的加载自定义代码仿真库:/ home / davidk /桌面/ slprj / _slcc / qxnWz5tNfQfFLosY9yYvpC / qxnWz5tNfQfFLosY9yYvpC_cclib.so
这是概念C库的代码,也Stateflow拒绝加载。
头文件——test.h
#如果未定义TEST_H
#定义TEST_H
走读生空白测试();
#endif
C文件——test.c
#包括“test.h”
#包括< stdio . h >
无效测试(){
printf (“测试”);
}
CMakeLists.txt
cmake_minimum_required(版本3.13)
测试项目(C)
集(CMAKE_BUILD_TYPE调试)
文件(水珠SRC“* . c”)
add_library(包装共享美元{SRC})
add_executable(主“c”)
target_link_libraries(主要包装)
可执行CMakelists并不重要,它只是一个测试,如果我能成功地使用图书馆的链接。
文件夹结构是:
构建
test.c
test.h
CMakeLists.txt
上面列出的代码编译很好,我也可以运行可执行文件没有任何问题。
我用以下模拟目标设置加载库:
这就是从Stateflow函数被调用。
更多的信息关于我的设置:
我从源代码编译和安装GCC 6.5和验证用于编译。
我也知道GCC编译器支持的最新版本是6.3,但是后两个尝金宝app试安装v6.3我不能让它工作。我申请一个补丁的详细: Stackoverflow ,解决了第一个问题,然后应用这个“黑客”(甚至作者称为黑客) Github 。也没有解决我的问题在安装GCC 6.3。
我还使用Matlab版本R2019a但也可以尝试一个新版本,应该帮助的机会。
这让我两个问题:
首先,它是真正需要使用GCC 6.3,如果是这样的话,我将如何安装这个东西?
其次,如何调试Stateflows愿加载我的图书馆吗?在我的测试中,生成的库似乎是有效的,我不知道我将如何继续调试这个问题?
谢谢你,大卫
1评论
卡坦
卡坦 2020年8月25日
这不是Stateflow不愿加载库;你看到的是标准的行为动态加载程序在Linux上的行为。包含这个libwrapper的目录。所以必须在你 LD_LIBRARY_PATH 动态加载程序能够加载它。

登录置评。

答案(0)

类别

找到更多的在金宝app仿真软件编码器帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!