如何从包含java本机方法的C编写的文件连接mysql?

如何从包含java本机方法的C编写的文件连接mysql?,java,mysql,c,java-native-interface,shared-libraries,Java,Mysql,C,Java Native Interface,Shared Libraries,我需要一些方法来连接MySQL和C,其中包含Java JNI方法。 我制作了一个Java文件,它调用一个用C编写的本机方法,该方法需要连接到MySQL数据库 C文件 #include <stdio.h> #include <mysql/mysql.h> #include "MyClass.h" JNIEXPORT jstring JNICALL Java_pkg_MyClass_display(JNIEnv *env, jobject obj){ ret

我需要一些方法来连接MySQL和C,其中包含Java JNI方法。 我制作了一个Java文件,它调用一个用C编写的本机方法,该方法需要连接到MySQL数据库

C文件

 #include <stdio.h>
 #include <mysql/mysql.h>
 #include "MyClass.h"
 JNIEXPORT jstring JNICALL Java_pkg_MyClass_display(JNIEnv *env, jobject obj){
     return  (*env)->NewStringUTF(env,mysql_get_client_info());
 }
public class MyClass {
public native String display();
public static String Disp(){
    MyClass ob = new MyClass();
    String str =  ob.display();
    return str;
     }
static {
    System.load("Desktop/libdemo.so");
}
    public static void main(String []args){
        System.out.println(Disp());
   }
}
创建共享对象库(.so)后,出现错误:

undefined reference to : mysql_get_client_info()

请建议一些方法来纠正这个问题。

JDBC有什么问题吗?据我所知,JDBC是用java连接数据库的。我需要在创建时将其连接到c文件。所以“我需要将其连接到c文件”-对,但为什么?我需要为FPGA开发一个UI,它需要.so文件来与硬件交互。为了制作UI,我选择使用JAVA。我使用Java接受数据,并使用本机方法将其发送到c文件。这些数据应依次存储在数据库中。根据我的说法,我需要用C连接数据库。请建议是否有其他方法。你安装了libmysql开发库了吗?