Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
 Аватар для drunkwolfs
10 / 10 / 6
Регистрация: 24.05.2013
Сообщений: 350

Ошибка error LNK2019 & LNK1120 и md5()

26.03.2015, 02:09. Показов 1401. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добавил поддержку md5(), код с сайта http://www.zedwood.com/article/cpp-md5-function
Пробую вставить в код и получаю ошибку при линковке.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <sys/types.h>
#include <direct.h>
#include <string>
#include <windows.h>
#include <conio.h>
#include "../include/md5/md5.h"
using namespace std;
 
void main()
{
char string_arg[64] = "hello ";
char md5str[64] = "world";
strcat(string_arg, md5(string(md5str)).c_str());
printf("string_arg: %s\n", string_arg);
}
Ошибка:
Code
1
2
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl md5(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?md5@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V12@@Z) в функции _main
1>..\main.exe : fatal error LNK1120: 1 неразрешенных внешних элементов
Функция md5():
Code
1
2
3
4
5
6
std::string md5(const std::string str)
{
    MD5 md5 = MD5(str);
 
    return md5.hexdigest();
}
Функция strcat():
Code
1
char * strcat( char * destptr, const char * srcptr );
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.03.2015, 02:09
Ответы с готовыми решениями:

Error LNK1120, error LNK2019, error LNK2028, queue
// свойство класса Parser queue&lt;elem*&gt;* postfix = new queue&lt;elem*&gt;; // строка, из-за которой происходит ошибка ...

Error LNK2019 и LNK1120
Форумчане, помогите кто чем может. изучать язык только начал, поэтому куча вопросов и ошибок, а найденные ответы не сильно помогают, и...

Error LNK2019 и fatal error LNK1120
Копаюсь в гугле уже часа 2. Не понимаю, в чем проблема. Вроде нигде ошибок в коде нету, но выдает: 1&gt;------ Построение начато:...

4
265 / 165 / 56
Регистрация: 25.02.2015
Сообщений: 435
26.03.2015, 02:12
в каком cpp файле у вас реализация ваше md5 функции? этот файл к сборке в проекте подключен?
если нет - то дело в этом. он просто не компилялся и линкер не может найти то, что ему нужно.
0
 Аватар для drunkwolfs
10 / 10 / 6
Регистрация: 24.05.2013
Сообщений: 350
26.03.2015, 02:22  [ТС]
Спасибо, помогло, а без подключения в проект ошибку можно исправить? Например в настройках указать папку инклуда и md5 инклудить вот так #include <md5/md5.h>
Если да то как называется строка в которую пути до папок инклуда добавлять?
0
265 / 165 / 56
Регистрация: 25.02.2015
Сообщений: 435
26.03.2015, 02:34
дело не в инклудах. в инклудах у вас объявления функций. и раз дело дошло до линкера, то все корректно скомпилилось. далее из скомпиленных файлов линкер собирает исполняемый бинарь. так вот этот линкер ходит по скомпиленным объектным файлам и собирает ссылки на функции в один файл. и вот он видит что ссылка на функцию md5 есть, а объектного кода нет. вот он и ругается. чтобы он появился - надо чтобы спп файл с реализацией этой вашей md5 функцией участвовал в сборке. второй вариант - делать ее inline и реализовать прямо в h файле, но это плохой ход.

Добавлено через 2 минуты
как узнать, учавствует файл или нет: берете этот ваш cпп файл с реализацией md5 функции и пишите в него заведомо некомпилируемую хрень. если получаете ошибку компиляции - значит участвует в сборке, если же доходит до ошибок линковки - значит этот файл не компилировался даже.
2
 Аватар для drunkwolfs
10 / 10 / 6
Регистрация: 24.05.2013
Сообщений: 350
26.03.2015, 02:39  [ТС]
Спасибо, буду знать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.03.2015, 02:39
Помогаю со студенческими работами здесь

Error LNK2028, LNK2019, LNK1120: 2 неразрешенных внешних элементов
Всем привет. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;iomanip&gt; #include &quot;conio.h&quot; using namespace std; class...

Error LNK1120, Error LNK2019
Здравствуйте . У меня проблема с кодом . #include &quot;stdafx.h&quot; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include...

В чём ошибка? fatal error LNK1120
Добрый вечер) Вот код, состоящий из класса(отдельного файла) и главной функции: #pragma once namespace Program { class...

Ошибка-----fatal error LNK1120-- Где неправильно?
Поскажите где ошибка? #include&lt;iostream&gt; using namespace std; int main() { for(;;)

Ошибка 3 error LNK1120: неразрешенных внешних элементов: 2
Добрый день. Возникла такая проблема. При компиляции показывает 3 ошибки. Ошибка 1 error LNK2019: ссылка на неразрешенный внешний...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru