我有一个小问题,我的猜测是,这是不可能的,但永远不会知道!
我正在为Maya开发插件,它仍然使用gcc-4.1.2编译。但我想用新的C ++ 0x进行编码。是否可以编译和创建我的共享对象(让它称之为X.so),然后通过共享对象(调用X_proxy.so)来映射我在X.so中的函数,但是由具有较旧架构的程序使用
结构将是:Maya - > X_proxy.so - > X.so!
X_proxy只会将调用转发给X.so.这样,使用新工具开发并使它们与旧工具(或使用旧工具的最新工具)兼容是很容易的。
编辑:我看到的另一个解决方案可能是使用最新版本的g ++编译* .cpp.o文件中的* .cpp文件,然后使用旧版本的g ++链接它们。那可能吗?答案 0 :(得分:1)
只要名称映射确定,没有代理就可以了。您需要确保要使用的Maya头文件与更现代的编译器一起使用,但希望这不会成为问题而只是尝试一下。共享对象不必使用相同的编译器进行编译,也不必使用与加载它们并调用函数的程序相同的语言编写。