Nuetzlicher Kleinkram



Ähnliche Dokumente
Kompilieren und Linken

Professionelle Seminare im Bereich MS-Office

Java: Vererbung. Teil 3: super()

DLLs (dynamic loaded libraries) mit MingW erstellen

Zählen von Objekten einer bestimmten Klasse

Version 0.3. Installation von MinGW und Eclipse CDT

Anleitung für die Teilnahme an den Platzvergaben "Studio II, Studio IV und Studio VI" im Studiengang Bachelor Architektur SS15

1 topologisches Sortieren

Leere Zeilen aus Excel-Dateien entfernen

Effiziente Administration Ihrer Netzwerkumgebung

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Dr. Monika Meiler. Inhalt

Erstellen von x-y-diagrammen in OpenOffice.calc

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Import und Export von Übergängern

Senioren helfen Junioren

Grundlagen der Verwendung von make

YouTube: Video-Untertitel übersetzen

Print2CAD 2017, 8th Generation. Netzwerkversionen

Stellvertretenden Genehmiger verwalten. Tipps & Tricks

Stand: Adressnummern ändern Modulbeschreibung

Wordpress: Blogbeiträge richtig löschen, archivieren und weiterleiten

Elexis-BlueEvidence-Connector

Info-Veranstaltung zur Erstellung von Zertifikaten

Anleitung über den Umgang mit Schildern

1 Vom Problem zum Programm

Anleitung, WebRecherche

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet

Gibt Daten im erweiterten Format aus. Dies beinhaltet die Angabe von Zugriffsrechten, Besitzer, Länge, Zeitpunkt der letzten Änderung und mehr.

Jederzeit Ordnung halten

Informatik I Tutorial

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Animationen erstellen

Übung: Verwendung von Java-Threads

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

A. Ersetzung einer veralteten Govello-ID ( Absenderadresse )

A Lösungen zu Einführungsaufgaben zu QueueTraffic

1. Weniger Steuern zahlen

Internet Explorer Version 6

SPIELBERICHT ONLINE ERSTER EINSATZ VON SBO WICHTIGE INFORMATIONEN VOR RUNDENBEGINN VERSION 1.0. [Autor: Axel Speidel]

Erfahrungen mit Hartz IV- Empfängern

FRAGEBOGEN ANWENDUNG DES ECOPROWINE SELBSTBEWERTUNG-TOOLS

Installation, Einrichtung, Nutzung von PHOCA DOWNLOAD. Download-Links... 2

Website freiburg-bahai.de

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Verschlüsselung mit PGP. Teil 1: Installation

Statuten in leichter Sprache

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Webalizer HOWTO. Stand:

Das Leitbild vom Verein WIR

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Visual Basic Express Debugging

IIS 7.5 mit Exchange Server 2010 OWA FBA Intern und Extern ueber Forefront TMG

ACDSee 10. ACDSee 10: Fotos gruppieren und schneller durchsuchen. Was ist Gruppieren? Fotos gruppieren. Das Inhaltsverzeichnis zum Gruppieren nutzen

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Tragen Sie bitte im Anmeldefeld die Daten ein, die Sie von uns erhalten haben.

Systemvoraussetzung < zurück weiter >

Bei der Anlage von Pauschalen ist folgendes zu beachten!!!!!!!!

Deutsches Rotes Kreuz. Kopfschmerztagebuch von:

Hex Datei mit Atmel Studio 6 erstellen

Kleines Handbuch zur Fotogalerie der Pixel AG

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

PROBLEME BEIM INSTALLIEREN REALTEK HD AUDIO TREIBER

Native Zeichenketten (C-Strings)

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Lehrer: Einschreibemethoden

Anzeige von eingescannten Rechnungen

Verschlüsselung mit PGP. Teil 1: Installation

Qt-Projekte mit Visual Studio 2005

Adami CRM - Outlook Replikation User Dokumentation

Was ist das Budget für Arbeit?

Win-Digipet V 9.2 Premium Edition Wie bastele ich mir steuerbare Kontakte. Wie bastele ich mir steuerbare Kontakte? -Quick-And-Dirty-Lösung-

Übernahme von Daten aus einem bestehenden Outlook-Profil bzw. einem anderen Exchange Server

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Barcodedatei importieren

Wie ist das Wissen von Jugendlichen über Verhütungsmethoden?

Praxisorientierte Einführung in C++ Lektion: "Die Compiler-Chain (Vom Quellcode zum ausführbaren Programm)"

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

Kapitel 3 Frames Seite 1

Windows Explorer Das unbekannte Tool. Compi-Treff vom 19. September 2014 Thomas Sigg

Compilieren und Linken von C- und C++-Dateien

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Softwarepraktikum: Einführung in gcc / g++

SEK II. Auf den Punkt gebracht!

Applications Applets (eingeschränkte Rechte)

3D-Konstruktion Brückenpfeiler für WinTrack (H0)

Was ich als Bürgermeister für Lübbecke tun möchte

