Mysql Static Dll
Are you compiling your code for 64-bit but using a 32-bit version of the MySQL library to link it? – rushman Nov 3 '11 at 8:37 I am compiling 32 using 64bit libs. I got the 32 libs and I can only manage to compile the program when I use both mysqlclient.lib and libmysql.lib but then it won't launch without libmysql.dll, my goal is to make it statically linked.
Note To avoid potential crashes the build configuration of MySQL Connector/C++ should match the build configuration of the application using it. For example, do not use the release build of MySQL Connector/C++ with a debug build of the client application.
Static library The MySQL Connector/C++ static library file is mysqlcppconn-static.lib. This needs to be statically linked with your application. You also need to link against the files libmysql.dll and libmysql.lib. Once linking has been successfully completed, the application will require access to libmysql.dll at run time. Dynamic library The MySQL Connector/C++ dynamic library file is mysqlcppconn.dll. In order to build your client application you need to link it with the file mysqlcppconn.lib.
At run time the application will require access to the files mysqlcppconn.dll and libmysql.dll. Building a MySQL Connector/C++ application with Microsoft Visual Studio Initially, the procedure for building an application to use either the static or dynamic library is the same. You then carry out some additional steps depending on whether you want to build your application to use the or library. • By default CPPCONN_PUBLIC_FUNC is defined to declare functions to be compatible with an application that calls a DLL. If building an application to call the static library, you must ensure that function prototypes are compatible with this.
In this case CPPCONN_PUBLIC_FUNC needs to be defined to be an empty string, so that functions are declared with the correct prototype. In the Project, Properties tree view, under C++, Preprocessor, enter CPPCONN_PUBLIC_FUNC= into the Preprocessor Definitions text field.
• Under Linker, Input, add mysqlcppconn.lib into the Additional Dependencies text field. • The application will need to access the MySQL Connector/C++ Dynamic Linked Library at run time.
Therefore, mysqlcppconn.dll needs to be in the same directory as the application executable, or somewhere on the system's path. Copy mysqlcppconn.dll to the same directory as the application. Alternatively, extend the PATH environment variable using SET PATH=%PATH%;C: path to cpp. Alternatively, you can copy mysqlcppconn.dll to the Windows installation Directory, typically c: windows.