问题标签 [libmysql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
565 浏览

xcode4 - How do I link a third party dylib in a Mac OS X app using XCode 4.5? "Undefined symbols" error

I'm trying to use functions defined in a third-party dynamic library (libmysql) in a desktop app for Mac OS X. I'm using XCode 4.5.1 on Mac OS X v. 10.8.2.

Here's what I've done so far:

1) I downloaded the Mac OS X 10.5 x86 64-bit C connector files from http://dev.mysql.com/downloads/connector/c/ (this is the most recent version available).

2) I copied the files from the disk image to a local directory.

3) I added the path to that local directory to my project's Build Settings->Search Paths->User Header Search Paths and set "Always Search User Paths" to "Yes"

4) I added libmysql.client to Build Phases->Copy Files

5) I added libmysql.client to Copy Bundle Resources

6) I wrote a test function in my code:

The project compiles (target:My Mac 64-bit), but I get "Undefined symbols for architecture x86_64" errors for the two mysql functions from the linker. Here is the full error message:

Ld "/Users/chapka/Library/Developer/Xcode/DerivedData/The_Single_Table_Admin_Tools-ctdgurwiktybjqcnlfuufetgimfy/Build/Products/Debug/The Single Table Admin Tools.app/Contents/MacOS/The Single Table Admin Tools" normal x86_64 cd "/Users/chapka/Documents/Developer/The Single Table/The Single Table Admin Tools" setenv MACOSX_DEPLOYMENT_TARGET 10.8 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk -L/Users/chapka/Library/Developer/Xcode/DerivedData/The_Single_Table_Admin_Tools-ctdgurwiktybjqcnlfuufetgimfy/Build/Products/Debug "-L/Users/chapka/Documents/Developer/The Single Table/The Single Table Admin Tools" "-L/Users/chapka/Documents/Developer/The Single Table/The Single Table Admin Tools/The Single Table Admin Tools" "-L/Users/chapka/Documents/Developer/The Single Table/The Single Table Admin Tools/../../Libraries/mysql" -F/Users/chapka/Library/Developer/Xcode/DerivedData/The_Single_Table_Admin_Tools-ctdgurwiktybjqcnlfuufetgimfy/Build/Products/Debug -filelist "/Users/chapka/Library/Developer/Xcode/DerivedData/The_Single_Table_Admin_Tools-ctdgurwiktybjqcnlfuufetgimfy/Build/Intermediates/The Single Table Admin Tools.build/Debug/The Single Table Admin Tools.build/Objects-normal/x86_64/The Single Table Admin Tools.LinkFileList" -mmacosx-version-min=10.8 -fobjc-arc -fobjc-link-runtime -framework Cocoa -o "/Users/chapka/Library/Developer/Xcode/DerivedData/The_Single_Table_Admin_Tools-ctdgurwiktybjqcnlfuufetgimfy/Build/Products/Debug/The Single Table Admin Tools.app/Contents/MacOS/The Single Table Admin Tools"

Undefined symbols for architecture x86_64: "_mysql_server_end", referenced from: -[TSTDataSource gameCount] in TSTDataSource.o "_mysql_server_init", referenced from: -[TSTDataSource gameCount] in TSTDataSource.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

I've looked around for other questions like this, but they all seem to be solved by steps 4 and/or 5 above. The only other suggestion I found was to use install_name_tool, but I'm not sure what exactly I would need to change or what I would need to change it to. If this is the likely issue, any hints would be more than welcome.

0 投票
3 回答
1175 浏览

c++ - MySQL C++ 连接器是否比 MySQL C API 慢?

我正在开发一个 C++ 应用程序,它需要连接到 MySQL 服务器以获取一些信息,但我的应用程序不经常运行查询。因此,由于 C++ 连接器在幕后使用 C API ......我有这个疑问。我在选择 C ​​API 还是 C++ API 进退两难?

0 投票
0 回答
228 浏览

c - 与 C API Libmysql 连接时出现一致的错误 2005

首先,我想说我多年来一直潜伏在这个网站上,我感谢你为帮助我使用 C\C++ 所做的一切。

我遇到的真正问题是,我在 Windows 中制作了一个解析 yaml 文件的程序,然后使用解析的信息查询 SQL 数据库,并且运行良好。所以我把它移植到了 linux 上,这似乎已经奏效了,省去了一个问题。每当我测试程序时,我都会收到错误 2005,说它找不到主机名。我试过强制使用TCP,但仍然无济于事。我已经尝试了多个数据库,奇怪的是这在 Windows 上运行良好,所以如果有人可以阐明这个问题。

错误具体是:Error: 2005: Unknown MySQL server host '#.#.#.#' (0)

注意:# 只是为了审查实际的 IP 地址。

我不确定自己做错了什么,希望得到一些帮助。我的代码如下。

0 投票
2 回答
1588 浏览

c++ - 使用 MySQL C API 生成的共享库时,c++“未在此范围内声明错误

我生成了一个包含 MySQL C API 函数的共享库。它有一个像这样的 sample.h 和 sample.cpp 文件

在 sample.cpp

用过的:

  • g++ -fPIC -c 示例.cppmysql_config --cflags

  • g++ -shared -Wl,-soname,libsample.so -o libsample.so sample.omysql_config --libs

现在生成了 libsample.so 并将其移至 /usr/lib 现在我创建了一个小 cpp 文件,该文件在同一目录中使用此共享库。 使用sample.cpp

用过的:

  • g++ -c usesample.cpp -lsample

它给了我这个错误:

错误:未在此范围内声明“MysqlInstance”错误:未在此范围内声明对象

谢谢

0 投票
0 回答
449 浏览

c++ - MySQL 连接器/C++ 在 read() 上挂起

我正在使用 Boost 线程(pthread)在 C++ 中编写一个多线程应用程序。该应用程序产生 100 个线程,每个线程执行以下任务(我正在编写将在每个线程中运行的代码片段):

在运行进程时(应用程序,如前所述,即有 100 个这样的线程),我在中途附加 gdb 并观察到超过 40% 的线程在 read() 调用中挂起。所有的回溯都有 mysql 库函数(vio_read() 等),没有一个来自我的代码,因为我的代码不执行任何 I/O。

谁能指出为什么会出现这个问题。我应该检查我的代码/网络还是 MySQL 服务器配置?我是否正确使用了 C++ 连接器库?

0 投票
1 回答
2126 浏览

xcode - OSX Xcode - 打包依赖 libmysqlclient.18.dylib

在我无法找出正确的搜索词之前,这很可能已经被问到了。

我正在编写一个在 OSX 桌面上运行的客户端-服务器应用程序,它将与本地网络上的 MySQL 服务器通信。当基本上一堆 SQL 语句在内部是完美的时,实现 Web 服务 API 似乎是冗长的。

我已经在我的开发机器上与 MySQL 服务器的安装过程搏斗了,广告不得不求助于将 libmysqlclient.18.dylib 符号链接到 /usr/lib 即使我将包含路径放在头搜索路径中。

我需要知道的是如何创建一个 .app 文件,我可以将其发送到可以访问 libmysqlclient.18.dylib 文件的其他机器?

尽管我已经为 iDevices 做 Obj-c 2 年了,但我已经习惯了 Windows 有安装程序来执行此操作,并且对 OSX 编程有点陌生。

是否有允许将库复制到 .app 文件中的设置,或者我是否需要在每台机器上安装 mysql 连接器 - 如果是这样,我如何解决符号链接问题,理想情况下我需要它从库存中工作文件夹。

如果这已在其他地方得到回答,请指出我正确的方向。

0 投票
1 回答
919 浏览

mysql - DbExpress:在旧的 MySQL 5.0 服务器上使用新的 5.1 libmysql.dll

我想从其他开发人员那里了解将最近的 libmysql.dll 与以前的 MySQL 服务器一起使用是否有任何缺陷。我使用 Delphi 和 DbExpress 来构建数据库应用程序。

我的主要原因是我的开发机器上同时安装了 Delphi 7 和 Delphi 2010。我用 D7 构建了使用 MySQL 5.0 但 D2010 需要 MySQL 5.1 的应用程序。

如果我能提供帮助,我想避免升级我以前的所有数据库应用程序,因此我想继续使用 MySQL 5.0 服务器,但仍然使用 D2010 开发所有新的数据库应用程序。

您对此事的意见和/或建议将不胜感激。

0 投票
1 回答
8356 浏览

php - 加载 mysqli 扩展时,“版本 libmysqlclient_18 未在文件 libmysqlclient.so.18 中定义”

我最近从 mysql 5.5 切换到 mariadb 5.5,但是现在似乎 mysqli 的 php 扩展将无法加载。我收到以下错误:

PHP 警告:PHP 启动:无法加载动态库 '/usr/lib/php/modules/mysqli.so' - /usr/lib/php/modules/mysqli.so:符号 mysql_client_errors,版本 libmysqlclient_18 未在文件 libmysqlclient 中定义。 so.18 在第 0 行的 Unknown 中带有链接时间参考

我检查了我的 /usr/lib/mysql/ 并具有以下内容:

在 /usr/lib/

这是在 CentOS 6.3 上

0 投票
1 回答
327 浏览

c++ - MySQL 客户端库版本与服务器的兼容性?

我们正在编写一个 C++ 应用程序,它动态链接到 MySQL 共享库以与服务器通信。我的问题是针对普通查询和东西(几乎每个库都支持),是否有必要强制服务器和库版本相同?

注意:有 mysql-shared-compat RPM 可以解决这个问题,但它包含以前版本的所有库。而且我们不想要求用户安装该软件包以及 mysql-shared 软件包。

0 投票
0 回答
773 浏览

mysql - MySQL C API - 在调用 mysql_store_result() 或 mysql_stmt_store_result() 之后重用连接

对于“选择” sql,在我们通过调用 my_fetch_xxx() API 从结果集中复制所有行之前,多次重复调用 my_xxxx_store() API(以缓存客户端中的所有结果)的连接是否安全通过调用 my_xxxx_store() API 缓存?

例如,如果从多个线程调用此函数,是否通过传递不同的 select 语句正确地获取数据,没有任何问题。就像同时调用

函数 foo 类似于。

准备好的陈述也安全吗?就像是。