- 博客(6)
- 收藏
- 关注
原创 arm下编译并运行zbar实现图片二维码解析
注意:配置里面加了很多--without项,是为了编译通过,免得去折腾那些环境;向zbar本身也是支持直接解析img的,但是编译会报错,因此采取曲线救国方式,通过直接调用zbar的lib来实现解析;另一部分是将y800数据输入到zbar的库去解析,这部分主要是参考zbarimg.c。一部分是将djpeg生成的ppm文件转换成y800数据。调用zbar库的应用程序。
2024-07-06 23:30:07
1213
原创 32位系统使用nfs报EOVERFLOW(value too large for defined data type)
问题现象: 使用32位编译的linux内核,在通过nfs mount加载so失败 cannot load xxx.so 排查: so所在位置已被包含到LIB_LABRARY_PATH so对应的文件类型是32位的动态库文件 使用strace加载程序 报fstat *** =-1 EOVERFLOW(value too large for defined data type) 这个问题的原因是远程机器的IPC或文件系统对象的uid_t off_t gid_t比本地系统的要大,比
2024-06-30 08:37:10
302
原创 gcc动态链接库使用自定义数据段
seci_start和_seci_end分别是定义在段的起始和结束的变量。需要注意a.out和libmax.so不能使用相同的自定义数据段,否则会冲突;定义了修饰符号_sec_i,表明该变量是放在了段.sect中。定义4个文件sect0-3,每个文件内容相同,magic不同。used告诉编译器这个变量要被使用到,不要优化。则4个文件定义的静态变量都放在了.sect段。生成$(objs),编译指令要加-fPIC。定义对外接口sect.
2024-06-10 22:29:11
1137
1
原创 linux 4 timer_list使用
最近在基于linux4的版本开发驱动,使用到timer模块,遂到网上找参考的使用例子。发现几乎都是基于2.x版本的内核的使用例子,而linux4上的timer结构体已经和原来完全不同了,无法直接使用。新版本的timer_list结构体如下所示:struct timer_list { /* * All fields that change during normal runtime grouped to the * same cacheline */ struct hlist_n
2022-05-27 16:45:33
277
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人