Making libraries in current version

Source code related resources

Moderator: Rathinagiri

User avatar
Rathinagiri
Posts: 5471
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: Making libraries in current version

Post by Rathinagiri »

Carlos Britos wrote: Sun Nov 15, 2020 4:51 pm Hi
Rathinagiri

The hmg35 package has some problems.

- There is an error in the file:
h_hmg_pdf.prg, was recorded with utf-8 with BOM which generates harbour error.

I'm not a hbmk2 user, if someone knows how to get the errorlevel at the time of creation the libraries could leave a message to correct the .yml workflow files so github/actions can intercept the compilation errors.

- The harbour package installed on github hmg official is not the right one, it has .lib (msvc) libraries.
It should be replaced by the compressed one in the workflow folder that you are compiling with on github.

https://github.com/asistex/hmg_tools_co ... _10_27.zip

I can make a pull request with these changes if you agree.

Carlos
Thank you Carlos for your attention. Yes, I thought there is a problem in BOM mark of that file. We can change in the next version. Regarding the HMG 3.5, I have used the nightly build of Harbour. Do you want to update the same in github also?
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
User avatar
Rathinagiri
Posts: 5471
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: Making libraries in current version

Post by Rathinagiri »

kcarmody wrote: Sun Nov 15, 2020 7:03 pm
Carlos Britos wrote: Sun Nov 15, 2020 4:51 pm- There is an error in the file:
h_hmg_pdf.prg, was recorded with utf-8 with BOM which generates harbour error.

- The harbour package installed on github hmg official is not the right one, it has .lib (msvc) libraries.
It should be replaced by the compressed one in the workflow folder that you are compiling with on github.

I can make a pull request with these changes if you agree.
The BOM error is in h_HMG_HPDF.Prg. There is no h_hmg_pdf.prg. There were two BOMs in this file. The second BOM gives the compile error you mentioned. The first BOM is ignored and is not necessary. Harbour assumes all umarked input files to be UTF-8.

Another problem is in SAMPLES\Basics\Hello_World\hello.prg. This demo is very important because it is often the first prg that someone new to HMG compiles. It should therefore be as simple and obvious as possible. Any "Hello world" program should display "Hello world", but the version in current release does not. Instead it changes the title of the window from "Hello world" to hb_gtVersion(), which displays as "NUL". This version of the demo also added REQUEST HB_GT_NUL_DEFAULT to the top with a comment "remove the console window in back", but the REQUEST does not actually do this. The console window comes from build.bat waiting for the demo to exit, not from the demo itself. This demo should be reverted to what we had in 3.4.4, which is a simple program that correctly displays "Hello world".

Harbour, MinGW, and the IDE should all be reverted to what we had in 3.4.4. The lib folder should contain all the current compiled HMG libraries, as it did in 3.4.4.

I am now developing another release that will address all these issues. Carlos, please wait for this release. It will only be another day or two. Thanks!

Kevin
That is so kind of you Kevin.
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
Carlos Britos
Posts: 245
Joined: Sat Aug 02, 2008 5:03 pm

Re: Making libraries in current version

Post by Carlos Britos »

Rathinagiri wrote: Sun Nov 15, 2020 7:40 pm Regarding the HMG 3.5, I have used the nightly build of Harbour. Do you want to update the same in github also?
Hi,
I tried to upload the nightly file but github denied me access to do that because of the size of the file.
Today I generated the latest version of harbour
and the difference with the nightly version is the addition of the dll files and the mingw compiler.

The built-in mingw compiler is version 7.30, outdated.

This is the package generated today ( without dlls and mingw ) if you want to compare them.

https://github.com/asistex/hmg_tools_co ... _11_15.zip

Available In the next Pull Request.

With those dlls we can create a separate package. I don't know how necessary they are for hmg.
Image
Attachments
Anotación 2020-11-15 173449.jpg
Anotación 2020-11-15 173449.jpg (23.18 KiB) Viewed 7505 times
Regards/Saludos, Carlos (bcd12a)
User avatar
AUGE_OHR
Posts: 2064
Joined: Sun Aug 25, 2019 3:12 pm
DBs Used: DBF, PostgreSQL, MySQL, SQLite
Location: Hamburg, Germany

Re: Making libraries in current version

Post by AUGE_OHR »

hi,
Carlos Britos wrote: Mon Nov 02, 2020 10:32 am If you want to compile the source in hmg official or in your fork use this script.
can i use MinGW 8.1 with that Script :?:

