标签: shared-objects

便携式共享对象?

是否可以像Windows中的DLL一样以可移植的方式使用共享对象文件?

我想知道是否有一种方法可以为Linux提供一个可以使用的编译库.以同样的方式,您可以在Windows中编译DLL,它可以在任何其他Windows上使用(好吧,不是任何其他Windows,但在大多数情况下它可以).

这可能在Linux中吗?

编辑:
我刚刚醒来并阅读答案.有一些非常好的.
我不是想隐藏源代码.我只是想提供一个已经编译并且可以使用的库,因此没有编译经验的用户不需要自己动手.
因此,我们的想法是提供一个可以在尽可能多的不同Linux上运行的.so文件.
该库是用C++编写的,使用STL和Boost库.

c++ linux portability shared-libraries shared-objects

5
推荐指数
1
解决办法
2295
查看次数

是否可以将图像存储在Flash的SharedObject中?

是否可以将图像存储在Flash中的SharedObject中?如果能起作用会很好.我需要在本地"存储"图像,但似乎Flash不支持...所以我想将这些图像放在可以保存的SharedObject中......但它是否适用于图像?

我尝试使用Bitmap,但如果我想阅读并将其添加到舞台上,则表示Object无法转换为Bitmap ...

var image:Bitmap = //some awesome image;

sharedObject = SharedObject.getLocal("img");
sharedObject.data.img = image;
sharedObject.flush();
Run Code Online (Sandbox Code Playgroud)

错误在这里 - >

sharedObject = SharedObject.getLocal("img");
addChild(Bitmap(sharedObject.data.img));
Run Code Online (Sandbox Code Playgroud)

flash actionscript-3 shared-objects

5
推荐指数
1
解决办法
4483
查看次数

如何在共享对象库中共享变量

我正在创建一个共享对象库,它将与我的程序LD_PRELOADed.在该共享库中,我还想使用程序中的一些变量.声明这些变量的方式是什么?请注意,共享对象库是与我的程序分开编译的.

c linux gcc shared-objects

5
推荐指数
1
解决办法
218
查看次数

隐式调用时如何使用RTLD_DEEPBIND?

现在我有3个共享对象,A.so,B.so,C.so

    A.c    
    void libA()  
    {  
        common();  
    }  

    B.c
    void common()  
    {  
        printf("COME HERE B\n");  
    }  

    C.c
    void common()  
    {     
        printf("COME HERE C\n");  
    }  
    (just ingore the .h files)

    test.c
    int main()  
    {  
      libA();    
      return 1;  
    }  

complie:  
gcc -fPIC -shared libB.so libB.c  
gcc -fPIC -shared libA.so libA.c ./libB.so  
gcc -o test test.c libC.so libA.so  
Run Code Online (Sandbox Code Playgroud)

我希望结果是"来这里B",我可以用dlopenRTLD_DEEPBIND标志,
但它的成本太多时间从隐式调用函数改变成显式调用在我的项目.
反正有没有解决这个问题?

gcc -Wl,-Bsymbolic 在此解决方案中不起作用.

好吧,如果Ac包含普通的实现.它确实有效.

c linux shared-libraries shared-objects dlopen

5
推荐指数
1
解决办法
646
查看次数

更新后删除Air iOS SharedObject

SharedObject在游戏中使用s来存储玩家在游戏中的进度(等级分数,未锁定等级等).

一切都运行正常,但问题是当我提交游戏更新(具有相同的证书和相同的名称.swf.ipa文件)时,游戏更新时旧的SharedObject被删除,这对于游戏来说是一个非常大的问题.为了我.

这两个版本的游戏都是使用Flash CS 6和Air SDK 3.5制作的.

知道为什么SharedObject删除了,我怎么能防止这种情况?

air flash actionscript-3 shared-objects ios

5
推荐指数
1
解决办法
1931
查看次数

我如何使用Lua在C++类中共享变量?

我是Lua的新手,我一直在努力尝试在我正在整合的游戏引擎中实现逻辑的Lua脚本.到目前为止,我已经毫无困难地让Lua启动并运行引擎,我可以从Lua调用C和C函数中的Lua函数.

引擎现在的工作方式,每个Object类都包含一组变量,引擎可以快速迭代这些变量来绘制或处理物理.虽然游戏对象都需要访问和操作这些变量,以便游戏引擎自己看到任何变化,但他们可以自由创建自己的变量,Lua对此非常灵活,所以我不会预见到任何问题.

无论如何,目前游戏引擎方面的东西都坐在C盘中,我真的希望它们留在那里以达到性能的原因.因此,在一个理想的世界中,当产生一个新的游戏对象时,我需要能够让Lua对这个标准变量集的读/写访问权作为Lua对象基类的一部分,然后它的游戏逻辑可以继续狂奔.

