lunduniversity.lu.se

Computer Science

Faculty of Engineering, LTH

Denna sida på svenska This page in English

Project

You are supposed to work in groups of two to four people (we recommend four). On the page need partner there is a list of students looking for group members. E-mail sven.robertz@cs.lth.se if you have trouble finding a group partner, and you will be added to the list of students looking for project group members.

I also answer questions about the project, and I will publish questions of general interest here (and the answers).

The report is due Tuesday, April 21 Monday, April 27 2020. 

Note about submission in SAM

When submitting via SAM, currently you don't seem to go past the "Processing..." page but your submissions are uploaded to the system correctly even if you don't get a receipt.

Submission

Your solution and report is to be submitted through the web interface at sam.cs.lth.se/portal

Under Assignment, choose

Course: EDAF50 - C++-programmering (vt1, 2020)
Assignment: news

1. Under Students, enter the STiL identities of all group members

2. Under Submission content,

  1. write a brief message that it is your solution to the "news" assignment and the names of all group members
  2. upload your report and your source code archive

3. Click Submit handin to submit your solution

 

When your submission has been marked you will receive an email from the system. If asked to make corrections, make a new submission using the above procedure. After the initial submission, the system remembers the group members.

 

Assignment: create a news system

Files for the project:

The communication classes (Connection, Server, ...) clientserver.tar.gz 
The test programs TestServer1.jar 
TestServer2.jar

The latest version of clientserver.tar.gz was uploaded 2019-02-15, 11:52

Notes, corrections and comments

Problems building libraries on MacOS

On some versions of the XCode tools, building the library libclientserver.a with the commands used in the Makefile does not work. Creating the archive with the commands: 

ar rv libclientserver.a  connection.o server.o
        ranlib libclientserver.a

will create an archive file that, when used, gives a linker error like

ld: warning: ignoring file /libclientserver.a, file was built for archive which is not the architecture being linked (x86_64): /libclientserver.a

and a list of undefined symbols.

The fix is to use the tool  libtool instead or ar and ranlib:

libtool -static -o libclientserver.a connection.o server.o