Qt自定义控件库在designer上加载不成功问题排查
Qt自定义控件库在designer上加载不成功问题排查
1.将自定义控件库拷贝到designer相应路径,在designer上没有相应的控件
sudo cp libxxx.so /Qt5.5.1/5.5/gcc_64/plugins/designer/ -r -d
编译成功只是语法没有问题,但会有相应符号未定义的情况,dedigner软件加载控件库时会加载出错。
编译动态库时, 当头文件定义了函数,却没有实现,是没有编译警告的,因为它没有进一步检查头文件中的类和函数有没有实现,而是在运行时才开始查找, 这很容易出现问题,
此时就要排查自己代码中有那些函数声明了却没有实现
2.将自定义控件库拷贝到designer相应路径,designer启动时段错误
这肯定是自定义控件库本身的段错误了,使用gdb调试一下,直接命令r运行,段错误时 bt 命令查看栈信息
gdb ./designer
问题定位: 这行代码使用了未初始化指针,且未判空,导致段错误。