it is while i want to use QT LIB where lates Version are v8.10
https://www.hmgforum.com/viewtopic.php? ... 8&start=11
have fun
Jimmy
Carlos Britos
Posts: 245
Joined: Sat Aug 02, 2008 5:03 pm

Re: Making libraries in current version

Post by Carlos Britos »

The binary files are hosted elsewhere.
The mingw binaries that are currently being used to compile hmg from github are hosted at Antonio Linares' site. (package created by him)
https://bitbucket.org/lorenzodla/mod_ha ... ingw32.zip

That's version 9.30.

I use version 10.2 in my codes.

Not all mingw packages work well on github or at least I don't know how to make them work.
Regards/Saludos, Carlos (bcd12a)
User avatar
kcarmody
Posts: 152
Joined: Tue Oct 07, 2014 11:13 am
Contact:

Re: Making libraries in current version

Post by kcarmody »

Carlos Britos wrote: Sun Nov 15, 2020 8:51 pm
Rathinagiri wrote: Sun Nov 15, 2020 7:40 pm Regarding the HMG 3.5, I have used the nightly build of Harbour. Do you want to update the same in github also?
I tried to upload the nightly file but github denied me access to do that because of the size of the file.
Today I generated the latest version of harbour
...
Available In the next Pull Request.
Carlos Britos wrote: Sun Nov 15, 2020 9:32 pm The binary files are hosted elsewhere.
The mingw binaries that are currently being used to compile hmg from github are hosted at Antonio Linares' site. (package created by him)
...
Not all mingw packages work well on github or at least I don't know how to make them work.
Carlos, Jimmy, and Rathinagiri,

Before updating Harbour or MinGW in Github, please wait for me to submit my changes. I will be changing the locations of Harbour and MinGW to what they were in 3.4.4, and the files I will be putting there will be the newer versions that Rathinagiri put into his 3.5 release. After that you can go in and update these files if you want even with newer versions.

We should be careful to keep the locations of binaries unchanged, so that we do not break existing compile scripts.

Kevin
User avatar
kcarmody
Posts: 152
Joined: Tue Oct 07, 2014 11:13 am
Contact:

Re: Making libraries in current version

Post by kcarmody »

kcarmody wrote: Sun Nov 15, 2020 11:26 pmBefore updating Harbour or MinGW in Github, please wait for me to submit my changes. I will be changing the locations of Harbour and MinGW to what they were in 3.4.4, and the files I will be putting there will be the newer versions that Rathinagiri put into his 3.5 release. After that you can go in and update these files if you want even with newer versions.

We should be careful to keep the locations of binaries unchanged, so that we do not break existing compile scripts.
I've just submitted the promised pull request to the Github base master. Here's the description:
  1. Restored Harbour and MinGW binary file structure that was present in 3.4.4.
  2. Restored contents of IDE and IDE_ANSI folders.
  3. Added up-to-date compiled HMG binaries in lib folder.
  4. Added build commands for HMG SQL libraries to BuildAllLib32.bat and _BuildAllLib64.bat.
  5. Renamed changelog_forks.txt to changelog-github.txt and updated it.
  6. Updated version constants in INCLUDE\MiniGUI.ch. Future changes to the Github master should update the _HMG_VERSION_PATCH_ constant to the date of the update.
  7. Removed extraneous UTF-8 BOMs from SOURCE\h_HMG_HPDF.Prg.
  8. Reverted SAMPLES\Basics\Hello_World\hello.prg to version in 3.4.4.
  9. In SAMPLES\HPDF\Demo3, renamed demo3_new_fetures.prg to demo.prg and added build files.
User avatar
AUGE_OHR
Posts: 2064
Joined: Sun Aug 25, 2019 3:12 pm
DBs Used: DBF, PostgreSQL, MySQL, SQLite
Location: Hamburg, Germany

Re: Making libraries in current version

Post by AUGE_OHR »

hi,

while LIB*.a Version depends on harbour Build i want to rebuild harbour itself

i have download "latest" harbour version from https://github.com/harbour/core and unzip t. C:\HB

Code: Select all

