Object Oriented Programming COP3330 / CGS5409.  Assignment Submission Overview  Compiling with g++  Using Makefiles  Misc. Review.

Slides:



Advertisements
Similar presentations
Jump to Contents Instructor Tutorial essignments.com Paperless assignment submission system.
Advertisements

Learning Unix/Linux Bioinformatics Orientation 2008 Eric Bishop.
CSCI 1411 FUNDAMENTALS OF COMPUTING LAB Lab Introduction 1 Shane Transue MSCS.
George Blank University Lecturer. Creating A Web Site at NJIT Professor Blank.
Basic linux shell commands and Makefiles. Log on to engsoft.rutgers.edu Open SSH Secure Shell – Quick Connect Hostname: engsoft.rutgers.edu Username/password:
Overview of C++ Chapter 2 in both books programs from books keycode for lab: get Program 1 from web test files.
Dayu Zhang 9/3/2014 Lab01. Lab Instructor: Dayu Zhang Office Hour Mon/Wed 10:40am – 11:10am Room A201 Lab Website
1 SEEM3460 Tutorial Unix Introduction. 2 Introduction What is Unix? An operation system (OS), similar to Windows, MacOS X Why learn Unix? Greatest Software.
Lecture 8  make. Overview: Development process  Creation of source files (.c,.h,.cpp)  Compilation (e.g. *.c  *.o) and linking  Running and testing.
SoftwareTools CGS 3460, Lecture 7 Jan 25, 2006 Zhen Yang.
The Unix Environment and Compiling. Getting Set Up Your programs will be compiled and tested on the Departmental server ‘linprog’ The linprog servers.
Overview of Linux CS3530 Spring 2014 Dr. José M. Garrido Department of Computer Science.
Unix Primer. Unix Shell The shell is a command programming language that provides an interface to the UNIX operating system. The shell is a “regular”
1 Intro to Linux - getting around HPC systems Himanshu Chhetri.
Essential Unix at ACEnet Joey Bernard, Computational Research Consultant.
Unix Basics Chapter 4.
1 SEEM3460 Tutorial Unix Introduction. 2 Introduction Unix-like system is everywhere Linux Android for smartphones Google Chrome OS for Chromebook Web.
AN INTRO TO UNIX/LINUX COMMANDS BY: JIAYANG WANG.
ECT 250: Survey of E-Commerce Technology FrontPage Publishing pages Unix.
FTP Server and FTP Commands By Nanda Ganesan, Ph.D. © Nanda Ganesan, All Rights Reserved.
1 N305 C Programming. 2 Objectives for the Lab ä Learn problem solving strategies ä Achieve intermediate knowledge of C Programming Language ä Gain experience.
LINUX Tuesday, 5 July :00 pm. Remote Login l Use Secure Shell (ssh) l Machine name/IP address E.g. ssh hydra.sma.nus.edu.sg Or ssh
1 Editing a C Program 01/16/15. 2 Objective Use Linux to edit, compile and execute a C program.
TAMU CSCE 313 (the basics). Basic Unix/Linux programming Accessing CS systems  PuTTY (putty.exe) – a Telnet and SSH client  Common hosts: unix.cs.tamu.edu.
PROGRAMMING PROJECT POLICIES AND UNIX INTRO Sal LaMarca CSCI 1302, Fall 2009.
COP3502: Introduction to Computer Science Yashas Shankar.
ENEE150 – 0202 ANDREW GOFFIN Introduction to ENEE150.
Next Unix Topics Tuesday, 2/11 & 18/2014. Change Password (by 2/14/14) ssh to account on – faclinux.cse.ohio-state.edu – stdlinux.cse.ohio-state.edu passwd.
Makefile M.A Doman. Compiling multiple objects Card.cpp -> Card.o Deck.cpp -> Deck.o main.cpp -> main.o main.o Deck.o Card.o -> Dealer.exe.
Basic Unix Commands CGS 3460, Lecture 6 Jan 23, 2006 Zhen Yang.
Creating Programs on UNIX This term you can create programs on UNIX or you can create programs using a C++ compiler on your PC. This set of slides steps.
COP3502: Introduction to Computer Science Yashas Shankar Lecture #2.
More Unix Naomi Altman. Directories Directory = folder mkdir - makes a new directory rmdir - removes an empty directory cd mydirectory - moves you into.
Object Oriented Programming COP3330 / CGS5409.  Assignment Submission Overview  Compiling with g++  Using Makefiles  Misc. Review.
Unix Servers Used in This Class  Two Unix servers set up in CS department will be used for some programming projects  Machine name: eustis.eecs.ucf.edu.
Lecture 8  make. Using make for compilation  With medium to large software projects containing many files, it’s difficult to: Type commands to compile.
FTP COMMANDS OBJECTIVES. General overview. Introduction to FTP server. Types of FTP users. FTP commands examples. FTP commands in action (example of use).
ENEE150: Discussion 1 Section 0104/0105 Please Sit Down at a Computer and Login!
Emacs, Compilation, and Makefile C151 Multi-User Operating Systems.
Multiple File Compilation and linking By Bhumik Sapara.
AN INTRO TO UNIX/LINUX COMMANDS BY: JIAYANG WANG.
 Last lesson, the Windows Operating System was discussed along with the Windows command shell  Unix is a computer operating system, that similarly manages.
