![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
Mechatronic |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 28.3.2010 Репутация: нет Всего: нет |
Доброго времени суток.
Прошу консультации по следующему вопросу. Студент принес код на WinAPI, добытый из интернета (архив приложен), который должен собираться с помощью WDK, но возникают ошибки во время линковки *exe файла - линкер не находит стандартные функции вроде printf, malloc. Сборка запускается следующей командой в директории src (согласно README в архиве).
Подскажите, пожалуйста, какие манипуляции нужно выполнить, чтобы линкер "Подхватил" нужные библиотеки. Спасибо. Это сообщение отредактировал(а) Mechatronic - 10.2.2016, 19:01 Присоединённый файл ( Кол-во скачиваний: 5 ) ![]() |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 40 Всего: 223 |
Нету их, совсем ![]() |
|||
|
||||
Mechatronic |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 28.3.2010 Репутация: нет Всего: нет |
Спасибо за ответ. Это ожидаемо. Но известно, что автор кода его как-то собирает - бинарник так же имеется в архиве. Не подскажете, как это может объясняться? |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 40 Всего: 223 |
В сорце sector.c не замечено никаких функций из stdio.h (ни printf ни malloc). Есть только строковые функции, а они в каком то виде в ядре есть (видимо прямо такие и есть
![]() То, что в тексте есть #include "stdio.h" видимо не препятствует сборке (stdio.h где то по путям есть, хотя она и не нужна) А при сборке того, что лежит в папке exe stdio.h и все его производные вполне допустимы - это обычная консольная программа И libc подается, судя по логу от сборки:
|
|||
|
||||
DarthTon |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 106 Регистрация: 7.2.2009 Репутация: 5 Всего: 6 |
WDK может нормально собирать юзермодные приложения. Там даже есть поддержка CRT и STL, только немного специфичная. Просто в sources файле надо добавить ключ USE_MSVCRT=1.
|
|||
|
||||
Mechatronic |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 28.3.2010 Репутация: нет Всего: нет |
В /src/exe/sector_io.c есть printf, malloc.
Добавлено через 3 минуты и 35 секунд
Спасибо за подсказку! Попробуем. |
|||
|
||||
Mechatronic |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 73 Регистрация: 28.3.2010 Репутация: нет Всего: нет |
Студент говорит, что все работает - собрали с предложенным ключом.
Спасибо большое за обсуждение! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |