Opened 5 years ago

Closed 5 years ago

#93 closed ожидается проверка (задача сдана)

WW #1

Reported by: an.alina Owned by: Артур Гулецкий (huletski)
Component: WW_make Version: 3.0
Keywords: Cc:

Description


Change History (3)

comment:1 Changed 5 years ago by Артур Гулецкий (huletski)

Type: ожидается проверкаожидаются исправления

При модификации заголовочного файла часть решения не пересобирается:

{correct}[2085]$ pwd
/home/hfx/dvl/cpp19/an.alina/cpp19/lab_01/correct
{correct}[2086]$ svn up
Updating '.':
At revision 406.
{correct}[2087]$ svn status
{correct}[2088]$ make
mkdir bin
gcc ./src/io.c -Iinclude -c -Wall -Wextra -Werror -o ./bin/io.o
gcc ./src/algorithm.c -Iinclude -c -Wall -Wextra -Werror -o ./bin/algorithm.o
gcc ./src/util.c -Iinclude -c -Wall -Wextra -Werror -o ./bin/util.o
gcc ./src/main.c -Iinclude -c -Wall -Wextra -Werror -o ./bin/main.o
gcc bin/main.o bin/io.o bin/algorithm.o bin/util.o -o lab_01
{correct}[2089]$ touch include/algorithm.h 
{correct}[2090]$ make
make: Nothing to be done for 'all'.
{correct}[2091]$ cat src/main.c 
#include<io.h>
#include<algorithm.h>
#include<util.h>

int main () {
	int a = doComputation(5, 7.0);
	int b = 5;
	max(a, b);
	logDebug('!');
return 0;
}

Более развернутое описание ошибки и некоторые замечания к решению можно почитать в тикете #89.

Кроме того, ваш Makefile поразительно похож на еще решение еще одного человека, которое похоже на решение третьего человека (из указанного тикета):

{correct}[2095]$ pwd
/home/hfx/dvl/cpp19/an.alina/cpp19/lab_01/correct
{correct}[2096]$ svn up
Updating '.':
At revision 406.
{correct}[2097]$ svn status
{correct}[2098]$ diff Makefile ../../../../../cpp19/klochko.oleg/cpp2019/klochko.oleg/lab_01/correct/Makefile 
1c1
< all: lab_01
---
> all: lab1
3,4c3,4
< lab_01: bin bin/io.o bin/algorithm.o bin/util.o bin/main.o 
< 	gcc bin/main.o bin/io.o bin/algorithm.o bin/util.o -o lab_01
---
> lab1: ./bin/io.o ./bin/algorithm.o ./bin/util.o ./bin/main.o
> 	gcc ./bin/main.o ./bin/io.o ./bin/algorithm.o ./bin/util.o -Wall -Wextra -Werror -o lab1
6c6
< bin:
---
> bin: 
22c22
< 	rm -f lab_01
---
> 	rm -f lab1

Если подобное сходство не является совпадением, то, пожалуйста, сделайте задание с нуля самостоятельно.

comment:2 Changed 5 years ago by an.alina

Type: ожидаются исправленияожидается проверка
Version: 1.03.0

comment:3 Changed 5 years ago by Артур Гулецкий (huletski)

Resolution: задача сдана
Status: assignedclosed

Correct, Multiple

Ок, +0.75

Unresolved

Ошибка на этапе компиляции, а не линковки. Для проявления нужной ошибки можно было убрать реализацию одной из функций в .c-файле.

{unresolved}[2384]$ pwd && svn up && svn status
/home/hfx/dvl/cpp19/an.alina/lab_01/unresolved
Updating '.':
At revision 588.
{unresolved}[2385]$ make
mkdir bin
gcc src/algorithm.c -Iinclude -c -Wall -Wextra -Werror -o bin/algorithm.o
gcc src/main.c -Iinclude -c -Wall -Wextra -Werror -o bin/main.o
src/main.c: In function ‘main’:
src/main.c:8:2: error: implicit declaration of function ‘deadline’ [-Werror=implicit-function-declaration]
    8 |  deadline(int a,int b);
      |  ^~~~~~~~
src/main.c:8:11: error: expected expression before ‘int’
    8 |  deadline(int a,int b);
      |           ^~~
cc1: all warnings being treated as errors
Makefile:10: recipe for target 'bin/main.o' failed
make: *** [bin/main.o] Error 1

--
Итог: 0.75 / 1

Note: See TracTickets for help on using tickets.