Working with the interface and interacting with the iPad app.
Object Oriented Programming COP3330 / CGS5409.  Compiling with g++  Using Makefiles  Debugging.
Brandon Packard. Why make? So far, you have probably worked on relatively small projects Coding projects can become huge My research consists of 1600.
CS 120 Extra: The CS1 Server Tarik Booker CS 120.
Assignprelim.1 Assignment Preliminaries © 2012 B. Wilkinson/Clayton Ferner. Modification date: Jan 16a, 2014.
Review Why do we use protection levels? Why do we use constructors?
Tutorial Six Linux Basics CompSci Semester Two 2016.
Overview of Linux Fall 2016 Dr. Donghyun Kim
ENEE150 Discussion 01 Section 0101 Adam Wang.
UNIX To do work for the class, you will be using the Unix operating system. Once connected to the system, you will be presented with a login screen. Once.
Class Projects and Environment
CS1010: Intro Workshop.
Tutorial Six Recap & Linux Basics CompSci Semester Two 2016.
Web Programming Essentials:
UNIX The Basics Source:
Andy Wang Object Oriented Programming in C++ COP 3330
Compilation and Debugging
Compilation and Debugging
Part 3 – Remote Connection, File Transfer, Remote Environments
Assignment Preliminaries
Intro to UNIX System and Homework 1
Computer Systems Programming
Web Programming Essentials:
Andy Wang Object Oriented Programming in C++ COP 3330
UNIX/LINUX Commands Using BASH Copyright © 2017 – Curt Hill.
Video Notes.
g++ features, better makefiles
Presentation transcript:

