Автор | Сообщение |
|
| постоянный участник
|
Пост N: 3319
Зарегистрирован: 12.09.06
|
|
Отправлено: 11.04.14 14:26. Заголовок: xHarbour and Microsoft C
Работаю на xHarbour 1.2.3 Intl. (SimpLex) (Build 20130903) с BCC 5.5.1 Нужно заменить компилятор на Microsoft C. В папке :\xHarbour есть файл make_vc.bat, в нем описание для разных компиляторов с: Microsoft Visual Studio 11.0 по: VC6 Вопрос первый - каким компилятором можно пользоваться не нарушая лицензию ? Вопрос второй - каким компилятором лучше пользоваться для своих программ для систем: WinXP/2000/2003/7/8 ? Вопрос третий - какие dll (от MS VC ) придется добавлять для своих программ ?
|
|
|
Ответов - 19
[только новые]
|
|
|
| Администратор
|
Пост N: 3144
Зарегистрирован: 23.05.05
|
|
Отправлено: 11.04.14 14:43. Заголовок: Судя по ссылке: htt..
Судя по ссылке: http://www.thefreecountry.com/compilers/cpp.shtml бесплатно можно использовать Visual Studio 2013 Express, скачать ее можно по адресу: http://www.visualstudio.com/downloads/download-visual-studio-vs выбрать версию Windows Desktop Ограничение для бесплатного использования такие: this version of Visual Studio Express requires you to register for a Microsoft account, and associate your installation with this account, otherwise you will only be able to run the program for 30 days. т.е. нужен ms account, иначе можно использовать только 30 дней. Что такое ms account - черт его знает, я с ms предпочитаю не связываться. Как собирать xHarbour для VS 2013 Express - надо пробовать.
|
|
|
|
| постоянный участник
|
Пост N: 3320
Зарегистрирован: 12.09.06
|
|
Отправлено: 11.04.14 16:53. Заголовок: Скачал Visual С++ 2..
Скачал Visual С++ 2008 Express SP1 (посоветовали это, чтобы не тащить dll с VC2013 для ХР) Зарегистрировался. На сайте у микрософт написано: Коммерческое использование Visual Studio Express Продукты Visual Studio Express доступны бесплатно и могут использоваться в коммерческих и производственных целях в соответствии с условиями лицензии каждого продукта. Например, можно использовать Express для Windows, чтобы создавать приложения и отправлять их для продажи в Магазин Windows. Скачал с сайта xharbour-1.2.1.src.zip и xharbour-1.2.1.src.contrib.zip Прописал в переменных среды CC_DIR=C:\Program Files\Microsoft Visual Studio 9.0\vc Скомпилировал библиотеки make_vc.bat - нормально ! А BISON - нужно было устанавливать ? Без него прошло... Тестовые единичные примеры компилируются на ура. Поймал затык на hbmake.exe - у меня на нем все задачи собираются. Компилирует для BCC55 и сборку пытается сделать тоже через BCC55... Может они криво сделали эту утилиту для MC ? Смотрю файл :\xHarbour\bin\harbour.cfg CC=BCC32 CFLAGS= -c -D__EXPORT__ -IZ:\xHARBOUR\include -d -LZ:\xHARBOUR\lib VERBOSE=YES DELTMP=YES Удаляю его, все равно создает его заново для CC=BCC32 Блин, эти MS достали, но пока деваться некуда.... Очень нужно собрать проект под MSC. Помогите пожалуйста заставить hbmake.exe собирать под MSC....
|
|
|
|
| постоянный участник
|
Пост N: 3321
Зарегистрирован: 12.09.06
|
|
Отправлено: 11.04.14 17:28. Заголовок: Вот еще баг: HbMake ..
Вот еще баг: HbMake v1.20 - xHarbour Make Utility Copyright (C) 2000-2009 xHarbour project - http://www.xharbour.org Syntax: hbmake <makefile> [switches] Switches: -b Use Bcc as the C compiler. This options is default under Win32 -g Use Gcc as the C compiler. This options is default under OS/2 -v Use MSVC as the C compiler hbmake TEST.bc -b = собирается hbmake TEST.bc -g = собирается hbmake TEST.bc -v = НЕ собирается, выдает ошибку:
|
|
|
|
| постоянный участник
|
Пост N: 3323
Зарегистрирован: 12.09.06
|
|
Отправлено: 11.04.14 20:40. Заголовок: Заменил в первой стр..
Заменил в первой строке файла TEST.bc #BCC на #MSVC Теперь hbmake TEST.bc не запускается, нужно делать так: hbmake TEST.bc -v Проект запускается, но ехе-ник не собирается все равно, выдает уже другую ошибку:
|
|
|
|
| |
Пост N: 1
Зарегистрирован: 19.08.10
|
|
Отправлено: 14.10.14 08:27. Заголовок: Andrey День добрый!..
Andrey День добрый! Вам удалось решить проблему с компилятором VC? Тоже стоит аналогичная проблема...
|
|
|
|
| постоянный участник
|
Пост N: 3655
Зарегистрирован: 12.09.06
|
|
Отправлено: 14.10.14 20:33. Заголовок: shalom276 пишет: Ва..
shalom276 пишет: цитата: | Вам удалось решить проблему с компилятором VC? |
| Нет. Использовать HbMake не получилось. В системном path ОБЯЗАТЕЛЬНО нужно выкинуть bcc и первым поставить C:\Program Files\Microsoft Visual Studio 9.0\bin Далее написал простой bat-ник который тупо, каждый раз компилирует все *.prg Свой ехе-ник получался. Обломался на сторонних библиотеках (FastReport и еще какой-то). Если интересен bat-ник то привожу его. Скрытый текст
echo off setlocal enabledelayedexpansion set XHB_ROOT=Z:\xHarbour set XHB_LIBS=%XHB_ROOT%\debug.lib %XHB_ROOT%\vm.lib %XHB_ROOT%\rtl.lib %XHB_ROOT%\zlib.lib %XHB_ROOT%\pcrepos.lib %XHB_ROOT%\gtwin.lib %XHB_ROOT%\lang.lib %XHB_ROOT%\rdd.lib %XHB_ROOT%\macro.lib %XHB_ROOT%\pp.lib %XHB_ROOT%\dbffpt.lib %XHB_ROOT%\dbfntx.lib %XHB_ROOT%\dbfcdx.lib %XHB_ROOT%\hsx.lib %XHB_ROOT%\hbsix.lib %XHB_ROOT%\sixcdx.lib %XHB_ROOT%\common.lib %XHB_ROOT%\ct.lib %XHB_ROOT%\tip.lib set SYSTEM_LIBS=shell32.lib user32.lib winspool.lib ole32.lib oleaut32.lib ws2_32.lib kernel32.lib gdi32.lib comctl32.lib comdlg32.lib advapi32.lib set OUTPUT_FILENAME=..\application.exe set WRK_DIR=%CD% set SRC_DIR=%CD%\PRG set TMP_DIR=%CD%\TEMP set OBJS= copy %SRC_DIR%\*.PRG %TMP_DIR% copy %SRC_DIR%\*.CH %TMP_DIR% copy %SRC_DIR%\*.H %TMP_DIR% copy %SRC_DIR%\*.C %TMP_DIR% cd %TMP_DIR% echo. > %WRK_DIR%\harbour.log FOR /f "tokens=*" %%G IN ('DIR /b %TMP_DIR%\*.PRG') DO ( echo Generation PRG: %%G >> %WRK_DIR%\harbour.log echo harbour %TMP_DIR%\%%G -n -q0 -gc -i%XHB_ROOT%\include -i%TMP_DIR% >> %WRK_DIR%\harbour.log harbour %TMP_DIR%\%%G -n -q0 -gc -i%XHB_ROOT%\include -p -w3 >> %WRK_DIR%\harbour.log echo. >> %WRK_DIR%\harbour.log echo. >> %WRK_DIR%\harbour.log echo. >> %WRK_DIR%\harbour.log echo "Generating C file - %%G" ) FOR /f "tokens=*" %%C IN ('DIR /b %TMP_DIR%\*.c') DO ( echo "Including generated obj file - %%OBJ' set OBJS=!OBJS! %%C ) ECHO %OBJS% call vcvars32.bat cl -TP -W3 -I%XHB_ROOT%\include %OBJS% /link %XHB_ROOT%\obj\vc\mainstd.obj /subsystem:CONSOLE /FORCE:MULTIPLE %XHB_LIBS% %SYSTEM_LIBS% /out:%WRK_DIR%\%OUTPUT_FILENAME% > %WRK_DIR%\compile.log
|
|
|
|
|
| |
Пост N: 2
Зарегистрирован: 19.08.10
|
|
Отправлено: 15.10.14 03:34. Заголовок: Спасибо! У меня комп..
Спасибо! У меня компилирует без удаления BCC из системного патча, но трабл при сборке... Ругается на mainstd.obj, который у Вас в строке тоже присутствует.. Где его взять? У Вас в каком составе VS? Нужен SDK?
|
|
|
|
| постоянный участник
|
Пост N: 3656
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.10.14 11:53. Заголовок: shalom276 пишет: уг..
shalom276 пишет: цитата: | угается на mainstd.obj, который у Вас в строке тоже присутствует.. |
| Этот файл лежит по пути Z:\xHarbour.1.2.1-MSVC\obj\vc т.е. стандартная поставка хХарбора.
|
|
|
|
| |
Пост N: 311
Зарегистрирован: 16.12.08
|
|
Отправлено: 15.10.14 14:19. Заголовок: shalom276 пишет: Сп..
shalom276 пишет: цитата: | Спасибо! У меня компилирует без удаления BCC из системного патча, но трабл при сборке... Ругается на mainstd.obj, который у Вас в строке тоже присутствует.. Где его взять? У Вас в каком составе VS? Нужен SDK? |
| При создании исполняемого модуля в xHarbour для консольного добавить в проэкт файл mainstd.obj, при создании GUI приложения добавить файл mainwin.obj, при создании DLL файла maindllh.obj или maindlle.obj. Эти файли лежат в каталоге (пример) ...\xHarbour_10020\obj\vc_2010\ - ...\xHarbour_10020\obj\vc_2010\dll\
|
|
|
|
| |
Пост N: 3
Зарегистрирован: 19.08.10
|
|
Отправлено: 15.10.14 15:05. Заголовок: http://sourceforge.n..
|
|
|
|
| постоянный участник
|
Пост N: 3657
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.10.14 15:05. Заголовок: Привет santy А как..
Привет santy ! А как собрать проект под MS с помощью hbmake ? У меня не получается....
|
|
|
|
|
| |
Пост N: 4
Зарегистрирован: 19.08.10
|
|
Отправлено: 15.10.14 15:06. Заголовок: Andrey Андрей Вы гд..
Andrey Андрей Вы где скачивали дистрибутив?
|
|
|
|
| постоянный участник
|
Пост N: 3658
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.10.14 15:07. Заголовок: shalom276 пишет: Ск..
shalom276 пишет: цитата: | Скачиваю по этой ссылке бинарник - в нем нет католога OBJ... Что не так? Собирать из сырцов? Где взять нужный дистрибутив? |
| По шагам (см. выше): Скачал с сайта xharbour-1.2.1.src.zip и xharbour-1.2.1.src.contrib.zip Прописал в переменных среды CC_DIR=C:\Program Files\Microsoft Visual Studio 9.0\vc Скомпилировал библиотеки make_vc.bat - нормально ! (т.е. надо запустить файл make_vc.bat и библиотеки соберутся !)
|
|
|
|
| |
Пост N: 5
Зарегистрирован: 19.08.10
|
|
Отправлено: 15.10.14 15:33. Заголовок: AndreyФайлы распаков..
AndreyФайлы распаковал, запустил make_vc.bat, создался каталог VC\Obj с объектниками, но файла maindllh.obj в нем нет... Что опять не так?
|
|
|
|
| |
Пост N: 6
Зарегистрирован: 19.08.10
|
|
Отправлено: 15.10.14 15:50. Заголовок: У меня стоит Visual ..
У меня стоит Visual Studio 2005 - имеет значение? Получается библиотеки собрались, но не все...
|
|
|
|
| постоянный участник
|
Пост N: 3659
Зарегистрирован: 12.09.06
|
|
Отправлено: 15.10.14 16:58. Заголовок: shalom276 пишет: но..
shalom276 пишет: цитата: | но файла maindllh.obj в нем нет... Что опять не так? |
| У меня тоже нет.
|
|
|
|
| |
Пост N: 7
Зарегистрирован: 19.08.10
|
|
Отправлено: 16.10.14 02:19. Заголовок: Andrey пишет: У мен..
Andrey пишет: Опечатка файла mainstd.obj? а он требуется при сборке...
|
|
|
|
| |
Пост N: 312
Зарегистрирован: 16.12.08
|
|
Отправлено: 16.10.14 13:37. Заголовок: shalom276 пишет: Фа..
shalom276 пишет: цитата: | Файлы распаковал, запустил make_vc.bat, создался каталог VC\Obj с объектниками, но файла maindllh.obj в нем нет... Что опять не так? |
| make_vc.bat запустите с параметром ALL : make_vc.bat ALL - создаст CORE, core dll, contrib. shalom276 пишет: цитата: | У меня стоит Visual Studio 2005 - имеет значение? Получается библиотеки собрались, но не все... |
| Не имеет значения. Главное укажите пути правильные в бат файле.
|
|
|
|
| |
Пост N: 8
Зарегистрирован: 19.08.10
|
|
Отправлено: 17.10.14 02:19. Заголовок: Andrey пишет: А BIS..
Andrey пишет: цитата: | А BISON - нужно было устанавливать ? Без него прошло... |
| Поставил Visual С++ 2008, запустил make_vc.bat - то же самое.. Поставил Бизон - и все obj и lib скомпилировались.. Все собирается.. После прочтения поста Santy запустил make_vc.bat ALL - дополнительно собрались DLL и библиотеки Contrib. Благодарю за советы!!!
|
|
|
|