c++不会在qtcreator中链接,但在raspberry pi3上可以在本地正常工作

zdwk9cvp  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(353)

首先,感谢你至少阅读了这个问题。
第二,如果这是一个“无需思考的问题”,请随意称我为白痴
现在回到手头的问题。。。
我正在运行ubuntu16.04(64位),qt creator是我的ide,总的来说它运行得很好。我可以交叉编译raspberry pi3(运行raspbian),也可以编译x-plane的插件。
一切都很顺利,直到我需要在我的项目中实现mysql。就在那时一切都变糟了。
我不能使用qt库来实现这一点,因为x-plane不喜欢其插件中任何与qt相关的东西。但这很好,我有connector-c在那台机器上工作,它连接到我的mysql服务器,做它应该做的一切。
我想我已经阅读了几乎每一个论坛,观看了每一个youtube视频,但不能让qt creator编译与连接器的树莓圆周率。
我在pi上本地编写/编译了一个测试应用程序(使用g
),效果非常好。但是由于某种原因(可能是政府的阴谋?),它拒绝在qt-creator下编译时链接库。
在qtcreator中编译时遇到的错误是:未定义对“get\u driver\u instance”的引用
目前,我已按照以下说明在此处设置交叉编译器:https://wiki.qt.io/raspberrypi2eglfs
从这里下载了连接器代码:git clonehttps://github.com/mysql/mysql-connector-cpp
我按照以下说明编译connector-c++:https://dev.mysql.com/doc/connector-cpp/en/connector-cpp-installation-source-unix.html
我的头在砖墙上撞了1000下:(血迹斑斑的墙的照片不可用)
另外,我也试过在我的ubuntu pc上编译connector,带有pi的sysroot等路径,但我认为它是64位版本,这会导致qt creator对“无法识别的格式”有一个错误的解释。
我希望这只是我有一个“老年时刻”,希望有人能给我指出正确的方向。
为了节省不相关的日志/代码,我会等到有人要求时再复制/粘贴他们需要的内容。
再次,提前感谢你,我知道我会永远感激你对这件事的任何了解(最好在我变得更疯狂之前)

tvmytwxo

tvmytwxo1#

经过两周的痛苦,我已经解决了这个问题。以下是我认为的问题:
首先,我发现mysqlcppconn是不需要的(至少对我来说),并且使用了/usr/lib中的mysql库
其次,到libmysqlclient.so.6.0.22的符号链接默认为:libmysqlclient.so.6->libmysqlclient.so.6.0.22
编译器正在查找不存在的libmysqlclient.so。所以我创建了链接(libmysqlclient.so->libmysqlclient.so.6)并且成功了!!
感谢所有的帮助。

相关问题