Показать сообщение отдельно

  #68  
Старый 12.08.2007, 12:08
4nob1oz
Познающий
Регистрация: 09.07.2007
Сообщений: 42
С нами: 9915918

Репутация: 72
По умолчанию

To -=lebed=-: Если для тебя всё ещё актуальна тема про сплоит который ты не мог скомпилить то бери отсюда http://ifolder.ru/2976747 Пришлось попатеть

Сделал я это так.

В сплоите есть Makefile и с помощью него всё и собирается. Для того чтобы собрать нужно дать команду nmake /f Makefile, но есть очень много НО.

Так как я пользуюсь очень редко ручной сборкой с помощью cl.exe и линковкой то у папка где они лежат не добавлена в переменную окружения PATH, ведь нужно ещё будет добавить путь и к nmake и к midl так что я при компиляции устраняю все зависимоси бросив всё в одну папку(мне так удобнее дабо делаю я это ооооочень редко).Когда я все зависимости уладил у меня в одной папке лежали куча динамических библиотек, cl.exe link.exe nmake.exe midl.exe это всё что нужно для сборки.

Выполнил nmake /f Makefile, получил первую ошибку, что компилятор не может найти путь к stdio.h. Решается это просто. Командой set нужно добавить к переменным окружения новую переменную INCLUDE. Поиском можно найти файл stdio.h и добавить потом папку где он лежит добавить в переменную окружения так set INCLUDE=C:\PATH\TO\HEADERS

Ещё раз nmake /f Makefile и опять ошибка но теперь не может найти rpc.h, ищу его, ага нашёл добавил в переменную окружения set INCLUDE=C:\PATH\TO\HEADERS\;C:\PATH\TO\HEADERS2
Это важно добавить и первую и вторую папки так как переменная окружения не обновляется и заменяется так что добавил всё через ;

Выполнил ещё раз nmake /f Makefile

Теперь ругнулся линковщик что не может он найти такую то библиотеку. Это можно решить путём добавляния переменной окружения LIB добавив в неё путь где лежит недостающая библиотека.
set LIB=C:\PATH\TO\LIB

Выполнил nmake /f Makefile и опять была ошибка, опять линковщику не хватало. Нашёл файл и добавил к переменную окружения LIB.

set LIB=C:\PATH\TO\LIB\;C:\PATH\TO\LIB2

Ещё раз nmake /f Makefile и теперь всё без ошибок прошло. Появились обьектные файлы, сам exe, manifest, и дебаг информация. Всё в папке подчистил и вернул на свои места. Я думаю многие сталкивались с проблемой компиляции под винду из консоли, может комуто моя писанина и пригодится

To ShadOS: Кстати там нужен файл dnsxpl.h и всё там вроде правильно, он у меня получился после midl. И стоит он в "" значит берётся из текущей директории, так что хз у меня всё скомпилилось и файл этот был
 
Ответить с цитированием