c:\hb\win-make.exe >\hb\hb.log 2>&1
! Building Harbour 3.2.0dev from source - https://harbour.github.io
! MAKE: c:/hb/win-make 4.1 sh.exe
! HB_INSTALL_PREFIX: c:\hb
! HB_HOST_PLAT: win (x86) HB_SHELL: nt
! HB_PLATFORM: win (x86) (auto-detected)
! HB_COMPILER: mingw (auto-detected: c:/MinGW/bin/)
! Component: 'zlib' found in c:/HB/src/3rd/zlib (local)
! Component: 'pcre' found in c:/HB/src/3rd/pcre (local)
! Component: 'gpm' not supported on win platform
! Component: 'slang' not found. Configure with HB_WITH_SLANG.
! Component: 'curses' not found. Configure with HB_WITH_CURSES.
! Component: 'x11' not found. Configure with HB_WITH_X11.
! Component: 'wattcp/watt-32' not supported on win platform
win-make[1]: Nothing to be done for 'all'.
win-make[1]: Nothing to be done for 'all'.
win-make[1]: Nothing to be done for 'all'.
! 'hbdossrl' library skipped (platform or compiler not supported)
win-make[4]: '../../../../../../lib/win/mingw/libpng.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libjpeg.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libhbpcre.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libtiff.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libhbzlib.a' is up to date.
win-make[3]: '../../../../../lib/win/mingw/libhbcommon.a' is up to date.
win-make[3]: '../../../../../lib/win/mingw/libhbnortl.a' is up to date.
win-make[3]: '../../../../../lib/win/mingw/libhbpp.a' is up to date.
win-make[3]: '../../../../../lib/win/mingw/libhbcplr.a' is up to date.
win-make[3]: '../../../../../bin/win/mingw/harbour.exe' is up to date.
win-make[3]: '../../../../../lib/win/mingw/libhbvm.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libhbmainstd.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libhbmainwin.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libhbmaindllh.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libhbmaindllp.a' is up to date.
win-make[4]: '../../../../../../lib/win/mingw/libhbvmmt.a' is up to date.
gcc -I. -I../../../../../include -W -Wall -O3 -fomit-frame-pointer -march=i586 -mtune=pentiumpro -DUNICODE -DHB_HAS_PCRE -Ic:/HB/src/3rd/pcre -DPCRE_STATIC -DHB_HAS_ZLIB -Ic:/HB/src/3rd/zlib -ohbsocket.o -c ../../../hbsocket.c
In file included from ../../../hbsocket.c:223:0:
../../../hbsocket.c: In function 'hb_socketSetOsError':
../../../hbsocket.c:1109:12: error: 'ERROR_NOT_ENOUGH_MEMORY' undeclared (first use in this function)
case WSA_NOT_ENOUGH_MEMORY:
^
../../../hbsocket.c:1109:12: note: each undeclared identifier is reported only once for each function it appears in
../../../hbsocket.c: In function 'hb_socketGetIFaces':
../../../hbsocket.c:4093:29: error: 'ERROR_BUFFER_OVERFLOW' undeclared (first use in this function)
if( dwResult == ERROR_BUFFER_OVERFLOW )
^~~~~~~~~~~~~~~~~~~~~
../../../hbsocket.c:4099:29: error: 'NO_ERROR' undeclared (first use in this function)
if( dwResult == NO_ERROR )
^~~~~~~~
../../../../../config/rules.mk:88: recipe for target 'hbsocket.o' failed
win-make[3]: *** [hbsocket.o] Error 1
../../config/lib.mk:68: recipe for target 'descend' failed
win-make[2]: *** [descend] Error 2
../config/dir.mk:71: recipe for target 'rtl' failed
win-make[1]: *** [rtl] Error 2
config/dir.mk:71: recipe for target 'src' failed
win-make: *** [src] Error 2
so where do i get a harbour Version which will "finished" win-make :?:
have fun
Jimmy
User avatar
kcarmody
Posts: 152
Joined: Tue Oct 07, 2014 11:13 am
Contact:

Re: Making libraries in current version

Post by kcarmody »

AUGE_OHR wrote: Tue Nov 17, 2020 2:20 amwhile LIB*.a Version depends on harbour Build i want to rebuild harbour itself
...
so where do i get a harbour Version which will "finished" win-make :?:
Perhaps this will help -- The versions of Harbour and MinGW that I put into my most recent fork ( https://github.com/kcarmody/HMG ) are copied from the 3.5 setup that Rathinagiri posted a few days ago. I would be interested to know how Rathinagiri got these binaries.
User avatar
Rathinagiri
Posts: 5471
Joined: Tue Jul 29, 2008 6:30 pm
DBs Used: MariaDB, SQLite, SQLCipher and MySQL
Location: Sivakasi, India
Contact:

Re: Making libraries in current version

Post by Rathinagiri »

Thank you and so kind of you!

Harbour - I have got the nightly version from sourceforge.net.

MingW - 9.30 from the link provided in the first page of this thread. That is here And removed some libraries relating to VirtualMachine.
East or West HMG is the Best.
South or North HMG is worth.
...the possibilities are endless.
Post Reply