Internet online Update (Mozilla Firefox)

1. Einführung Erstellung einer Teillieferung Erstellung einer Teilrechnung 6

AutoCAD Dienstprogramm zur Lizenzübertragung

Registrierungsanleitung ecom-system DARC e.v. OV Velbert

ICS-Addin. Benutzerhandbuch. Version: 1.0

Wir machen neue Politik für Baden-Württemberg

Download, Installation und Autorisierung der Lasergene Software. Bitte unbedingt beachten!

Speichern. Speichern unter

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Kurzanleitung MAN E-Learning (WBT)

iphone 4 - Einrichtung des VPN Clients (Cisco VPN Client) / Verbinden des iphones mit einem Exchange

Transkript:

Ein paar Hilfestellungen zur Arbeit unter Linux/Unix FB Physik Freie Universität Berlin Computerphysik WS 2007/2008

1 2 3

user@ host :~ > gcc -o programm quelltext. c macht gleich mehrere Dinge auf einmal Vorverarbeitung des Codes (Preprocess) Übersetzen des Codes in Maschinensprache, optimieren der Ausführungsgeschwindigkeit(Compile+Optimize) Einfügen der Referenzen auf Bibliotheken, Zusammesetzen des Maschinencodes zu einem lauffähigen Programm (Linking)

Preprocessor Verarbeitet Zeilen mit # am Anfang Einzelprogramm: cpp # include blah. h // fuegt blah. h an dieser stelle ein # include <b.h > // fuegt systemheader b. h ein # define HALLO =4 // setzt praeprozessorvariable HALLO # ifdef HALLO // gibt nur dann code an compiler weiter # endif // wenn HALLO definiert ist... int a; a= HALLO ; // fuegt anstelle von HALLO dessen wert ein...

Compiler Übersetzt und optimiert den preprocessten Code. Wichtige Optionen: u@h :~ > gcc - Wall -o programm source. c # Erweiterter Syntaxcheck, findet dinge, # die spaeter zu Fehlern f\" uhren k\" onnen u@h :~ > gcc - O2 - Wall -o programm source. c # Staerkere Optimierung u@h :~ > gcc - O0 - Wall -o programm source. c # gar keine Optimierung u@h :~ > gcc -g - O0 - Wall -o programm source. c # baut Zusatzinfos fuer fehlersuche mit ein # moeglichst mit!!! - O0!!! verwenden

Linker Einzelprogamm: ld Option -lm linkt mathe-bibliothek (nuetzlich für alle, die diese undefined reference fehlermeldungen beim Compilieren sehen) ;) u@h :~ > gcc - Wall - lm -o programm source. c # Mathe - Bibliothek in " programm " einbauen

Compiler manuell immer wieder mit denselben Aufrufen nervt Lösung: das Programm make Schreibe in Datei,,Makefile im Source-Verzeichnis: aufgabe1 : aufgabe1. c gcc - Wall - lm -o aufgabe1 aufgabe1. c Schema: " target ": " depends on" # <TAB > kommandosequenz, um aus #<TAB > dateien " depends on" # <TAB > die datei " target " zu generieren

II Benutzung: aufgabe1 bauen: u@h :~ > make aufgabe1 # generiert aufgabe1, wenn sich die " depends " # geaendert haben oder " aufgabe1 " nicht existiert Wird make ohne argument aufgerufen, arbeitet es das erste target im Makefile ab: u@h :~ > make # erzeugt " aufgabe1 "

III Ein etwas komplizierteres Beispiel: all : aufgabe1 aufgabe2 # erstes " target " wird von make abgearbeitet, wenn man # kein target an der kommandozeile uebergibt aufgabe1 : aufgabe1. c gcc - Wall - lm -o aufgabe1 aufgabe1. c aufgabe2 : aufgabe2. c gcc - Wall -o aufgabe2 aufgabe2. c clean : rm -f aufgabe1 aufgabe2

IV Benutzung: u@h :~ > make # arbeitet erstes target ( all : ) ab, erzeugt also # " aufgabe1 " und " aufgabe2 " u@h :~ > make aufgabe1 # generiert aufgabe1, wenn sich die " depends " # geaendert haben oder " aufgabe1 " nicht existiert u@h :~ > make clean # loescht die dateien " aufgabe1 " und " aufgabe2 "

Konventionen in Standard-target, also das erste im Makefile, heisst all und hat alle End-Ergebnisse als Dependencies Es sollte ein Target namens clean existieren, welches alle generierten Dateien wieder löscht

tar.tar.gz-archive so ähnlich wie WinZIP-Archive. u@h :~ > tar czf name. tar. gz aufgabe1. c aufgabe2. c Makefile. # erzeugt name. tar. gz und packt die dateien in dieses archiv u@h :~ > tar tzf name. tar.gz # listet in name. tar. gz enthaltene dateien und verzeinisse a u@h :~ > tar xzf name. tar.gz # extrahiert name. tar. gz