Sehr geehrte Community,
Ich hbae eine Beschreibung im Netz gefunden, die eine dynamische Bibliothek in eine statische umwandelt. Da es so eine Beschreibung gibt, bin ich mir sicher dass es auch geht, nur verstehe ich überhaupt was ich da überhaupt tue.
Ich benutze hierfür die MinGW Konsole.
echo EXPORTS > libfftw3-3.def
nm libfftw3-3.dll | grep ' T _' | sed 's/.* T _//' >> libfftw3-3.def
dlltool -d libfftw3-3.def -D libfftw3-3.dll --output-lib libfftw3-3.lib
Ist das auch alles so richtig? Geht das wirklich einfach so umzuwandeln und wenn ja, was heißen die Befehle?
echo Exports > libfftw3-3
erzeugt einen Header. Das macht Sinn, denn um etwas umzuwandeln sind bestimmte Infos nötig.
nm libfftw3-3.dll | grep ' T _' | sed 's/.* T _//' >> libfftw3-3.def
wandelt anscheinend irgendwelche Zeichen im Header um.
dlltool -d libfftw3-3.def -D libfftw3-3.dll --output-lib libfftw3-3.lib
scheint ein MinGW Tool zu sein.
Aber was passiert dabei? Am Ende erhalte ich eine .lib, die etwas weniger als die Hälfte groß wie die dynamische ist.
Kann mich jemand kurz informieren oder irgendwo hinverweisen, dass es gut erläutert?
Mit freundlichen Grüßen,
Inge
Okay, habe geschafft das Hello World ans Laufen zu erhalten.
Es gibt auf der Website die Beschreibung wie man CMake ausführt. Das macht man, dann gibt man den Seqan-Release-Ordner beim C++-Compiler in den Project-Properties an, dann sollte es schon klappen. Nicht verwirren lassen, falls das rote Ausrufezeichen für einen Fehler erscheint, der war bei mir dann nach dem Build-Prozess weg. README-Datei und Getting-Started-Guide auf der Seqan-Website waren dann doch ausreichend, nachdem ich den Umgang der für mich neuen Standardtools gedeichselt hatte.
Hallo,
ich habe eben STLport in der neuesten Version compiled und zu meinem Projekt als statische Bibliothek hinzugefügt. Es handelt sich um MSVC 2010, die lib-Datei heißt stlport_vc10_static.lib und ist fast 11.8MB groß.
Aber warum zum Teufel sucht das Programm immer noch nach der dll-Datei, wenn ich es starten möchte? Ich dachte immer statisch linken heißt, dass die lib-Datei ausreicht und keine DLL mehr benötigt wird?!
Gruß
torama1 schrieb:
Was wurde denn vorgeschlagen?
Caller schrieb:
Vielleicht liegt es daran, dass du Test_t hier nicht als __stdcall deklarierst. Wieso definierst du eigentlich WINAPI manuell? Das wird doch durch die windows.h bereits geregelt.
typedef int (*Test_t)(double&);
Außerdem solltest du unbedingt Prüfungen einbauen, ob LoadLibrary und GetProcAddress erfolgreich waren und wenn nicht, mit GetLastError() zu schauen, was schiefgelaufen ist.
Wurde dir übrigens auch im zweiten Thread vorgeschlagen, den du in einem anderen Unterforum eröffnet hast.
Wenn mich nicht alles täuscht, ist die Visual Studio Projektdatei ein XML Format.
Dass könntest du entweder so ausdrucken oder du schreibst dir eine Transformation mit XSLT, die dir dass schön formatiert zu Papier bringt.
Hab es nicht getestet. Kann folgendes Programm was du möchtest:
http://www.heise.de/software/download/xn_resource_editor/39100 ?
eventuell auch nach Resourcenhacker oder so ähnlich suchen.
MfG f.-th.
Hey, ich benutze mittlerweile Code::Blocks 10.05
Ich kann einfach nicht debuggen, habe mittlerweile Code::Blocks nocheinmal komplett neu drauf getan au fdie festplatte, trotzdem kann ich einfahc nicht debuggen.
Also ein kleines Beispiel:
http://www.youtube.com/watch?v=uVz0IaIh8TM&NR=1
Dieses Video habe ich 1 zu 1 nachgemacht, ohne Erfolg. Mittlerweile geht gar nicht mehr das Fesnter auf, bis ich auf Schritt weiterklicke, dort popt das Fenster 0,1sek auf & schließt direkt wieder und er ist durchs Programm gelaufen.
vorher lief er automatisch einfach durch. Was mache ich falsch?! Kleiner Hinweis: Bin totaler Anfänger
Der IMPLIB-Aufruf sollte so aussehen:
IMPLIB -f myLib.lib myDLL.dll
Wenn IMPLIB auf diesem Weg wirklich abstürzt, dann schreibe bitte einen QC-Report (in der IDE unter Tools|QualityCentral, dort mit den EDN-Benutzerdaten einloggen, der Rest erklärt sich von selbst), der den Fehler beschreibt und reproduzierbar ist (d.h., du müßtest die DLL als Attachment hinzufügen und genau den IMPLIB-Kommandozeile, den du verwendest, schildern).
Hallo, ich muss für ein Java-Projekt eine externe Jar einbinden.
Neben der jar-Datei liegt auch noch ein zip-Archiv bei, welches den sourcecode der jar enthält.
Wie kann ich diesen Sourcecode in eclipse so einbinden, dass ich Code-Completion erhalte?
Bei mir klappt das mit dem svn build 6931. Dazu muss auch nichts spezielles in den Build options eingetragen werden, solange boost in /usr/include liegt.
Danke für die schnellen Antworten!
Ich werde mich mal damit beschäftigen, und wahrscheinlich werde ich dann bald auf meinem Rechner auch noch Windows installieren, also dann Linux UND Windows gleichzeitig drauf haben, das wird wohl das Praktischste sein.
Dann kann ich schnell kompilieren und testen!
Benutz am besten pkg-config:
g++ `pkg-config libavformat libavutil libavcodec --libs --cflags` foo.c++ -o foo
(du musst nur sicher stellen das /usr/local auch in PKG_CONFIG_PATH enthalten ist :))
Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ (auch C++0x) in das Forum Compiler- und IDE-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?
Dieses Posting wurde automatisch erzeugt.