Компиляция плагинов в VisualStudio 2005
- Author
- Message
-
Offline
- Posts: 1
- Joined: Fri Feb 09, 2007 10:59 am
Компиляция плагинов в VisualStudio 2005
Для успешной компиляции Akelpad/plugins ytj,[jдимо иметь VisualC Toolkit 2003, который можно взять тут
-
Offline
- Site Admin
- Posts: 6311
- Joined: Thu Jul 06, 2006 7:20 am
-
Offline
- Posts: 876
- Joined: Tue Jul 24, 2007 8:54 am
Microsoft Visual C++ Toolkit 2003
Нашёл вот тут. После этого надо указать путь (по дефолту C:\Program Files\Microsoft Visual C++ Toolkit 2003\lib) в Сервис - Параметры - Каталоги VC++ - Файлы библиотек.
Теперь вопрос: как отлаживаться? Студия ругается, что "нет загруженных символов для этого документа" и отказывается останавливаться на брейкпоинтах. Pdb файл лежит рядом с плагином, даже собрал сам Акель с Pdb файлом - не помогло.
Нашёл вот тут. После этого надо указать путь (по дефолту C:\Program Files\Microsoft Visual C++ Toolkit 2003\lib) в Сервис - Параметры - Каталоги VC++ - Файлы библиотек.
Теперь вопрос: как отлаживаться? Студия ругается, что "нет загруженных символов для этого документа" и отказывается останавливаться на брейкпоинтах. Pdb файл лежит рядом с плагином, даже собрал сам Акель с Pdb файлом - не помогло.
-
Offline
- Posts: 2247
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Всё компилируется и работает в VS2005/2008 без особых загвоздок. Рекомендую только обратить внимание на некоторые функции из stdlib.h и stdio.h (если используете) например на sprintf - разные версии CRT от Microsoft, так что в итоге может и упасть. На MSVS 2003 (IDE) тоже проблем нету.
Instructor, Вам конечно виднее, но по моему часть плагинов и редактор написаны на C++(ну не строится оно с ключом /TC как не крути).
Fr0sT
Чем компилировали и в какой студии отлаживаем? Проблемы с точками останова у меня решались перегрузкой системы(редко перегрузкой студии). Зато NTSD очень даже хорошо останавливался на любых точках останова.
Instructor, Вам конечно виднее, но по моему часть плагинов и редактор написаны на C++(ну не строится оно с ключом /TC как не крути).
Fr0sT
Чем компилировали и в какой студии отлаживаем? Проблемы с точками останова у меня решались перегрузкой системы(редко перегрузкой студии). Зато NTSD очень даже хорошо останавливался на любых точках останова.
-
Offline
- Posts: 876
- Joined: Tue Jul 24, 2007 8:54 am
FeyFre, поставил то, что было под руками - VS2008 express. Подозреваю, проблема именно в том, что студия ищет некий отладочный файл и не находит. *тут следует экспрессивная сентенция на тему сравнения удобства VS и RAD studio, которая вырезана цензурой*
Я в этой среде дуб дубом, поэтому и прошу о руке помощи. Кстати, когда я пытался поковырять плаг к миранде, то же самое было. И это была, кажется, 2005-я студия.
Я в этой среде дуб дубом, поэтому и прошу о руке помощи. Кстати, когда я пытался поковырять плаг к миранде, то же самое было. И это была, кажется, 2005-я студия.
-
Offline
- Site Admin
- Posts: 6311
- Joined: Thu Jul 06, 2006 7:20 am
FeyFre
Это был вызов Файлы в версии 4.5.0 будут с расширением С. Наличие расширения CPP обуславливалось тем, что компилятор отказывался компилировать COM вызовы на GCC, но спустя 3 года (предыдущее сообщение) решил поискать снова и нашел решениеInstructor, Вам конечно виднее, но по моему часть плагинов и редактор написаны на C++(ну не строится оно с ключом /TC как не крути).
-
Offline
- Posts: 2247
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Instructor
Дело не в расширении, что Вы. Простым переименованием точно не обойдетесь.
Fr0sT, ключи линкеру и компилятору по поводу отладочной информации все задали? Я, кстати, особо не уверен насколько могуча експресс студия в плане отладки на ходу.
Миранда... на 6.0 и на 9.0 студиях вроде-бы работало(однажды пришлось допилить брошенный три года назад плагин, который не мерился с некоторыми условностями 0.9).
Дело не в расширении, что Вы. Простым переименованием точно не обойдетесь.
Fr0sT, ключи линкеру и компилятору по поводу отладочной информации все задали? Я, кстати, особо не уверен насколько могуча експресс студия в плане отладки на ходу.
Миранда... на 6.0 и на 9.0 студиях вроде-бы работало(однажды пришлось допилить брошенный три года назад плагин, который не мерился с некоторыми условностями 0.9).
-
Offline
- Posts: 876
- Joined: Tue Jul 24, 2007 8:54 am
FeyFre
в прошлую попытку дошёл до того, что повключал вообще ВСЁ, что только можно и что связано с отладкой - в итоге схлопотал 4 загадочных ошибки линкера. В этот, удачный, раз - только перенастроил пути, чтобы плаг компилился в AkelFiles\Plugs, и всё заработало. В миранде я как раз застопорился на стадии "отладочных символов".
Кстати, Инструктор, просто ради интереса: зачем реализовывать собственную функцию перевода регистра, если есть WinAPI функция CharUpperBuff?
в прошлую попытку дошёл до того, что повключал вообще ВСЁ, что только можно и что связано с отладкой - в итоге схлопотал 4 загадочных ошибки линкера. В этот, удачный, раз - только перенастроил пути, чтобы плаг компилился в AkelFiles\Plugs, и всё заработало. В миранде я как раз застопорился на стадии "отладочных символов".
Кстати, Инструктор, просто ради интереса: зачем реализовывать собственную функцию перевода регистра, если есть WinAPI функция CharUpperBuff?
-
Offline
- Posts: 2247
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
1. Где?(Вроде бы Инструктор пользуется такими везде где только видел).Кстати, Инструктор, просто ради интереса: зачем реализовывать собственную функцию перевода регистра, если есть WinAPI функция CharUpperBuff?
2. CharUpperBuff и ей подобные имеют проблемы с некоторыми локалями(так в MSDN написано), потому наверно Инструктор решил рискнуть собственной реализацией.
По опыту знаю: если есть исходники, то лучше всего отлаживаться компилируя самостоятельно, а не аттачится к сделанному кем-то бинарнику надеясь что сделанные кем-то другим отладочные символы подойдут.(Плагины к Акелу дебажу на собственноручно построенном Акеле).В этот, удачный, раз - только перенастроил пути, чтобы плаг компилился в AkelFiles\Plugs, и всё заработало. В миранде я как раз застопорился на стадии "отладочных символов".
-
Offline
- Posts: 876
- Joined: Tue Jul 24, 2007 8:54 am
FeyFre
Не знаю, я увидел две "портянки" в AkelDLL, вот и спросил)Где?(Вроде бы Инструктор пользуется такими везде где только видел).
Просто я впервые с такими трудностями сталкиваюсь, в Дельфях прекрасно аттачился к совершенно чужим экзешникам без какой бы то ни было отладочной инфы и горя не знал.если есть исходники, то лучше всего отлаживаться компилируя самостоятельно, а не аттачится к сделанному кем-то бинарнику надеясь что сделанные кем-то другим отладочные символы подойдут
-
Offline
- Posts: 2247
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Странно. AkelDLL в исходниками 4.4.9 с этой точки зрения "чист".Не знаю, я увидел две "портянки" в AkelDLL, вот и спросил)
Чур на Вас! Не переношу на дух Delphi/C Builder.Просто я впервые с такими трудностями сталкиваюсь, в Дельфях прекрасно аттачился к совершенно чужим экзешникам без какой бы то ни было отладочной инфы и горя не знал.
При определенной сноровке(при условии что матчасть прочли) любой отладчик атачится к бинарнику любого компилятора.(Сейчас вполне успешно можно с помощью MSVS отлаживать бинарники созданные Flat Assembler-ом с подтягиванием иходников)