首先,提前感谢您至少阅读这个问题。
其次,如果这是一个没有脑子的人,请随时称我为白痴"
现在谈到手头的问题......
我正在使用QT Creator作为我的IDE运行Ubuntu 16.04(64位),总体而言它运行良好。我可以交叉编译Raspberry Pi3(运行raspbian)并编译X-Plane的插件。
在我需要将MySql实现到我的项目之前,一切都很顺利。那一切都向南走了。
我无法使用Qt库,因为X-Plane不喜欢其插件中的任何Qt相关内容。但这很好,我有连接器-c ++在该机器上工作,它连接到我的MySql服务器并执行它应该做的所有事情。
我想我已经阅读了几乎每个论坛并观看了每个YouTube视频,但是无法让Qt Creator使用连接器编译来覆盖树莓派。
我在pi上本地编写/编译了一个测试应用程序(使用g ++)并且效果很好。但出于某种原因(政府情节可能?),在Qt Creator下进行编译时拒绝链接库。
在QtCreator中编译时遇到的错误是: 未定义的引用`get_driver_instance'
目前, 我在这里按照设置交叉编译器的说明进行操作: https://wiki.qt.io/RaspberryPi2EGLFS
从此处下载连接器代码: git clone https://github.com/mysql/mysql-connector-cpp
我已按照编译connector-c ++的说明进行操作: https://dev.mysql.com/doc/connector-cpp/en/connector-cpp-installation-source-unix.html
我在这里的砖墙上撞了我的头1000x: (没有血染墙的图片)
此外,我已经尝试在我的Ubuntu pc上编译连接器以及pi的sysroot等路径,但我认为它制作了一个64位版本,这导致Qt Creator有一个关于"无法识别的格式的假痰#34;
我希望这只是我有一个"高级时刻"并且有人可以指出我正确的方向。
为了节省不相关的日志/代码,我会等到有人要求,然后复制/粘贴他们需要的东西。
再次提前感谢,并且知道我将永远感激这件事的任何亮点(最好是在我去疯狂之前)
答案 0 :(得分:0)
经过2周的疼痛,我已经解决了这个问题。以下是我认为的问题:
首先,我发现不需要mysqlcppconn(至少对我而言)并使用/ usr / lib中的mysql库
其次,libmysqlclient.so.6.0.22的符号链接默认为: libmysqlclient.so.6 - > libmysqlclient.so.6.0.22
编译器正在寻找不存在的libmysqlclient.so。所以我创建了链接(libmysqlclient.so - > libmysqlclient.so.6),它有效!!
感谢所有帮助过的人。