Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 12.10.2024
Сообщений: 3

Ошибки undefined reference при компиляции проекта на Си

12.10.2024, 14:39. Показов 1084. Ответов 5

Студворк — интернет-сервис помощи студентам
Здравствуйте, пожалуйста, подскажите, почему выпадают данные ошибки
Code
1
2
3
4
5
6
7
C:/gcc/bin/../lib/gcc/x86_64-w64-mingw32/10.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: C:\Users\User\AppData\Local\Temp\cc0jziDg.o: in function `main':
c:/VsCode/Project_TempC/main.c:6: undefined reference to `addInfo'
C:/gcc/bin/../lib/gcc/x86_64-w64-mingw32/10.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: c:/VsCode/Project_TempC/main.c:28: undefined reference to `SortByDate'
C:/gcc/bin/../lib/gcc/x86_64-w64-mingw32/10.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: c:/VsCode/Project_TempC/main.c:29: undefined reference to `printInfo'
C:/gcc/bin/../lib/gcc/x86_64-w64-mingw32/10.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: c:/VsCode/Project_TempC/main.c:31: undefined reference to `SortByTemp'
C:/gcc/bin/../lib/gcc/x86_64-w64-mingw32/10.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: c:/VsCode/Project_TempC/main.c:32: undefined reference to `printInfo'
collect2.exe: error: ld returned 1 exit status
В заголовочном файле все эти функции объявлены.
В файле си они определены.
Почему в main.c такая ошибка?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.10.2024, 14:39
Ответы с готовыми решениями:

При компиляции Dev-C ошибки: undefined reference to
Привествую. Подозреваю что что то не до объявил. Код: #include <iostream> using namespace std; int main() { ...

Интеграция qsvn в свой проект: ошибки компиляции undefined reference
Добрый день! Есть необходимость в свое приложение встроить функционал работы с SVN. При этом крайне нежелательно использовать внешние...

Ошибка при компиляции. undefined reference
вот часть кода как я понимаю не нравиться компилятору выдает эти ошибки: ...

5
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12919 / 6787 / 1817
Регистрация: 18.10.2014
Сообщений: 17,169
12.10.2024, 19:39
Цитата Сообщение от spikerus93 Посмотреть сообщение
В файле си они определены.
В каком "файле си" они определены? О того, что они определены "в файле си" где-то у друга Васи в его компьютере на даче, вашему компилятору (и линкеру) ни тепло и ни холодно.
0
0 / 0 / 0
Регистрация: 12.10.2024
Сообщений: 3
13.10.2024, 20:17  [ТС]
Здравствуйте.
Не понимаю, что Вы имеете ввиду .
Опишу состав проекта:
- temp_fiunctions.h;
- temp_functions.c
- main.c

Сборка через make.
0
Вездепух
Эксперт CЭксперт С++
 Аватар для TheCalligrapher
12919 / 6787 / 1817
Регистрация: 18.10.2014
Сообщений: 17,169
13.10.2024, 20:35
Цитата Сообщение от spikerus93 Посмотреть сообщение
Не понимаю, что Вы имеете ввиду .
Я имею в виду то, что если эти функции определены в каком-то постороннем "файле си", то вам нужно явно сказать об этом компилятору и линкеру. Вам нужно скормить этот "файл си" компилятору и линкеру. Сами они не догадаются. И если вы не указали этот "файл си" компилятору и линкеру, то это будет примерно эквивалентно тому, как если бы эти функции были определены "в файле си" где-то у друга Васи в его компьютере на даче.

Цитата Сообщение от spikerus93 Посмотреть сообщение
Опишу состав проекта ... Сборка через make.
Прекрасно. Так а как выглядят командные строки компилятора и линкера в процессе сборки? В частности, именно линкера.
0
 Аватар для COKPOWEHEU
4078 / 2676 / 432
Регистрация: 09.09.2017
Сообщений: 11,887
14.10.2024, 11:53
Лучший ответ Сообщение было отмечено spikerus93 как решение

Решение

Цитата Сообщение от spikerus93 Посмотреть сообщение
Code
1
ld.exe: c:/VsCode/Project_TempC/main.c:28: undefined reference to `SortByDate'
Вы не подключили библиотеки, в которых находится реализация функций SortByDate и других. Объявления и прототипы в main.c прописали, а сами функции - нет.
Сам код функций у вас где прописан, в temp_functions.c? Если да, то подключайте этот файл к проекту. Как это в VSCode делается я не в курсе, но в обычном gcc достаточно $ gcc main.c temp_functions.c -o prog
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
$ cat temp_functions.h
void addInfo();
void SortByDate();
void printInfo();
void SortByTemp();
$ cat temp_functions.c
#include "temp_functions.h"
#include <stdio.h>
 
void addInfo(){
  printf("addInfo\n");
}
void SortByDate(){
  printf("SortByDate\n");
}
void printInfo(){
  printf("printInfo\n");
}
void SortByTemp(){
  printf("SortByTemp\n");
}
$ cat main.c
#include <stdio.h>
#include "temp_functions.h"
 
int main(){
  addInfo();
  SortByDate();
  printInfo();
  SortByTemp();
}
$ gcc main.c temp_functions.c -o prog
$ ./prog 
addInfo
SortByDate
printInfo
SortByTemp
$
1
0 / 0 / 0
Регистрация: 12.10.2024
Сообщений: 3
14.10.2024, 23:42  [ТС]
Ок, спасибо большое за подробное разъяснения моей проблемы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.10.2024, 23:42
Помогаю со студенческими работами здесь

Ошибка при компиляции In function undefined reference
Добрый день Перевожу программу из Windows на Astra Linux и постепенно разгребаю ошибки и особенности некоторых функций. Функция...

PostgreSQL и CLion, ошибка при компиляции undefined reference
Господа знатоки, который день мучаюсь с одной проблемой Изучаю PostgreSQL. Возникла потребность в управлении базой через C++. Узнал, что...

LittleCMS при компиляции ошибка undefined reference to `cmsOpenProfileFromFile'
Друзья, добрый день. Изучаю азы языка Си, пробую использовать стороннюю библиотеку (Little CMS - модуль управление цветом:...

Получаю ошибки компиляции helloworld.c - undefined reference
я новичок в линуксе. На практике задали установить библиотеку логгирования - log4c. На windows c ней возникли проблемы. т.к. turboC...

Ошибка при компиляции: ESP8266 undefined reference
Я начинающий в с++. Объясните пожалуйста почему компилятор ругается на такой код: #include &lt;Arduino.h&gt; #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru