Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/153.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ OSXDylib指的是可执行文件本身_C++_Mysql_Macos_Linker_Dylib - Fatal编程技术网

C++ OSXDylib指的是可执行文件本身

C++ OSXDylib指的是可执行文件本身,c++,mysql,macos,linker,dylib,C++,Mysql,Macos,Linker,Dylib,我不确定我问这个问题的方式是否正确,但我最近尝试制作一个使用mysql/c++的应用程序 我这样编译程序: g++ -o test main.cpp -I./include -L./lib -lmysqlclient -lmysqlcppconn 当我运行程序时,它会做出以下响应: dyld: Library not loaded: /home/myname/Desktop/path/to/exe Referenced from: /Users/myname/Desktop/path/to

我不确定我问这个问题的方式是否正确,但我最近尝试制作一个使用mysql/c++的应用程序

我这样编译程序:

g++ -o test main.cpp -I./include -L./lib -lmysqlclient -lmysqlcppconn
当我运行程序时,它会做出以下响应:

dyld: Library not loaded: /home/myname/Desktop/path/to/exe
  Referenced from: /Users/myname/Desktop/path/to/./test
  Reason: image not found
Trace/BPT trap: 5
谁能看出我做错了什么


提前谢谢,如果需要更多关于这个问题的信息,请告诉我。

我只能猜测您的mysql库不在标准位置。
如果要将库保留在非标准位置,应将环境变量
DYLD\u LIBRARY\u PATH
设置为指向动态链接库。
在linux/most unices下,这将是
LD\u LIBRARY\u PATH

比如:

export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}:./lib";
./yourExecHere

我们应该做到这一点

我尝试过这样做,但我仍然得到了“库未加载:/home/myname/Desktop/path/to/exe”我曾经错误地导出了DYLD_library_路径以包含此路径(该路径不存在),但现在似乎没有路径可以容纳它。很抱歉,我无法确定可能的错误,因此我将所有.cpp文件移到了一个新的文件夹结构并重写了Makefile。我现在都工作了,谢谢!