ffi

    5热度

    1回答

    我从这个中文博客中得到这个问题http://chenyufei.info/blog/2011-02-28/wrap-c-function-closure-gcc-nested-function/ 作者想用c语言实现闭包,他发现GCC有嵌套函数(和闭包)的能力。 例如: typedef int (*func_t)(int arg); int foo(int a) { return

    12热度

    4回答

    编写Common Lisp代码时,我真的很想念的一件事是访问Python库,包括标准库和第三方模块。 CLPython提供了Python功能的有限子集,它排除了大多数库的使用,所以这对我来说并不是很有用。我希望能够从Common Lisp中调用Python代码,使其能够像CPython或PyPy一样在Python VM中运行。

    2热度

    5回答

    我需要在数据库中插入一些包含非ASCII字符的字符串(Postgress)。这是最简单的例子。我收到<cdecl: long 'odbx_query' (ulong char* ulong) module: 'opendbx'>上的“无法强制论证”。根据我的理解,这是一个FFI错误,而且这个调用甚至没有将其发送到数据库后端,但我不确定。 | conn settings sql | setting

    1热度

    3回答

    我已经通过FFI为共享库函数(第三方函数)编写了一个包装。该共享库尝试与服务器建立连接。在服务器不可达的连接建立期间,第三方功能等待3分钟。为了避免在使用rails时调用,我试图使用下面的超时,但不幸的是它没有工作。 本地超时 系统超时 终结者 注:当我使用终结者由它车削解散过程中创建的额外过程。 我使用红宝石企业版1.8

    0热度

    1回答

    我有一个FFI binding to a custom RPC system Rails应用程序。不幸的是,C代码在无法连接到RPC服务器时调用exit(),终止了整个Rails应用程序。 是否有可能捕获调用在Ruby中exit()?我宁愿不必更改C代码。

    2热度

    1回答

    我想编译一个Haskell模块,其中包含一些FFI代码。它曾经在具有GHC 6的旧Haskell平台和自定义GHC 7下工作以获得64位版本。 使用64位版本的GHC 7升级到最新的Haskell平台已停止工作。看起来GCC在GHC吐出的存根文件上遇到了一些麻烦 - 他们使用的GHC框架头文件在查找标准C文件时遇到了问题。这里仅仅是许多错误我得到的一个: /Library/Frameworks/G

    4热度

    1回答

    我必须加载几个从库本身返回结构的函数。 attach_function 'fn_name', [], # ... What do I put here? RubyFFI的Wiki页面似乎已经过时了,所以我在这里有点迷路了。 如何创建FFI::Struct,以及如何将其指定为本机函数的返回类型?

    1热度

    3回答

    我正在编写Ruby应用程序,我想使用一些绝密算法。那么最好如何保护他们免受未经授权的访问。 我有两个想法: 写他们C和负载使用FFI在(我不知道是否有可能这样) 元帅Ruby代码,编码,然后在文件存储 也许有人知道更好的主意或可以告诉我这些想法是愚蠢的或错误的。谢谢你的建议。

    15热度

    1回答

    混合不同的编程语言一直以来我都不太明白。据this Wikipedia article,外国功能接口(或FFI)可以通过多种方式来完成: 要求客人语言功能,这些功能是宿主语言调用指定或以一种特殊的方式来实现;经常使用某种兼容性库。 使用工具自动“包装”客人语言功能与适当的胶水代码,执行任何必要的翻译。 包装库的使用 限制可以跨语言使用的一组主机语言功能。例如,从C调用的C++函数可能(通常)不包括

    10热度

    1回答

    我学习了一些Haskell编程语言,现在我发现可以从C程序中调用Haskell函数。在我的Haskell研究中,我用Haskell创建了一个字频计数器,我想尝试从C程序中调用该函数,但我不知道该怎么做。我发现这两个网站上haskell.org: Calling Haskell from C Foreign C types (Haskell module) 尽管如此,我有点失去了使用的类型。我的ha