到目前为止,我保留了两个独立的对象表--Laa生成了一个新的游戏对象,它将自己添加到一个数字索引的全局对象表中,然后继续调用一个C++函数,它创建一个新的GameObject类和在类中注册Lua索引(一个int).到目前为止,C++函数现在可以看到Lua对象并使用dostring在Lua land中轻松执行操作或调用函数.

我现在需要做的是将C++变量作为GameObject类的一部分,并将它们暴露给Lua,这就是谷歌让我失望的地方.我在这里遇到了一个非常好的方法,它使用标签详细说明了这个过程,但是我已经读过这个方法已被弃用,而不是metatables.

实现这一目标的理想方法是什么?是否值得学习如何使用libBind或一些等效方法传递类定义的麻烦,还是有一种简单的方法我可以用全局lua对象注册每个变量(一次,在产生时)?从Lua 5.1.4开始,"当前"最好的方法是什么?

c++ lua shared-objects

4
推荐指数
1
解决办法
2097
查看次数

共享对象位置

我正在使用此方法将共享对象保存在特定位置,但我无法提供路径

SharedObject.getLocal("save","how to give path here for window");
Run Code Online (Sandbox Code Playgroud)

这给出了以下错误

Error: Error #2130: Unable to flush SharedObject.
at Error$/throwError()
at flash.net::SharedObject/flush()
at OnlineDiagramEditor/SaveData_mouseDownHandler()[C:\Users\ruchidod\Adobe Flash Builder 4.6\OnlineDiagramEditor\src\OnlineDiagramEditor.mxml:3240]
at OnlineDiagramEditor/__SaveData_mouseDown()[C:\Users\ruchidod\Adobe Flash Builder 4.6\OnlineDiagramEditor\src\OnlineDiagramEditor.mxml:3522]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[E:\dev\4.y\frameworks\projects\framework\src\mx\core\UIComponent.as:13152]
at mx.managers::SystemManager/mouseEventHandler()[E:\dev\4.y\frameworks\projects\framework\src\mx\managers\SystemManager.as:2918]
Run Code Online (Sandbox Code Playgroud)

有时它给

Error: Error #2134: Cannot create SharedObject.
at flash.net::SharedObject$/getLocal()
at OnlineDiagramEditor/SaveData_mouseDownHandler()[C:\Users\ruchidod\Adobe Flash Builder 4.6\OnlineDiagramEditor\src\OnlineDiagramEditor.mxml:3236]
at OnlineDiagramEditor/__SaveData_mouseDown()[C:\Users\ruchidod\Adobe Flash Builder 4.6\OnlineDiagramEditor\src\OnlineDiagramEditor.mxml:3522]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[E:\dev\4.y\frameworks\projects\framework\src\mx\core\UIComponent.as:13152]
at mx.managers::SystemManager/mouseEventHandler()[E:\dev\4.y\frameworks\projects\framework\src\mx\managers\SystemManager.as:2918]
Run Code Online (Sandbox Code Playgroud)

actionscript-3 shared-objects

4
推荐指数
1
解决办法
4815
查看次数

.so后面有数字,如何在cmake的find_library中匹配它们?链接作为子依赖项找到的共享对象时出错

给出的
ls -lrt /usr/lib/libvpx*结果

lrwxrwxrwx 1 root root 2012年2月9日15日 /usr/lib/libvpx.so.1.0 ->libvpx.so.1.0.0
lrwxrwxrwx 1 root root 2012年2月9日15日 /usr/lib/libvpx.so.1 -> libvpx.so .1.0.0
-rw-r--r-- 1 root root 646120 2012 年 2 月 9 日 /usr/lib/libvpx.so.1.0.0

ls -lrt /usr/lib/libschroedinger*结果

lrwxrwxrwx 1 root root 29 Feb 8 2012 /usr/lib/libschroedinger-1.0.so.0 ->libschroedinger-1.0.so.0.11.0
-rw-r--r-- 1 root root 774044 Feb 8 2012 /usr/ lib/libschroedinger-1.0.so.0.11.0

ls -lrt /usr/lib/libgsm*结果

lrwxrwxrwx 1 root root 16 Nov 5 2009 /usr/lib/libgsm.so.1 -> libgsm.so.1.0.12
-rw-r--r-- 1 root root 50680 Nov 5 2009 …

cmake shared-libraries dynamic-linking shared-objects gstreamer

4
推荐指数
1
解决办法
2298
查看次数

共享对象是为32位还是64位机器编译的?

在Linux中是否有一个命令可以在/ usr/lib中的已编译共享对象(.so)上运行并知道它是为64位还是32位系统编译的?(我的意思是要知道ELF类,比如ELFCLASS32)

linux shared-objects

4
推荐指数
1
解决办法
2203
查看次数

如何确定哪个动态库负责创建指针?

假设您有一个使用dlopen()加载多个共享对象/动态库的程序.给定一个指向全局对象的指针(例如静态成员变量),是否可以确定指针是在哪个库的边界中分配的?

c c++ linux shared-objects dynamic-library

4
推荐指数
1
解决办法
156
查看次数