Zum Inhalt springen

Sylvihasi

Mitglieder
  • Gesamte Inhalte

    15
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Sylvihasi

  1. Keine Chance habe die .a zu einer .so neu compiliert. Habe die 2. .so neu compiliert und versucht mein Jar-File zu starten. Ich habe es auch mit dem : java -Djava.library.path=/Sylvi/norm_solaris/ -cp norm.jar package.Start 12345678 java -Djava.library.path=./ -cp norm.jar package.Start 12345678 --------------------------------------------------------------- Aber es läuft wieder auf den java.lang.UnsatisfiedLinkError hinaus. Ich weis nicht mehr wo das Jar noch sucht. Doch leider muss ich den Fehler bis morgen finden. In welchem Pfad sucht Java auf Solaris eine C++Library ??? LG Sylvi
  2. Hallo, ein Makefile habe ich leider nicht aber naja da muss ich wohl durch ! Also muss ich die anderen Sourcen alle erst in .o-Files umwandeln und diese dann zu einer .a oder einem .so compilieren. LG Sylvi
  3. Also muss ich die andere library auch neu erstellen ! Wenn ich nun 12 c-Files habe wie muss ich die denn compilieren ? Alle einzeln ? Wenn ja wie bring ich die dann wieder zusammen ? :confused: LG Sylvi
  4. Danke, ich habe den nm gefunden! LG Sylvi
  5. Hallo, danke -lnorm war sehr gut !!! Aber inzwischen hat er zwar kein Problem mehr mit der Library aber macht folgenden Fehler: ld: Warnung: -Datei /Sylvi/src/library/libnorm.a(norm00.o): falscher ELF-Rechnertype: EM_SPARC Kann das vielleicht daran liegen, dass die libnorm-a auf einem SPARC Solaris compiliert wurde und ich ein x86 habe ?
  6. Hallo, kann ich es auch anders probieren. Ich hab nur eine VMware Version von Solaris 10 und wenn ich nm suche findet er keinen. Oder ist er irgendwo versteckt, so dass ich ihn nur nicht gefunden habe. LG Sylvi
  7. Hallo, ich wusste gar nicht, das eine .a keine shared lib ist. Ich hab versucht sie so mit -L /Sylvi/src/library -lnormlib einzubinden, nur dann ha der g++ gesagt er kann die Library nicht finden. Und wenn ich nur -L angebe macht er zwar keine Fehler, aber ich glaube er hat sie nicht genommen. Kann ich irgendwie herausbekommen, ob er sie eingebunden hat bzw mir die Exports anschaun ? LG Sylvi
  8. Hallo, ich habe auf Solaris c++ Sourcen compiliert zu einer Shared Library und mit -L ein Verzeichnis angeben, in dem eine normlib.a Datei ist aber kein -l hinzugebe nimmt er diese dann als Library. Denn ich habe das Problem, dass er die normlib.a nicht finden konnte, wenn ich diese mit -l angegeben habe (mit Pfad, ohne, mit ./ ). --> pwd: /usr/sfw/bin ./g++ /Sylvi/scr/norm.cpp -I /Sylvi/src/include -L /Sylvi/src/library -G -o lib.so (im src : norm.cpp | im src/include: jni.h, jni_md.h, norm.h | im src/library: normlib.a) Oder habe ich bei der Compilierung etwas falsch gemacht? :confused: LG Sylvi
  9. Hallo, vielleicht könnt ihr mir ja helfen. Wenn ich auf Solaris c++ Sourcen compiliere und mit -L ein Verzeichnis angebe, in dem eine normlib.a Datei ist aber kein -l hinzugebe nimmt er diese dann als Library. Kann ich mir daher irgendwie die Exportfunktionen meiner lib.so ausgeben lassen (auf Win beispielsweise mit dem Depency Walker) um dies zu prüfen ? LG Sylvi
  10. Hallo, wie kann ich denn unter Solaris die Exportfunktionen von Shared Libraries ausgeben lassen ? Bzw. bekomme ich irgendwie heraus, ob beim Compilieren von C++ Sourcen die im -L angegebenen Libraries verwendet wurden. Wenn kein Fehler auftrat. LG Sylvi
  11. Es hat leider nichts gebracht. Er sagt immer noch, dass er die Lib nicht finden kann. Vielleicht ist ja echt ein fehler in einer der shared libraries ... Kann ich unter Solaris irgendwie die Exportfunktionen einer .so ausgeben lassen ? LG Sylvi
  12. Hallo, ich versuche derzeit ein auf Windows geschriebenes Java Native Interface (JNI) Projekt (1Jar, 2DLL's) auf Solaris zu portieren. Mein Jar-File funktioniert einwandfrei. Eine dll wurde von einem ehemaligen Kollegen als normlib.a auf Solaris portiert. Ich habe nun ein weiteres c++ File geschrieben, welches die JNI-Funktionalität beinhaltet und zusätzlich die schon vorhandene normlib.dll bzw das normlib.a als Library verwendt. Auf Windows funktioniert dies auch einwandfrei. Nur auf Solaris... Ich habe mein c++ File zu einem lib.so umgewandelt (aber weis nicht ob alles richtig eingebunden ist). Wenn ich nun mein Jar-File aufrufe kommt ein java.lang.UnsatisfiedLinkError: no lib in java.library.path at java.lang.ClassLoader.loadLibrary ... Daher ich glaube das ich einfach einen Path nicht richtig gesetzt habe und er das so-File in einem ganz anderen Verzeichnis als dem aktuellen sucht. --> Was muss ich denn alles gesetzt haben ? PATH,... ? Oder das die Compilierung meiner c++ Sourcen nicht stimmte. --> pwd: /usr/sfw/bin ./g++ /Sylvi/scr/norm.cpp -I /Sylvi/src/include -L /Sylvi/src/library -G -o lib.so (im src : norm.cpp | im src/include: jni.h, jni_md.h, norm.h | im src/library: normlib.a) Ich brauche dringend Hilfe !!! :confused: Danke Sylvi
  13. Hallo, ich versuche derzeit ein auf Windows geschriebenes Java Native Interface (JNI) Projekt (1Jar, 2DLL's) auf Solaris zu portieren. Mein Jar-File funktioniert einwandfrei. Eine dll wurde von einem ehemaligen Kollegen als normlib.a auf Solaris portiert. Ich habe nun ein weiteres c++ File geschrieben, welches die JNI-Funktionalität beinhaltet und zusätzlich die schon vorhandene normlib.dll bzw das normlib.a als Library verwendt. Auf Windows funktioniert dies auch einwandfrei. Nur auf Solaris... Ich habe mein c++ File zu einem lib.so umgewandelt (aber weis nicht ob alles richtig eingebunden ist). Wenn ich nun mein Jar-File aufrufe kommt ein java.lang.UnsatisfiedLinkError: no lib in java.library.path at java.lang.ClassLoader.loadLibrary ... :confused: Daher ich glaube das ich einfach einen Path nicht richtig gesetzt habe und er das so-File in einem ganz anderen Verzeichnis als dem aktuellen sucht. --> Was muss ich denn alles gesetzt haben ? PATH,... ? Oder das die Compilierung meiner c++ Sourcen nicht stimmte. --> pwd: /usr/sfw/bin ./g++ /Sylvi/scr/norm.cpp -I /Sylvi/src/include -L /Sylvi/src/library -G -o lib.so (im src : norm.cpp | im src/include: jni.h, jni_md.h, norm.h | im src/library: normlib.a) Ich brauche dringend Hilfe !!! :confused: Danke Sylvi
  14. Hallo, hier der Quellcode verkürzt: :mod: import javax.swing.*; import java.awt.*; import java.awt.event.*; public class TestLayout extends JFrame { public TestLayout() {init();} private JPanel MainPanel, CenterPanel, EastPanel, CenterNorthPanel, CenterCenterPanel, CenterSouthPanel; private JPanel CenterCenterNorthPanel, CenterCenterCenterPanel, CenterSouthNorthPanel, CenterSouthCenterPanel; private JMenuBar mb_funktions; private JMenu m_file, m_info; private JMenuItem mi_close; private JTextField txf_sorttxt3, txf_sorttxt4, txf_sorttxt5, txf_barcode, txf_s, txf_error; private JTextField txf_e, txf_mf_new, txf_mf_old, txf_sortart1, txf_sortart2, txf_sortart3, txf_sortart4; private JTextField txf_sortart5, txf_sorttxt1, txf_sorttxt2, txf_nb, txf_print, txf_sf_new, txf_sf_old; private JLabel lb_ausgabe, lb_barcode, lb_bspausgabe, lb_bspe, lb_s, lb_empty1; private JLabel lb_empty2, lb_error, lb_e, lb_mf_new, lb_mf_old, lb_sort, lb_sortart; private JLabel lb_sorttxt, lb_nb, lb_print, lb_sf_new, lb_sf_old; private JButton btn_checkezn; private void init() { MainPanel = new JPanel(); CenterPanel = new JPanel(); EastPanel = new JPanel(); CenterNorthPanel = new JPanel(); CenterCenterPanel = new JPanel(); CenterSouthPanel = new JPanel(); CenterCenterNorthPanel = new JPanel(); CenterCenterCenterPanel = new JPanel(); CenterSouthNorthPanel = new JPanel(); CenterSouthCenterPanel = new JPanel(); mb_funktions = new JMenuBar(); m_file = new JMenu(); m_info = new JMenu(); mi_close = new JMenuItem(); lb_empty1 = new JLabel(); lb_bspe = new JLabel(); lb_e = new JLabel(); lb_s = new JLabel(); lb_sort = new JLabel(); lb_sortart = new JLabel(); lb_sorttxt = new JLabel(); lb_ausgabe = new JLabel(); lb_empty2 = new JLabel(); lb_bspausgabe = new JLabel(); lb_mf_new = new JLabel(); lb_mf_old = new JLabel(); lb_sf_new = new JLabel(); lb_sf_old = new JLabel(); lb_print = new JLabel(); lb_nb = new JLabel(); lb_barcode = new JLabel(); lb_error = new JLabel(); txf_e = new JTextField(31); txf_s = new JTextField(2); txf_mf_new = new JTextField(); txf_mf_old = new JTextField(); txf_sf_new = new JTextField(); txf_sf_old = new JTextField(); txf_print = new JTextField(); txf_barcode = new JTextField(); txf_nb = new JTextField(); txf_error = new JTextField(); txf_sortart1 = new JTextField(1); txf_sorttxt1 = new JTextField(31); txf_sortart2 = new JTextField(1); txf_sorttxt2 = new JTextField(31); txf_sortart3 = new JTextField(1); txf_sorttxt3 = new JTextField(31); txf_sortart4 = new JTextField(1); txf_sorttxt4 = new JTextField(31); txf_sortart5 = new JTextField(1); txf_sorttxt5 = new JTextField(31); btn_checkezn = new JButton(); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); setName("frame"); setSize(500, 450); setJMenuBar(mb_funktions); mb_funktions.add(m_file); mb_funktions.add(m_info); m_file.add(mi_close); MainPanel.setLayout(new BorderLayout()); MainPanel.add(CenterPanel, BorderLayout.CENTER); MainPanel.add(EastPanel, BorderLayout.EAST); getContentPane().add(MainPanel, BorderLayout.CENTER); CenterPanel.setLayout(new BorderLayout()); CenterPanel.add(CenterNorthPanel, BorderLayout.NORTH); CenterPanel.add(CenterCenterPanel, BorderLayout.CENTER); CenterPanel.add(CenterSouthPanel, BorderLayout.SOUTH); EastPanel.add(btn_checkezn); CenterNorthPanel.setLayout(new GridLayout(3, 2, 1, 1)); CenterNorthPanel.add(lb_empty1); CenterNorthPanel.add(lb_bspe); CenterNorthPanel.add(lb_e); CenterNorthPanel.add(txf_e); CenterNorthPanel.add(lb_s); CenterNorthPanel.add(txf_s); CenterCenterPanel.setLayout(new BorderLayout()); CenterCenterPanel.add(CenterCenterNorthPanel, BorderLayout.NORTH); CenterCenterPanel.add(CenterCenterCenterPanel, BorderLayout.CENTER); CenterCenterNorthPanel.add(lb_sort); CenterCenterCenterPanel.setLayout(new GridLayout(6, 2, 1, 1)); CenterCenterCenterPanel.add(lb_sortart); CenterCenterCenterPanel.add(lb_sorttxt); CenterCenterCenterPanel.add(txf_sortart1); CenterCenterCenterPanel.add(txf_sorttxt1); CenterCenterCenterPanel.add(txf_sortart2); CenterCenterCenterPanel.add(txf_sorttxt2); CenterCenterCenterPanel.add(txf_sortart3); CenterCenterCenterPanel.add(txf_sorttxt3); CenterCenterCenterPanel.add(txf_sortart4); CenterCenterCenterPanel.add(txf_sorttxt4); CenterCenterCenterPanel.add(txf_sortart5); CenterCenterCenterPanel.add(txf_sorttxt5); CenterSouthPanel.setLayout(new BorderLayout()); CenterSouthPanel.add(CenterSouthNorthPanel, BorderLayout.NORTH); CenterSouthPanel.add(CenterSouthCenterPanel, BorderLayout.CENTER); CenterSouthNorthPanel.add(lb_ausgabe); CenterSouthCenterPanel.setLayout(new GridLayout(9, 2)); CenterSouthCenterPanel.add(lb_empty2); CenterSouthCenterPanel.add(lb_bspausgabe); CenterSouthCenterPanel.add(lb_mf_new); CenterSouthCenterPanel.add(txf_mf_new); CenterSouthCenterPanel.add(lb_mf_old); CenterSouthCenterPanel.add(txf_mf_old); CenterSouthCenterPanel.add(lb_sf_new); CenterSouthCenterPanel.add(txf_sf_new); CenterSouthCenterPanel.add(lb_sf_old); CenterSouthCenterPanel.add(txf_sf_old); CenterSouthCenterPanel.add(lb_print); CenterSouthCenterPanel.add(txf_print); CenterSouthCenterPanel.add(lb_barcode); CenterSouthCenterPanel.add(txf_barcode); CenterSouthCenterPanel.add(lb_nb); CenterSouthCenterPanel.add(txf_nb); CenterSouthCenterPanel.add(lb_error); CenterSouthCenterPanel.add(txf_error); lb_bspe.setText("1234567890123456789012345678901"); lb_e.setText("E-Nr.:"); lb_s.setText("S-Nr:"); lb_sort.setFont(new Font("MS Sans Serif", 1, 14)); lb_sort.setText("Sort-Texte"); lb_sortart.setText("Sort-Text-Art/code"); lb_sorttxt.setText("Sort-Text"); lb_bspausgabe.setText("1234567890123456789012345"); lb_ausgabe.setFont(new Font("MS Sans Serif", 1, 14)); lb_ausgabe.setText("Ausgabeformen"); lb_mf_new.setText("Ma-Form new"); lb_mf_old.setText("Ma-Form old"); lb_sf_new.setText("So-Form new"); lb_sf_old.setText("So-Form old"); lb_print.setText("Druck-Form"); lb_barcode.setText("Barcode-Form"); lb_nb.setText("Nb"); lb_error.setText("Fehler"); txf_s.setText("AA"); //txf_controlbyte.setDocument(new JTextFieldLimit(2)); txf_mf_new.setEditable(false); txf_mf_old.setEditable(false); txf_sf_new.setEditable(false); txf_sf_old.setEditable(false); txf_print.setEditable(false); txf_barcode.setEditable(false); txf_nb.setEditable(false); txf_error.setEditable(false); btn_checkezn.setText("Eingabe pr\u00fcfen"); btn_checkezn.setAlignmentX(0.5F); m_file.setText("Datei"); m_info.setText("Info"); mi_close.setText("close"); mi_close.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { mi_closeActionPerformed(evt); } }); setVisible(true); pack(); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent we) { System.out.println("Closing Window ..."); System.exit(0); } }); } public static void main(String args[]) { TestLayout tl = new TestLayout(); tl.setVisible(true); tl.init(); } } jede Sort-Text-Art : 1 Zeichen S-Nr: 2 Zeichen jeder Sort-Text : 31 Zeichen E-Nr: 31 Zeichen ______________________________________________ Leider brauche ich aber genau die Anordnung, also vielleicht hat noch einer ne Ahnung. LG Sylvi
  15. Hallo, ich habe in meinem Programm einige JTextFields auf meinen Panels angeordnet. Nun möchte ich jedoch, dass diese nur eine bestimmte Größe (Länge) haben. public JTextField txf_test; txf_test = new JTextField(6); txf_test.setText("BlaBla"); Mein txf_test wird jedoch viel länger dargestellt und ich kann auch viel mehr eingeben. Wie kann ich es so ändern, dass in das txf_test nur 6 Zeichen eingegeben werden können und es auch nur so groß angezeigt wird ? Ich habe es auch schon mit der java.swing.text.PlainDocument class wie auf: http://www.codeguru.com/java/articles/444.shtml beschrieben versucht aber irgendwie ändert sich nichts und zusätzlich wird meine Texteingabe herausgelöscht bzw. nicht mehr angezeigt. //txf_test.setDocument(new JTextFieldLimit(6)); Cu Sylvi :confused:

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...