Автор | Сообщение |
|
| постоянный участник
|
Пост N: 2061
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.02.12 19:57. Заголовок: MiniGui + MinGw
gfilatov2002 пишет: Скачал последнию версию MiniGui 2.0.7 - 2012.02.14 Скачал MinGw 4.6.1 Созданы папки Z:\HMG\harbour Z:\HMG\minigui Z:\HMG\mingw (перенес из папки Z:\hb30\comp\mingw) Подправил Z:\HMG\minigui\buildapp.bat @echo off SET HMGPATH=Z:\hmg SET PATH=%HMGPATH%\harbour\bin;%HMGPATH%\mingw\bin;%PATH% SET HMGRPATH=Z:\hmg\minigui запускаю Z:\HMG\minigui\buildapp.bat выдает ошибку: Z:\hmg\mingw\bin\nm.exe: 'C:/WINDOWS/TEMP/hbmk_4mkti2.dir/.c': No such file Что сделано не так ???
|
|
|
Новых ответов нет
, стр:
1
2
All
[см. все]
|
|
|
| moderator
|
Пост N: 339
Зарегистрирован: 11.02.10
|
|
Отправлено: 24.02.12 21:59. Заголовок: Andrey пишет: Что с..
Andrey пишет: Andrey пишет: цитата: | запускаю Z:\HMG\minigui\buildapp.bat |
| 1) Зачем запускать этот батник без параметра <имя файла> ? 2) Сначала надо пересобрать библиотеку для MinGw 4.6.1 (по умолчанию она собрано для версии 4.5.2 ), запустив BuildLib.bat из папки SOURCE. А теперь можно открыть папку minigui\samples\MAINDEMO и собрать тестовый пример, запустив батник build.bat следующего содержания: цитата: | call ..\..\buildapp.bat demo |
|
|
|
|
|
| постоянный участник
|
Пост N: 2062
Зарегистрирован: 12.09.06
|
|
Отправлено: 25.02.12 00:44. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | 1) Зачем запускать этот батник без параметра <имя файла> ? |
| Извиняюсь. Не правильно написал. Запускаю Z:\HMG\minigui\Samples\MAINDEMO\build.bat Z:\HMG\minigui\Samples\MAINDEMO>call ..\..\buildapp.bat demo Harbour 3.1.0dev (Rev. 17205) Copyright (c) 1999-2012, http://harbour-project.org/ Compiling 'demo.prg'... Lines 21623, Functions/Procedures 46 Generating C source output to 'C:\WINDOWS\TEMP\hbmk_97mb4t.dir\demo.c'... Done. demo.prg:1615:1: fatal error: error writing to -: Invalid argument compilation terminated. C:/WINDOWS/TEMP/hbmk_jyngd3.c:26:1: fatal error: error closing -: Broken pipe compilation terminated. hbmk2: Error: Running C/C++ compiler. 1 gcc.exe -c -O3 -march=i586 -mtune=pentiumpro -fomit-frame-pointer -W -Wall -pipe -IZ:/hmg/harbour/includ e -IZ:/hmg/minigui/include -IZ:/HMG/minigui/Samples/MAINDEMO C:/WINDOWS/TEMP/hbmk_97mb4t.dir/demo.c C:/WI NDOWS/TEMP/hbmk_jyngd3.c
|
|
|
|
| постоянный участник
|
Пост N: 2064
Зарегистрирован: 12.09.06
|
|
Отправлено: 25.02.12 08:31. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | 2) Сначала надо пересобрать библиотеку для MinGw 4.6.1 (по умолчанию она собрано для версии 4.5.2 ), запустив BuildLib.bat из папки SOURCE. |
| Библиотеку собрал (Z:\HMG\minigui\Lib\minigui.lib) !!!
|
|
|
|
| постоянный участник
|
Пост N: 2109
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.03.12 15:21. Заголовок: Так как все таки соб..
Так как все таки собрать тестовые примеры ? В чем моя ошибка ? Запускаю Z:\HMG\minigui\Samples\MAINDEMO\build.bat Z:\HMG\minigui\Samples\MAINDEMO>call ..\..\buildapp.bat demo Harbour 3.1.0dev (Rev. 17205) Copyright (c) 1999-2012, http://harbour-project.org/ Compiling 'demo.prg'... Lines 21623, Functions/Procedures 46 Generating C source output to 'C:\WINDOWS\TEMP\hbmk_97mb4t.dir\demo.c'... Done. demo.prg:1615:1: fatal error: error writing to -: Invalid argument compilation terminated. C:/WINDOWS/TEMP/hbmk_jyngd3.c:26:1: fatal error: error closing -: Broken pipe compilation terminated. hbmk2: Error: Running C/C++ compiler. 1 gcc.exe -c -O3 -march=i586 -mtune=pentiumpro -fomit-frame-pointer -W -Wall -pipe -IZ:/hmg/harbour/includ e -IZ:/hmg/minigui/include -IZ:/HMG/minigui/Samples/MAINDEMO C:/WINDOWS/TEMP/hbmk_97mb4t.dir/demo.c C:/WI NDOWS/TEMP/hbmk_jyngd3.c
|
|
|
|
| moderator
|
Пост N: 350
Зарегистрирован: 11.02.10
|
|
Отправлено: 15.03.12 16:35. Заголовок: Andrey пишет: Так к..
Andrey пишет: цитата: | Так как все таки собрать тестовые примеры ? |
| Попробуем сделать это "от печки" - с самого начала: 1-й шаг. Скачать последнюю сборку для компилятора mingw с сайта http://hmgextended.com (папка CONTRIB). 2-й шаг. Распаковать содержимое архива на диск C: с сохранением структуры каталогов. 3-й шаг. Скачать официальный релиз 39 по этому адресу и установить его на любой доступный диск (нам потребуется каталог mingw из этого релиза). 4-й шаг. Скопировать содержимое папки mingw из официального релиза 39 в пустую папку C:\hmg\mingw, которая была создана при распаковке архива с сайта hmgextended.com 5-й шаг. Запустить батник C:\minigui\Samples\MAINDEMO\build.bat и собрать тестовый пример для проверки работоспособности этой сборки. Если проблема не решена после этих 5-ти шагов, то ...
|
|
|
|
| постоянный участник
|
Пост N: 2110
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.03.12 22:35. Заголовок: Спасибо БОЛЬШОЕ Григ..
Спасибо БОЛЬШОЕ Григорий ! Без твоей помощи, ничего и не получается.... Буду пробовать завтра... О результатах сообщу.
|
|
|
|
| постоянный участник
|
Пост N: 2112
Зарегистрирован: 12.09.06
|
|
Отправлено: 18.03.12 23:20. Заголовок: Под Win7 собралось б..
Под Win7 собралось без проблем, сразу. Видать дело было в компиляторе, не оттуда скачивалось и не та библиотека собиралась... Короче не те руки собирали, то бишь мои .... Ну потом с этим разбиремся. И после этого на ХР тоже нормально собрал примеры. Спасибо Григорий !!! Примеры собрались, но вопросы остались: 1) Как на одном диске разместить библиотеки MiniGui для BCC и MinGW ? Я сделал пока так: для MinGW Z:\HMG\harbour Z:\HMG\mingw Z:\HMG\minigui для BCC Z:\BCC55 Z:\MiniGui 2) Как сделать файл проекта чтоб можно было собирать разными компиляторами (и под разные платформы Win32 и Win64 - на будущее) ? Вот мой рабочий проект: Скрытый текст # Включить multi/single-thread Harbour VM #-mt # Включить debug-info # -prgflag=-b # Если нужно, можно создать *.ppo при компиляции #-prgflag=-p # Флаги компилятора BCC #-cflag=-w-8075 # Incremental-режим компиляции -inc # папка где будут все *.obj -workdir=OBJ # Имя EXE-модуля -oDeskTop.exe # включить путь к MiniGui и своим *.ch и *.fmg -incpath=Z:\MiniGUI\Include -incpath=Source # перечисляем все *.prg Source\DeskTop.prg Source\Licence.prg Source\inifile.prg Source\run_prg.prg Source\themes.prg Source\h_menu.prg Source\users.prg Source\version.prg Source\myExit.prg Source\_controlpos3_.prg # Ресурсы resource\DeskTop.rc resource\DeskTop1.rc resource\DeskTop2.rc resource\DeskTop3.rc # Пути к основным и добавочным *.lib -lminigui -LZ:\MiniGUI\LIB\
|
|
|
|
|
| постоянный участник
|
Пост N: 3296
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.03.14 23:08. Заголовок: Всем привет. Пробую ..
Всем привет. Пробую делать простой проект на 2-компилятора MiniGui для BCC и MinGW. Скачал последний hmg233-mingw.exe для MinGW Z:\HMG\harbour Z:\HMG\mingw Z:\HMG\minigui для BCC Z:\BCC55 Z:\MiniGui Для MinGW сделал отдельный bat-ник: Скрытый текст SET HMGPATH=Z:\hmg SET PATH=%HMGPATH%\harbour\bin;%HMGPATH%\mingw\bin;%PATH% SET HMGRPATH=Z:\hmg\minigui Z:\hmg\harbour\bin\hbmk2 demo2mingw.hbp
| Описание demo2mingw.hbp : Скрытый текст # Incremental-режим компиляции -inc # папка где будут все *.obj -workdir=OBJ2 # Имя EXE-модуля -oDemo2.exe # включить путь к MiniGui и своим *.ch и *.fmg -incpath=Z:\HMG\MiniGUI\Include # перечисляем все *.prg Demo.prg # Ресурсы Demo2.rc # Пути к основным и добавочным *.lib -lminigui -lcalldll -lversion -lmsvfw32 -LZ:\HMG\MiniGUI\LIB\
| При сборке выдает ошибку: hbmk2[demo2mingw]: Warning: Non-portable output filename: '-oDemo2.exe' in demo2mingw.hbp:26. Delete '.exe' extension. hbmk2: Compiling resources... hbmk2: Compiling... hbmk2: Linking... Demo2.exe OBJ2/Demo.o:Demo.c:(.data+0x88): undefined reference to `HB_FUN_HB_SETCODEPAGE' Z:/HMG/MiniGUI/LIB/libminigui.a(h_init.o):h_init.c:(.data+0x1e8): undefined reference to `HB_FUN_HB_ SETCODEPAGE' collect2: ld returned 1 exit status hbmk2[demo2mingw]: Error: Running linker. 1 gcc.exe OBJ2/Demo.o OBJ2/_hbmkaut_Demo.o OBJ2/Demo2.reso -Wl,--nxcompat -Wl,--dynamicbase -mconsol e -Wl,--start-group -lminigui -lcalldll -lversion -lmsvfw32 -lhbextern -lhbdebug -lhbvm -lhbrtl -lhb lang -lhbcpage -lgtcgi -lgtpca -lgtstd -lgtwin -lgtwvt -lgtgui -lhbrdd -lhbuddall -lhbusrrdd -lrddnt x -lrddcdx -lrddnsx -lrddfpt -lhbrdd -lhbhsx -lhbsix -lhbmacro -lhbcplr -lhbpp -lhbcommon -lhbmainst d -lkernel32 -luser32 -lgdi32 -ladvapi32 -lws2_32 -liphlpapi -lwinspool -lcomctl32 -lcomdlg32 -lshel l32 -luuid -lole32 -loleaut32 -lmpr -lwinmm -lmapi32 -limm32 -lmsimg32 -lwininet -lhbpcre -lhbzlib -Wl,--end-group -oDemo2.exe -LZ:/hmg/harbour/lib -LZ:/HMG/MiniGUI/LIB hbmk2: Error: Referenced, missing, but unknown function(s): HB_SETCODEPAGE() Что еще нужно исправить/добавить, чтобы заработало ?
|
|
|
|
| Администратор
|
Пост N: 3139
Зарегистрирован: 23.05.05
|
|
Отправлено: 29.03.14 09:19. Заголовок: Andrey пишет: OBJ2/..
Andrey пишет: цитата: | OBJ2/Demo.o:Demo.c:(.data+0x88): undefined reference to `HB_FUN_HB_SETCODEPAGE' |
| Если не трогать HMG, то можно добавить в свой prg такую функцию: Function hb_setCodePage( cCdp ) Return hb_cdpSelect( cCdp )
|
|
|
|
| постоянный участник
|
Пост N: 3300
Зарегистрирован: 12.09.06
|
|
Отправлено: 29.03.14 13:01. Заголовок: Pasha пишет: Если н..
Pasha пишет: цитата: | Если не трогать HMG, то можно добавить в свой prg такую функцию: |
| А русский язык не пропадет ? Собралось. Но если я добавлю функцию DELETEFILE() в свой исходник, то опять не собирается: hbmk2: Compiling... hbmk2: Linking... Demo2.exe OBJ2/Demo.o:Demo.c:(.data+0x1c8): undefined reference to `HB_FUN_DELETEFILE' collect2: ld returned 1 exit status hbmk2[demo2mingw]: Error: Running linker. 1 Что-то у меня не работает MinGw.... Куда "копать" ? Может надо в свой bat-ник добавить эти строки (как в Z:\HMG\minigui\buildapp.bat): echo #define HMGRPATH %HMGRPATH%\RESOURCES > _hmg_resconfig.h COPY /b %HMGRPATH%\resources\hmg.rc+%1.rc+%HMGRPATH%\resources\filler _temp.rc >>NUL windres -i _temp.rc -o _temp.o HBMK2 %1 %2 %3 %4 %5 %6 %7 %8 %HMGRPATH%\minigui.hbc -D__CALLDLL__ -run А файл в Z:\HMG\minigui\RESOURCES\ filler всего 2 байта... И зачем он ? Может у меня неправильно установился hmg233-mingw.exe ?
|
|
|
|
| постоянный участник
|
Пост N: 3302
Зарегистрирован: 12.09.06
|
|
Отправлено: 29.03.14 14:10. Заголовок: Разобрался как собир..
Разобрался как собирать через bat-ник. Нужно делать его похожим (как в Z:\HMG\minigui\buildapp.bat): Скрытый текст SET HMGPATH=Z:\hmg SET PATH=%HMGPATH%\harbour\bin;%HMGPATH%\mingw\bin;%PATH% SET HMGRPATH=Z:\hmg\minigui echo #define HMGRPATH %HMGRPATH%\RESOURCES > _hmg_resconfig.h COPY /b %HMGRPATH%\resources\hmg.rc+demo2.rc+%HMGRPATH%\resources\filler _temp.rc >>NUL windres -i _temp.rc -o _temp.o Z:\hmg\harbour\bin\hbmk2 demo2mingw.hbp %HMGRPATH%\minigui.hbc -D__CALLDLL__ -run del _hmg_resconfig.h del _temp.*
| Программа собирается нормально: Но так как привык уже собирать проекты через .hbp, то опять непонятка. Собираю свой проект командой: z:\HMG\MiniGui\buildapp.bat demo2mingw.hbp В demo2mingw.hbp задан конкретный ресурсный файл: # Ресурсы Demo2.rc Получаю рабочий ехе-ник, но без картинок и других ресурсов. Почему ? Что нужно подправить в buildapp.bat ?
|
|
|
|
|
| Администратор
|
Пост N: 3140
Зарегистрирован: 23.05.05
|
|
Отправлено: 29.03.14 14:22. Заголовок: Andrey пишет: Но ес..
Andrey пишет: цитата: | Но если я добавлю функцию DELETEFILE() в свой исходник, то опять не собирается: |
| DeleteFile - это функция из ct. В скрипт сборки *.hbp надо добавить строчку: -lhbct С русским языком будет все в порядке. В hmg для mingw есть ненужная ссылка на функцию hb_setCodePage, которая в Harbour давно переименована в hb_cdpSelect И этот вопрос решается добавлением функции Function hb_setCodePage( cCdp ) Return hb_cdpSelect( cCdp )
|
|
|
|
| постоянный участник
|
Пост N: 3304
Зарегистрирован: 12.09.06
|
|
Отправлено: 29.03.14 14:26. Заголовок: Pasha пишет: Delete..
Pasha пишет: цитата: | DeleteFile - это функция из ct. В скрипт сборки *.hbp надо добавить строчку: |
| Спасибо. Но с этим разобрался. Нужно компилировать свой проект командой: z:\HMG\MiniGui\buildapp.bat demo2mingw.hbp Тогда все собирается, кроме ресурсов. Вопрос описанный выше остается...
|
|
|
|
| Администратор
|
Пост N: 3141
Зарегистрирован: 23.05.05
|
|
Отправлено: 29.03.14 14:28. Заголовок: Andrey пишет: Получ..
Andrey пишет: цитата: | Получаю рабочий ехе-ник, но без картинок и других ресурсов. Почему ? Что нужно подправить в buildapp.bat ? |
| Чтобы пользоваться buildapp.bat, необходимо, чтобы файл ресурсов назывался так же, как и основная программа, так как в этом батнике есть строка: COPY /b %HMGRPATH%\resources\hmg.rc+%1.rc+%HMGRPATH%\resources\filler _temp.rc >>NUL т.е. надо просто переименовать demo2.rc в demo.rc
|
|
|
|
| постоянный участник
|
Пост N: 3305
Зарегистрирован: 12.09.06
|
|
Отправлено: 29.03.14 15:00. Заголовок: Pasha пишет: т.е. н..
Pasha пишет: цитата: | т.е. надо просто переименовать demo2.rc в demo.rc |
| Получается, то что указывается в demo2mingw.hbp - по барабану: # Ресурсы Demo2.rc После переименовки, тоже нет ресурсов. Буду делать отдельный тест...
|
|
|
|
| Администратор
|
Пост N: 3142
Зарегистрирован: 23.05.05
|
|
Отправлено: 29.03.14 15:07. Заголовок: Можно просто в demo2..
Можно просто в demo2.rc в вставить в начале файла строки из hmg.rc, и собирать программу стандартным способом с помощью hbmk2
|
|
|
|
| постоянный участник
|
Пост N: 3306
Зарегистрирован: 12.09.06
|
|
Отправлено: 29.03.14 15:48. Заголовок: Вот сделал отдельный..
|
|
|
|
| |
Пост N: 3875
Зарегистрирован: 17.05.05
|
|
Отправлено: 29.03.14 16:27. Заголовок: Andrey пишет: Сборк..
Andrey пишет: цитата: | Сборка через z:\HMG\MiniGui\buildapp.bat demo2mingw.hbp - ресурсов нет |
| Шо то не то творишь ;) Вот пример , проверил все собирается с ресурсами Батник для сборки set path=C:\MinGW\bin\ c:\hb32mingw\bin\hbmk2 sklad.hbp sklad.hbp C:\hb32mingw\contrib\hbct\hbwin.hbc -LC:\MinGW\lib\ -workdir=obj -otest.exe -inc -gtwvt -gui t.prg sklad.rc sklad.rc MainIcon ICON "1370007531_128540.ico" LOGO1 CUSTOM "l2.bmp" LOGO2 CUSTOM "l3.bmp" LOGO4 CUSTOM "hose.bmp" t.prg proc main WAPI_ShellExecute(,"open","notepad",,,1) return Содержимое папки OBJ после сборки sklad.reso t.c t.o _hbmkaut_t.c _hbmkaut_t.o
|
|
|
|
| постоянный участник
|
Пост N: 3307
Зарегистрирован: 12.09.06
|
|
Отправлено: 29.03.14 21:49. Заголовок: Dima пишет: Шо то н..
Dima пишет: А мой пример собирается ?
|
|
|
|
| |
Пост N: 3876
Зарегистрирован: 17.05.05
|
|
Отправлено: 29.03.14 23:46. Заголовок: Andrey пишет: А мой..
Andrey пишет: цитата: | А мой пример собирается ? |
| я его не смотрел , так как показал тебе простейший и работающий свой пример , от А до Я
|
|
|
Новых ответов нет
, стр:
1
2
All
[см. все]
|
|