Software 1 - Introduction (1)
Administrivia
Practice Web Page - http://www.cs.tau.ac.il/~efif/courses/Software1_Spring_03
Overview of the course
- C programming
- Unix programming - C shell - basic unix commands
- C++ programming - introduction
Homework
- An assignment every two weeks
- singleton submission
- assignments are worth 20% of total grade
Homework Issues
- you can use your home computer
- you can use your friend’s computer
- you can use any computer you like
- but the programs you submit must work on the Unix system in the lab.
- you use any of the options above at your own risk
- see Submission Guidelines for precise
instructions
Working from home at your own risk
- develop the code with the available tools
- copy the files that contain the source code later to the university
- compile again at the univerisy to verify that everything works
Developing at home
- locally - on a local machine
- remotely - on a university machine
Developing on a local machine (at home)
- install linux - if you are brave!
- install cygwin - a UNIX environment
for Windows
- a DLL (cygwin1.dll) which acts as a UNIX emulation layer providing
substantial UNIX API functionality.
- a collection of tools, ported from UNIX, which provide UNIX/Linux look
and feel
Windows
- install a few tools including the gnu compiler from cygwin
- use Dev-C++ - a
full-featured Integrated Development Environment (IDE) for Win32. Thank
you Assaf Lavie for pointing it out to me.
- Uses GCC, Mingw or Cygwin as compiler and libraries set
- use Microsoft tools from the command line
- you need to add the directory where all the tools are to your search
path (PATH environment variable)
- use MSVC project
- developing C\C++ using Microsoft Visual C++ 6.0, courtesy of the system
dep.English Hebrew
Copying Files and Accessing the Unix computers in CS
- use WinSCP to copy files (secure copy protocol)
- use SSH to login relotely (secure shell)
- visit the system for all the relevant information and downloads
Account, labs, printing, and email
- if you don't have an account on the Unix system, you need to open one
- if you have an account, make sure you change your password
- list of printers and instructions can be found at system FAQ for printing
- all sorts of useful information at the system FAQ
http://www.cs.tau.ac.il/faq
so let's look at the whole process
- write a program
- compile the program
- C compiler
- will do one of two things:
- print error messages and abort
- produce an executable program
- run the program
Editors
- vi - a programmers text editor
- pico - simple text editor in the style of the Pine Composer
- emacs - GNU
project Emacs
- the user functionality of GNU Emacs encompasses everything other Emacs
editors do, and it is easily extensible since its editing commands are
written in Lisp
- xemacs - a version of emacs
- .emacs - an initialization file example
- Dev-C++ built in
- Microsoft - MSVC project built in (only on windows...)
- Editor of your choice
Maintained by
Efi Fogel.
Last modified: March 02 2003.