Object Oriented Programming COP3330 / CGS5409

 Assignment Submission Overview  Compiling with g++  Using Makefiles  Misc. Review

 Programs submitted through course web page   Link: “Click me, if you dare…”

 Submit source files only! ◦ Only.cpp and.h files ◦ DO NOT INCLUDE BINARIES! ◦ If more than one file, upload each individually  Use FSU SN ◦ Social Security number will not work  Require additional submission passwords ◦ NOT THE SAME AS FSU/CS PASSWORDS!

 Feedback from submission: ◦ (1) a directory listing of files submitted for that assignment so far ◦ (2) a copy of the file just submitted  Do not asking for confirmation! ◦ Verify submission with above methods

 The FSU SN is typed with dashes (i.e. AB , not AB )  Passwords are all 8 characters long  The passwords do not contain any instances of the numeric digits 0 or 1  Hang on to this password, it will be needed all semester!

 Make sure to follow all submission instructions carefully  Homework submitted by to the instructor or me will NOT BE GRADED!  Can re-submit an updated file that was previously submitted ◦ Will overwrite previous attempt

 One late day submission is allowed (with a letter grade deduction) on assignments  After that time, course web site WILL NOT accept submissions  MAKE SURE TO SUBMIT BY THIS TIME

 Assignment Submission Practice  Option on the submission page called "Assignment 0“  mit3330/html/primary_class_page_w_counter.html mit3330/html/primary_class_page_w_counter.html  Will not be graded

 The base command for the Gnu C compiler is "gcc"  The base command for the Gnu C++ compiler is "g++"

 To compile a program that is in a single file, the easiest compilation uses the command format: g++  Where the filename ends with ".cpp“  Example: g++ prog1.cpp

 To invoke the Compile stage, which translates source code (.cpp files) into object code (.o files), use the -c flag. Format: g++ -c  To name a target (something other than the default filename, use the -o flag. Format: g++ -o

 g++ -o yadda.o -c fraction.cpp ◦ This command invokes just the compile stage on fraction.cpp, but names the object code file "yadda.o" (instead of the default "fraction.o").  g++ -o bob.exe circle.o main.o ◦ This command links the two object code files ("circle.o" and "main.o") into an executable, called "bob.exe" (instead of the default "a.out").  g++ -o myProgram thing.cpp main.cpp ◦ This command compiles and links (since -c not used) the code files "thing.cpp" and "main.cpp" together into the executable program called "myProgram".

 Source code is just text!  For the purposes of assignments, ANY text editor can be used to  Practice with at least one Unix text editor create code files ◦ For unix beginners, "pico" is recommended, due to easy learning curve. ◦ Emacs, Vim, MUCH more powerful

 Understand how to log into both CS machines: ◦ linprog.cs.fsu.edu ◦ program.cs.fsu.edu  Use SSH (Secure SHell) client to login  Files created on a windows machine can be FTP-ed to CS accounts with the SFTP feature built into the SSH software

 Usage: sftp  get filename- retrieve remote file  put filename- upload local file  Standard Unix commands: ◦ cd, ls, pwd, chmod, rename, rm, mkdir, rmdir, help, quit  Alternatively, GUI File Managers ◦ WinSCP - Free Windows client with SFTP capability WinSCP ◦ FileZilla - Open source cross-platform GUI client FileZilla

 Unix system has what is called a ‘make’ utility  Configuration file to assist with compilation  Simple text file, should be named either ‘makefile’ or ‘Makefile’

 Idea of the ‘target’ ◦ What is able to be ‘made’?  Dependency list ◦ What needs to be re-made each time?  Command list, and formatting ◦ i.e. it must be preceded by a single ‘tab’ character  Extra targets, like ‘clean’, for cleanup ◦ target that lists a cleanup command (like the remove ‘rm’ command)  More than one target ◦ placing a target like ‘all’ at the top, and listing the executables made by the file as the dependency list

# This is a comment line # Sample makefile for fraction class frac: main.o frac.o g++ -o frac main.o frac.o main.o: main.cpp frac.h g++ -c main.cpp frac.o: frac.cpp frac.h g++ -c frac.cpp clean: rm *.o frac

frac: main.o frac.o g++ -o frac main.o frac.o  Specifies ‘frac’ as the target  Depends on main.o and frac.o  If either of these files changed since the last build, then ‘frac’ must be rebuilt  Links two object code files together into a target executable called ‘frac’

main.o: main.cpp frac.h g++ -c main.cpp  Specifies how to built the target ‘main.o’  Depends on main.cpp and frac.h  If either file changes, main.o must be rebuilt  Uses normal g++ commands for the compile stage

 Any section can be invoked specifically with the command: make  For instance, to build only the ‘frac.o’ target, use: make frac.o

clean: rm *.o frac  The target name is ‘clean’  Executes the remove command (‘rm’)  Removes the object code file(s) and the executable(s) from the current directory