Не могу никак собрать в gcc плугины. Сам Far.exe собирается в несколько минут, а плугины не получается. Может кто глянет лог компилятора?
[more=gcc-4.3.2 лог]compiling memcpy.cpp
compiling memcmp.cpp
compiling memicmp.cpp
compiling memmove.cpp
compiling strpbrk.cpp
compiling strstr.cpp
compiling strchr.cpp
compiling strcpy.cpp
compiling strcspn.cpp
compiling strdup.cpp
compiling stricmp.cpp
compiling strncat.cpp
compiling strncmp.cpp
compiling strncpy.cpp
compiling strrchr.cpp
compiling strtok.cpp
compiling strtol.cpp
strtol.cpp: In function `long unsigned int strtoxl(const TCHAR*, TCHAR**, int, int)':
strtol.cpp:99: warning: integer overflow in expression
strtol.cpp:104: warning: integer overflow in expression
compiling i64toa.cpp
compiling delete.cpp
compiling delete_array.cpp
compiling free.cpp
compiling malloc.cpp
compiling calloc.cpp
compiling new.cpp
compiling new_array.cpp
compiling realloc.cpp
compiling i64toa.cpp
compiling memset.cpp
compiling memcpy.cpp
compiling strchr.cpp
compiling strcpy.cpp
compiling strdup.cpp
compiling stricmp.cpp
compiling strncat.cpp
compiling strncmp.cpp
compiling strncpy.cpp
compiling strrchr.cpp
compiling strstr.cpp
compiling strtok.cpp
compiling strtol.cpp
strtol.cpp: In function `long unsigned int strtoxl(const TCHAR*, TCHAR**, int, int)':
strtol.cpp:99: warning: integer overflow in expression
strtol.cpp:104: warning: integer overflow in expression
linking ../libCRT.a
mingw32-make.EXE[1]: Leaving directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/common/CRT'
===========align
mingw32-make.EXE[1]: Entering directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/align'
making depends for Align.cpp
mingw32-make.EXE[1]: Leaving directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/align'
mingw32-make.EXE[1]: Entering directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/align'
compiling Align.cpp
compiling Align.rc
windres: Align.rc:8: syntax error
mingw32-make.EXE[1]: *** [final.32.gcc/obj/Align.res.o] Error 1
mingw32-make.EXE[1]: Leaving directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/align'
mingw32-make.EXE: *** [align] Error 2[/more]
Сам компилятор собран и настроен по инструкции отсюда. Любые иные проекты собираются, а плугины как заколдованные, нет. Не могу понять что причина этого явления и как его устранить. Буду благодарен за помощь.
Из последнего, может кому и пригодится: Far Manager 2.0 Alpha 1 Build 687 с пакетом стандартных плугинов и без установки. Сам Far.exe я собирал в gcc-4.3.2, а плугины взял готовые отсюда благо их исходники за эти дни не изменились, и от 2.0.684 к 2.0.687 они подходят. Как я понял, изменился только номер версии Far API в заголовочных файлах, но не их содержимое.
P.S.
Вот тут возникло у меня предположение: что синтаксическая ошибка вызывается различием в именах стандартных функций компиляторов - т.е. исходники написаны для MS VS, и gcc не может правильно их интерпретировать. Т.е. их надо модифицировать для него. Хотелось бы получить от разработчиков ответ о правильности данного предположения.
[more=gcc-4.3.2 лог]compiling memcpy.cpp
compiling memcmp.cpp
compiling memicmp.cpp
compiling memmove.cpp
compiling strpbrk.cpp
compiling strstr.cpp
compiling strchr.cpp
compiling strcpy.cpp
compiling strcspn.cpp
compiling strdup.cpp
compiling stricmp.cpp
compiling strncat.cpp
compiling strncmp.cpp
compiling strncpy.cpp
compiling strrchr.cpp
compiling strtok.cpp
compiling strtol.cpp
strtol.cpp: In function `long unsigned int strtoxl(const TCHAR*, TCHAR**, int, int)':
strtol.cpp:99: warning: integer overflow in expression
strtol.cpp:104: warning: integer overflow in expression
compiling i64toa.cpp
compiling delete.cpp
compiling delete_array.cpp
compiling free.cpp
compiling malloc.cpp
compiling calloc.cpp
compiling new.cpp
compiling new_array.cpp
compiling realloc.cpp
compiling i64toa.cpp
compiling memset.cpp
compiling memcpy.cpp
compiling strchr.cpp
compiling strcpy.cpp
compiling strdup.cpp
compiling stricmp.cpp
compiling strncat.cpp
compiling strncmp.cpp
compiling strncpy.cpp
compiling strrchr.cpp
compiling strstr.cpp
compiling strtok.cpp
compiling strtol.cpp
strtol.cpp: In function `long unsigned int strtoxl(const TCHAR*, TCHAR**, int, int)':
strtol.cpp:99: warning: integer overflow in expression
strtol.cpp:104: warning: integer overflow in expression
linking ../libCRT.a
mingw32-make.EXE[1]: Leaving directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/common/CRT'
===========align
mingw32-make.EXE[1]: Entering directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/align'
making depends for Align.cpp
mingw32-make.EXE[1]: Leaving directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/align'
mingw32-make.EXE[1]: Entering directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/align'
compiling Align.cpp
compiling Align.rc
windres: Align.rc:8: syntax error
mingw32-make.EXE[1]: *** [final.32.gcc/obj/Align.res.o] Error 1
mingw32-make.EXE[1]: Leaving directory `J:/Temp/7/7/farw-svn/www.farmanager.com/svn/trunk/plugins/align'
mingw32-make.EXE: *** [align] Error 2[/more]
Сам компилятор собран и настроен по инструкции отсюда. Любые иные проекты собираются, а плугины как заколдованные, нет. Не могу понять что причина этого явления и как его устранить. Буду благодарен за помощь.
Из последнего, может кому и пригодится: Far Manager 2.0 Alpha 1 Build 687 с пакетом стандартных плугинов и без установки. Сам Far.exe я собирал в gcc-4.3.2, а плугины взял готовые отсюда благо их исходники за эти дни не изменились, и от 2.0.684 к 2.0.687 они подходят. Как я понял, изменился только номер версии Far API в заголовочных файлах, но не их содержимое.
P.S.
Вот тут возникло у меня предположение: что синтаксическая ошибка вызывается различием в именах стандартных функций компиляторов - т.е. исходники написаны для MS VS, и gcc не может правильно их интерпретировать. Т.е. их надо модифицировать для него. Хотелось бы получить от разработчиков ответ о правильности данного предположения.