我正在使用 Julia 来控制相机,该相机附带 Linux-Mint 上的共享库。共享库提供用 C++ 编写的 API。还有一些头文件包含有关设备的类型和常量的定义。我编写了 Julia 脚本来用 Julia 包装 C 结构、定义、枚举和类型。这是关键点。我使用 ccall 函数来调用共享库中的函数。该函数应该返回设备的不透明句柄。我使用这种格式变体ccall( (:function, "library"), ...)。返回一个错误代码,表示未找到相机。然后,我尝试使用预加载共享库Libdl.dlopen并使用ccall(:function,..., ...)调用该函数,但仍然得到相同的结果。相同的操作在 C 中运行得非常好。
我想知道使用时什么会阻止与硬件设备的连接ccall。ccall我不知道Julia 的实现细节。如果有人能给我一些线索,那将是很大的帮助。
祝你今天过得愉快,
实提差