簡體   English   中英

哪個Qt庫包含QApplication

[英]Which Qt library contains QApplication

我正在用Swig用Java(使用JNI)包裝QT應用程序,所有過程一直進行到,直到,它引發了未定義的QApplication Exception異常。
我的問題是,如果加載QApplication的* .so(共享對象),則JVM無法找到QApplication的庫,我設法設法消除了該錯誤。
請告訴我在哪里可以找到QApplication的* .so(共享對象)
先感謝您。

    //mohan.cpp
 #include <QApplication>
 #include <QPushButton>
 int initQ()
 {
     char *argv[2];
     argv[0]="name";
     argv[1]="texteditapplication";
     int argc=2;
     QApplication app(argc, argv);

     QPushButton hello("Hello world!");
     hello.resize(100, 30);

     hello.show();
     return app.exec();
 }

//mohan.i
%module mohan

%{
/* Put headers and other declarations here */
 #include <QApplication>
 #include <QPushButton>
int initQ();
%}
extern int initQ();

//runme.java
public class runme {
  static {
System.out.println(System.getProperty("java.library.path"));
 System.loadLibrary("mohan");
  }

  public static void main(String argv[]) {
    System.out.println(mohan.initQ());  
    System.out.println();
  }
}

//執行

[mohan@mohan mohan]$ g++ -fpic -c mohan.cpp mohan_wrap.cxx -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/media/mohan/QtSDK/Desktop/Qt/474/gcc/mkspecs/default -I. -I/media/mohan/QtSDK/Desktop/Qt/474/gcc/include/QtCore -I/media/mohan/QtSDK/Desktop/Qt/474/gcc/include/QtGui -I/media/mohan/QtSDK/Desktop/Qt/474/gcc/include -I. -I. -I/usr/java/jdk1.6.0_33/include/ -I/usr/java/jdk1.6.0_33/include/linux/

[mohan@mohan mohan]$  g++ -shared mohan.o mohan_wrap.o -o libmohan.so
[mohan@mohan mohan]$ javac runme.java
[mohan@mohan mohan]$ java -Djava.library.path=. runme
.
java: symbol lookup error: /home/mohan/Desktop/mohan/libmohan.so: undefined symbol: _ZN12QApplicationC1ERiPPci

_ZN12QApplicationC1ERiPPci -> **QApplication**

gui應用程序幾乎總是需要QtMain和QtCore以及QtGui

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM