当前位置: 技术问答>linux和unix
Linux中,如何用动态共享库(.so)来封装某个纯数据文件
来源: 互联网 发布时间:2015-11-11
本文导语: 最近做一个Linux工程,希望用动态共享库(.so)来封装某个纯数据文件。我想问的是,对于一般的数据文件,包括文本和二进制数据,如何用动态共享库(.so)这种形式封装,由应用程序如何调用呢? 各位给出出主意!多...
最近做一个Linux工程,希望用动态共享库(.so)来封装某个纯数据文件。我想问的是,对于一般的数据文件,包括文本和二进制数据,如何用动态共享库(.so)这种形式封装,由应用程序如何调用呢?
各位给出出主意!多谢!
各位给出出主意!多谢!
|
不解。目的是什么?
|
既然是纯数据的东西,就没有必要做成共享库吧?何必呢?
|
可以,你把数据直接写在里面就行了~
编译成so即可
编译成so即可
|
我想的是,通过另一个程序将下面的定义写进你的.so中,为了避免数组过大,每1M做一个分段。
unsigned char s1[1024];
unsigned char s2[1024];
unsigned char s3[1024];
...
memcpy(s1...);
memcpy(s2...);
memcpy(s3...);
...
//函数接口
void GetData(unsigned char *data, int nBegin, int nEnd);
以上仅供参考
unsigned char s1[1024];
unsigned char s2[1024];
unsigned char s3[1024];
...
memcpy(s1...);
memcpy(s2...);
memcpy(s3...);
...
//函数接口
void GetData(unsigned char *data, int nBegin, int nEnd);
以上仅供参考
|
由于要做的东西要同时在Linux和Windows上运行,我们在Windows上使用了纯资源DLL的形式来包装该数据文件,为了统一,希望Linux上也用共享库的形式包装数据文件,想问各位的是,Linux上是否也有这种机制,将数据包装成共享库so的形式?
|
文件大了,恐怕还是不能像robinswan() 那样处理哦!
也许实在要那样,可以通过一个辅助程序,将一个文件写给程序的变量。
也许实在要那样,可以通过一个辅助程序,将一个文件写给程序的变量。