0

При использовании makefile пишет, что неопределенная ссылка на функцию, хотя все заголовочные файлы подключены, например функция init. тут неопределенные ссылки на 3 функции введите сюда описание изображения

вот код draw.c и часть draw.h

#include "draw.h"
void init()
{
    sc_memoryInit();
    sc_regInit();
    instructionCounter = 0;
    accumulator = 0;
    num_element = 0;
    sc_regSet(T, 1);
}

draw.h

#ifndef DRAW_H
#define DRAW_H

#include "bigChars.h" #include "myReadkey.h" #include "func.h" #include "myTerm.h"

int num_element;

void init();

В свою очередь в func.c все функции которые неопределенны есть, например

func.c

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include "func.h"
int sc_memoryInit() {
    for (int i = 0; i < 100; i++) {
        array[i] = 0;
    }
  return 0;
}
int sc_regInit() {
    register_flags = 0;
return 0;

}

в func.h они так же определенны

Rumeone
  • 35
  • У вас проблема не компиляции, а линковки. Подключите библиотеки. Если вы считаете заголовочный файл библиотекой - то это не так... – Harry Apr 24 '21 at 07:55
  • То есть, проблема в makefile? – Rumeone Apr 24 '21 at 07:57
  • тяжело догадаться как вы всё линкуете. Если-бы показали свой Makefile. – AlexGlebe Apr 24 '21 at 08:12

0 Answers0