freebsd, try to compile harbour 3.4

316 views
Skip to first unread message

Domenico D'Oria

unread,
Oct 17, 2017, 6:56:59 AM10/17/17
to Harbour Users
this are the warings and error when i try to compile harbour 3.4 on freebsd 11

! Source code: 9948677 master https://github.com/vszakats/harbour-core.git
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
gmake[1]: Nothing to be done for 'all'.
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
gmake[1]: Nothing to be done for 'all'.
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
! 'hbdossrl' library skipped (platform or compiler not supported)
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
! 'png' library skipped (local copy unused)
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
! 'hbpcre' library skipped (local copy unused)
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
! 'hbpcre2' library skipped (local copy unused)
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
! 'hbzlib' library skipped (local copy unused)
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
! Warning: Invalid HB_COMPILER_VER value '0LLVM' ignored. Format should be: <MMmm>, where <MM> is major version and <mm> is minor version.
( llvm-ar rcs    ../../../../../lib/bsd/clang/libhbcommon.a expropt1.o expropt2.o funcid.o hbarch.o hbdate.o hbffind.o hbfopen.o hbfsapi.o hbgete.o hbhash.o hbmem.o hbprintf.o hbstr.o hbstrbm.o hbtrace.o hbver.o hbverdsp.o hbwin.o hbwince.o strwild.o  ) || ( rm -f ../../../../../lib/bsd/clang/libhbcommon.a && false )
/bin/sh: llvm-ar: not found
gmake[3]: *** [../../../../../config/lib.mk:74: libhbcommon.a] Error 1
gmake[2]: *** [../../config/lib.mk:70: descend] Error 2
gmake[1]: *** [../config/dir.mk:71: common] Error 2
gmake: *** [config/dir.mk:71: src] Error 2

what i have forgot ?

best regards

domenico

vszakats

unread,
Oct 17, 2017, 9:19:18 AM10/17/17
to Harbour Users
Can you paste your `clang -v` output?

-Viktor

Domenico D'Oria

unread,
Oct 17, 2017, 10:00:46 AM10/17/17
to Harbour Users
Hi Viktor

this is the output

FreeBSD clang version 4.0.0 (tags/RELEASE_400/final 297347) (based on LLVM 4.0.0)
Target: x86_64-unknown-freebsd11.1
Thread model: posix
InstalledDir: /usr/bin

best regards

domenico

vszakats

unread,
Oct 17, 2017, 10:43:53 AM10/17/17
to Harbour Users

Domenico D'Oria

unread,
Oct 17, 2017, 11:04:35 AM10/17/17
to Harbour Users
this is last compile output with your last commit

../../../hbtrace.c:343:20: warning: format string is not a string literal [-Wformat-nonliteral]
   vfprintf( s_fp, fmt, ap );
                   ^~~
1 warning generated.
../../../hbtrace.c:343:20: warning: format string is not a string literal [-Wformat-nonliteral]
   vfprintf( s_fp, fmt, ap );
                   ^~~
1 warning generated.
../../../nortl.c:337:46: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( buffer, sizeof( buffer ), szText, szPar1, szPar2 );
                                             ^~~~~~
../../../nortl.c:327:1: warning: function 'hb_errInternal' could be declared with attribute 'noreturn' [-Wmissing-noreturn]
{
^
2 warnings generated.
In file included from ../../../hbpp.c:68:
../../../ppcore.c:232:40: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( msg, sizeof( msg ), szMsgTable[ iError - 1 ], szParam );
                                       ^~~~~~~~~~~~~~~~~~~~~~~~
../../../ppcore.c:5685:53: warning: format string is not a string literal [-Wformat-nonliteral]
         hb_snprintf( szDefine, sizeof( szDefine ), s_szPlatform, hb_verPlatformMacro() );
                                                    ^~~~~~~~~~~~
../../../ppcore.c:5689:50: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( szDefine, sizeof( szDefine ), s_szPlatform, "UNIX" );
                                                 ^~~~~~~~~~~~
3 warnings generated.
In file included from ../../../hbpp.c:68:
../../../ppcore.c:232:40: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( msg, sizeof( msg ), szMsgTable[ iError - 1 ], szParam );
                                       ^~~~~~~~~~~~~~~~~~~~~~~~
../../../ppcore.c:5685:53: warning: format string is not a string literal [-Wformat-nonliteral]
         hb_snprintf( szDefine, sizeof( szDefine ), s_szPlatform, hb_verPlatformMacro() );
                                                    ^~~~~~~~~~~~
../../../ppcore.c:5689:50: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( szDefine, sizeof( szDefine ), s_szPlatform, "UNIX" );
                                                 ^~~~~~~~~~~~
3 warnings generated.
../../../ppcore.c:232:40: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( msg, sizeof( msg ), szMsgTable[ iError - 1 ], szParam );
                                       ^~~~~~~~~~~~~~~~~~~~~~~~
../../../ppcore.c:5685:53: warning: format string is not a string literal [-Wformat-nonliteral]
         hb_snprintf( szDefine, sizeof( szDefine ), s_szPlatform, hb_verPlatformMacro() );
                                                    ^~~~~~~~~~~~
../../../ppcore.c:5689:50: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( szDefine, sizeof( szDefine ), s_szPlatform, "UNIX" );
                                                 ^~~~~~~~~~~~
3 warnings generated.
../../../ppcore.c:232:40: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( msg, sizeof( msg ), szMsgTable[ iError - 1 ], szParam );
                                       ^~~~~~~~~~~~~~~~~~~~~~~~
../../../ppcore.c:5685:53: warning: format string is not a string literal [-Wformat-nonliteral]
         hb_snprintf( szDefine, sizeof( szDefine ), s_szPlatform, hb_verPlatformMacro() );
                                                    ^~~~~~~~~~~~
../../../ppcore.c:5689:50: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( szDefine, sizeof( szDefine ), s_szPlatform, "UNIX" );
                                                 ^~~~~~~~~~~~
3 warnings generated.
../../../pplib.c:69:50: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( szMsgBuf, sizeof( szMsgBuf ), szMsgTable[ iCode - 1 ],
                                                 ^~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
../../../pplib.c:69:50: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( szMsgBuf, sizeof( szMsgBuf ), szMsgTable[ iCode - 1 ],
                                                 ^~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
harboury.c:6903:6: warning: code will never be executed [-Wunreachable-code]
     goto yyerrorlab;
     ^~~~~~~~~~~~~~~
harboury.c:6902:21: note: silence by adding parentheses to mark code as explicitly dead
  if (/*CONSTCOND*/ 0)
                    ^
                    /* DISABLES CODE */ ( )
1 warning generated.
../../../hbcmplib.c:62:50: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( szMsgBuf, sizeof( szMsgBuf ), szText, szPar1, szPar2 );
                                                 ^~~~~~
1 warning generated.
../../../hbcomp.c:190:43: warning: format string is not a string literal [-Wformat-nonliteral]
   hb_snprintf( buffer, sizeof( buffer ), szText, szPar1, szPar2 );
                                          ^~~~~~
1 warning generated.
In file included from ../../../../hvmall.c:108:
../../../../thread.c:577:1: warning: mutex 'critical' is still held at the end of function [-Wthread-safety-analysis]
}
^
../../../../thread.c:575:4: note: mutex acquired here
   HB_CRITICAL_LOCK( *critical );
   ^
../../../../../../include/hbthread.h:142:37: note: expanded from macro 'HB_CRITICAL_LOCK'
#  define HB_CRITICAL_LOCK(v)       pthread_mutex_lock( &(v) )
                                    ^
../../../../thread.c:567:1: note: Thread warning in function 'hb_threadEnterCriticalSection'
{
^
../../../../thread.c:594:1: warning: mutex 'critical' is still held at the end of function [-Wthread-safety-analysis]
}
^
../../../../thread.c:591:4: note: mutex acquired here
   HB_CRITICAL_LOCK( *critical );
   ^
../../../../../../include/hbthread.h:142:37: note: expanded from macro 'HB_CRITICAL_LOCK'
#  define HB_CRITICAL_LOCK(v)       pthread_mutex_lock( &(v) )
                                    ^
../../../../thread.c:580:1: note: Thread warning in function 'hb_threadEnterCriticalSectionGC'
{
^
../../../../thread.c:603:4: warning: releasing mutex 'critical' that was not held [-Wthread-safety-analysis]
   HB_CRITICAL_UNLOCK( *critical );
   ^
../../../../../../include/hbthread.h:143:37: note: expanded from macro 'HB_CRITICAL_UNLOCK'
#  define HB_CRITICAL_UNLOCK(v)     pthread_mutex_unlock( &(v) )
                                    ^
../../../../thread.c:597:1: note: Thread warning in function 'hb_threadLeaveCriticalSection'
{
^
../../../../thread.c:709:11: warning: calling function 'pthread_cond_wait' requires holding mutex 'mutex' exclusively
      [-Wthread-safety-analysis]
   return pthread_cond_wait( HB_COND_GET( cond ), HB_CRITICAL_GET( mutex ) ) == 0;
          ^
../../../../thread.c:692:1: note: Thread warning in function 'hb_threadCondWait'
{
^
../../../../thread.c:770:11: warning: calling function 'pthread_cond_timedwait' requires holding mutex 'mutex' exclusively
      [-Wthread-safety-analysis]
   return pthread_cond_timedwait( HB_COND_GET( cond ), HB_CRITICAL_GET( mutex ), &ts ) == 0;
          ^
../../../../thread.c:750:1: note: Thread warning in function 'hb_threadCondTimedWait'
{
^
../../../../thread.c:2209:4: warning: releasing mutex 'pMutex->mutex' that was not held [-Wthread-safety-analysis]
   HB_CRITICAL_UNLOCK( pMutex->mutex );
   ^
../../../../../../include/hbthread.h:143:37: note: expanded from macro 'HB_CRITICAL_UNLOCK'
#  define HB_CRITICAL_UNLOCK(v)     pthread_mutex_unlock( &(v) )
                                    ^
../../../../thread.c:2206:1: note: Thread warning in function 'hb_thredMutexEventInit'
{
^
../../../../thread.c:2229:1: warning: mutex 'pMutex->mutex' is still held at the end of function [-Wthread-safety-analysis]
}
^
../../../../thread.c:2227:7: note: mutex acquired here
      HB_CRITICAL_LOCK( pMutex->mutex );
      ^
../../../../../../include/hbthread.h:142:37: note: expanded from macro 'HB_CRITICAL_LOCK'
#  define HB_CRITICAL_LOCK(v)       pthread_mutex_lock( &(v) )
                                    ^
../../../../thread.c:2206:1: note: Thread warning in function 'hb_thredMutexEventInit'
{
^
7 warnings generated.
In file included from ../../../../hvmall.c:108:
../../../../thread.c:577:1: warning: mutex 'critical' is still held at the end of function [-Wthread-safety-analysis]
}
^
../../../../thread.c:575:4: note: mutex acquired here
   HB_CRITICAL_LOCK( *critical );
   ^
../../../../../../include/hbthread.h:142:37: note: expanded from macro 'HB_CRITICAL_LOCK'
#  define HB_CRITICAL_LOCK(v)       pthread_mutex_lock( &(v) )
                                    ^
../../../../thread.c:567:1: note: Thread warning in function 'hb_threadEnterCriticalSection'
{
^
../../../../thread.c:594:1: warning: mutex 'critical' is still held at the end of function [-Wthread-safety-analysis]
}
^
../../../../thread.c:591:4: note: mutex acquired here
   HB_CRITICAL_LOCK( *critical );
   ^
../../../../../../include/hbthread.h:142:37: note: expanded from macro 'HB_CRITICAL_LOCK'
#  define HB_CRITICAL_LOCK(v)       pthread_mutex_lock( &(v) )
                                    ^
../../../../thread.c:580:1: note: Thread warning in function 'hb_threadEnterCriticalSectionGC'
{
^
../../../../thread.c:603:4: warning: releasing mutex 'critical' that was not held [-Wthread-safety-analysis]
   HB_CRITICAL_UNLOCK( *critical );
   ^
../../../../../../include/hbthread.h:143:37: note: expanded from macro 'HB_CRITICAL_UNLOCK'
#  define HB_CRITICAL_UNLOCK(v)     pthread_mutex_unlock( &(v) )
                                    ^
../../../../thread.c:597:1: note: Thread warning in function 'hb_threadLeaveCriticalSection'
{
^
../../../../thread.c:709:11: warning: calling function 'pthread_cond_wait' requires holding mutex 'mutex' exclusively
      [-Wthread-safety-analysis]
   return pthread_cond_wait( HB_COND_GET( cond ), HB_CRITICAL_GET( mutex ) ) == 0;
          ^
../../../../thread.c:692:1: note: Thread warning in function 'hb_threadCondWait'
{
^
../../../../thread.c:770:11: warning: calling function 'pthread_cond_timedwait' requires holding mutex 'mutex' exclusively
      [-Wthread-safety-analysis]
   return pthread_cond_timedwait( HB_COND_GET( cond ), HB_CRITICAL_GET( mutex ), &ts ) == 0;
          ^
../../../../thread.c:750:1: note: Thread warning in function 'hb_threadCondTimedWait'
{
^
../../../../thread.c:2209:4: warning: releasing mutex 'pMutex->mutex' that was not held [-Wthread-safety-analysis]
   HB_CRITICAL_UNLOCK( pMutex->mutex );
   ^
../../../../../../include/hbthread.h:143:37: note: expanded from macro 'HB_CRITICAL_UNLOCK'
#  define HB_CRITICAL_UNLOCK(v)     pthread_mutex_unlock( &(v) )
                                    ^
../../../../thread.c:2206:1: note: Thread warning in function 'hb_thredMutexEventInit'
{
^
../../../../thread.c:2229:1: warning: mutex 'pMutex->mutex' is still held at the end of function [-Wthread-safety-analysis]
}
^
../../../../thread.c:2227:7: note: mutex acquired here
      HB_CRITICAL_LOCK( pMutex->mutex );
      ^
../../../../../../include/hbthread.h:142:37: note: expanded from macro 'HB_CRITICAL_LOCK'
#  define HB_CRITICAL_LOCK(v)       pthread_mutex_lock( &(v) )
                                    ^
../../../../thread.c:2206:1: note: Thread warning in function 'hb_thredMutexEventInit'
{
^
7 warnings generated.
../../../errint.c:54:1: warning: function 'hb_errInternal' could be declared with attribute 'noreturn' [-Wmissing-noreturn]
{
^
1 warning generated.
../../../errint.c:54:1: warning: function 'hb_errInternal' could be declared with attribute 'noreturn' [-Wmissing-noreturn]
{
^
1 warning generated.
../../../errintlo.c:101:46: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( buffer, sizeof( buffer ), hb_langDGetItem( HB_LANG_ITEM_BASE_ERRINTR ), errCode );
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../errintlo.c:113:46: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( buffer, sizeof( buffer ), szText, szPar1, szPar2 );
                                             ^~~~~~
2 warnings generated.
../../../errintlo.c:101:46: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( buffer, sizeof( buffer ), hb_langDGetItem( HB_LANG_ITEM_BASE_ERRINTR ), errCode );
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../errintlo.c:113:46: warning: format string is not a string literal [-Wformat-nonliteral]
      hb_snprintf( buffer, sizeof( buffer ), szText, szPar1, szPar2 );
                                             ^~~~~~
2 warnings generated.
macroy.c:2878:6: warning: code will never be executed [-Wunreachable-code]
     goto yyerrorlab;
     ^~~~~~~~~~~~~~~
macroy.c:2877:21: note: silence by adding parentheses to mark code as explicitly dead
  if (/*CONSTCOND*/ 0)
                    ^
                    /* DISABLES CODE */ ( )
macroy.c:1887:5: warning: 'break' will never be executed [-Wunreachable-code-break]
    break;
    ^~~~~
2 warnings generated.
macroy.c:2878:6: warning: code will never be executed [-Wunreachable-code]
     goto yyerrorlab;
     ^~~~~~~~~~~~~~~
macroy.c:2877:21: note: silence by adding parentheses to mark code as explicitly dead
  if (/*CONSTCOND*/ 0)
                    ^
                    /* DISABLES CODE */ ( )
macroy.c:1887:5: warning: 'break' will never be executed [-Wunreachable-code-break]
    break;
    ^~~~~
2 warnings generated.
hbmk2 [bz2]: Error: Running lib command. 255
hbmk2 [bz2]: Exit status: 7: failed in final assembly (linker or library manager)
gmake[1]: *** [Makefile:8: first] Error 7
gmake: *** [config/dir.mk:71: contrib] Error 2

vszakats

unread,
Oct 17, 2017, 11:44:49 AM10/17/17
to Harbour Users
Most of these are known "normal" clang warnings. These
and the rest should be common with 3.2. Maybe Przemek
can fix the thread.c ones if he's interested in FreeBSD.

The error output seems to be missing from your paste so
it's not possible to tell what happened with bz2. See these
docs how to report log that make troubleshooting possible:


Anyhow building vendored code like bz2 is strongly not
recommended on *nix systems. Install the necessary 
dependency (e.g. bz2) instead using the OS's package
manager.

-Viktor

Przemyslaw Czerpak

unread,
Oct 20, 2017, 9:54:09 AM10/20/17
to harbou...@googlegroups.com
On Tue, 17 Oct 2017, vszakats wrote:

Hi,

> Most of these are known "normal" clang warnings. These
> and the rest should be common with 3.2. Maybe Przemek
> can fix the thread.c ones if he's interested in FreeBSD.

I'm AFRAID that I cannot change thread.c to easy pacify such
warnings because they are simple wrappers to PTHREAD functions
like pthread_mutex_lock(), i.e.:

void hb_threadEnterCriticalSection( pthread_mutex_t critical )
{
pthread_mutex_lock( critical );
}

In such cases the only solution is adding some attributes to
function declaration which informs compiler that the function
is such wrappers and should inherit attributes from wrapped
function. I do not know if CLANG supports such functionality.
Of course we can try to inline all such functions by macros
and eliminate wrappers but it's much more danger and could be
source of very bad mistakes due to platform differences now
hidden by Harbour MT API.

BTW I've made few speed tests with CLANG and GCC Harbour builds
and Harbour compiled with CLANG is still noticeable slower then
GCC builds in my Linux box.

best regards,
Przemek

Przemyslaw Czerpak

unread,
Oct 20, 2017, 10:11:21 AM10/20/17
to harbou...@googlegroups.com
On Fri, 20 Oct 2017, Przemyslaw Czerpak wrote:

Hi,

> I'm AFRAID that I cannot change thread.c to easy pacify such
> warnings because they are simple wrappers to PTHREAD functions
> like pthread_mutex_lock(), i.e.:
>
> void hb_threadEnterCriticalSection( pthread_mutex_t critical )
> {
> pthread_mutex_lock( critical );
> }
>
> In such cases the only solution is adding some attributes to
> function declaration which informs compiler that the function
> is such wrappers and should inherit attributes from wrapped
> function. I do not know if CLANG supports such functionality.

Short session with google was enough to find such information
for C++ mode:
https://clang.llvm.org/docs/ThreadSafetyAnalysis.html

NO_THREAD_SAFETY_ANALYSIS attribute can be used to pacify
warning but for final solution we should try to implement
real thread safety attributes so also other code using our
wrappers can be verified during compilation. It can be also
interesting extension for other code, i.e. using
hb_vmUnlock()/hb_vmLock() pair.
Unfortunately I do not have spare time for it now. Maybe
later or maybe someone else can do that.

best regards,
Przemek

Domenico D'Oria

unread,
Oct 20, 2017, 12:56:29 PM10/20/17
to Harbour Users
today i reinstall a fresh copy of freebsd 11.1

then git harbour 3.4

execute istructions on your site

these are the last rows


../bin/bsd/clang/hbmk2 ../bin/make.hb . first
! Harbour root: '../'  Project store: './'  Core build: yes  Addon: no
! Started build...
! Calculating build order for 72 projects...
! Warning: 'hbmk2 ./gtqtc/gtqtc.hbp --hbinfo' failed with exit status 20
/usr/home/ricky/harbour-core/bin/bsd/clang/hbmk2 -lang=en -quiet -width=0 -autohbm- @../config/hbpre -inc ./hbbz2/3rd/bz2/bz2.hbp @../config/hbpost
hbmk2 [bz2]: Error: Running lib command. 255
hbmk2 [bz2]: Exit status: 7: failed in final assembly (linker or library manager)
! Finished build...
gmake[1]: *** [Makefile:8: first] Error 7
gmake: *** [config/dir.mk:71: contrib] Error 2

looking for bzip2 package, installed but i have the same error.

so i think is better compile with gcc 

i download amd64-gcc 6.3 the same version used in debian 9.1 ( there was compiled fine )

now i have to tell gmake which compiler i have to use

the infomation have to be written in Makefile.mk

FAVORITE_COMPILER= gcc
USE_GCC= 4.7
USES += compiler

but because i have small or nothing knowledge in c, c++ probably do something wrong

have you any suggestion

regards 

vszakats

unread,
Oct 20, 2017, 2:10:44 PM10/20/17
to Harbour Users
Are you sure you enabled verbose mode and included stderr output?

-Viktor

Roberto Borges

unread,
Oct 21, 2017, 4:57:13 PM10/21/17
to Harbour Users
Dear all

Im my case Linux Ubuntu 17.10 i386, erro is the llvm-ar not exist, make a link to this.

Domenico D'Oria

unread,
Oct 23, 2017, 5:10:02 AM10/23/17
to Harbour Users
Hi all

yesterday ( sunday 22.10.2017 ) i have tested another BSD Os, TrueOS

hardware is an ACER aspire one D 270-26dkk  with an Atom N2600 64 bit 2 cores/ 4 threads at 1600 Mhz with 2 GB ram and an old 80 GB sata hard drive  ( not the original )

graphics is an Intel Graphics Media Accelerator (GMA) 3600, resolution is 1024x600

the hardware is not as fast as i want, but was only for testing Harbour 3.4 on BSD system

before there was an Lubuntu 17.10 OS without harbour

the installation was made from an USB Key and take almost 30 minutes

after fetching ports and giting Harbour 3.4

i start the building from source, the compiling time was long, but the system is not a Ferrari, is an old Fiat 500 ;)

but all works fine  !

after building i was able to compile hello.prg

the gmake version is 4.2.1 compiled for amd64-portbld-freebsd12.0

the clang version is 4.0.0 ( tags/RELEASE_400/final 297347 ) based on LLVM 4.0.0
Target : x86_64_unknown-freebsd12.0 )
Thread model : posix
InstalledDir : /usr/bin

 
in these days i'll test the same os ( server version ) on a different faster old hardware 

thanks to all developers in particular way to Viktor and Druzus 

regarsd

domenico






 

Mario Lobo

unread,
Oct 25, 2017, 12:24:49 PM10/25/17
to Harbour Users
Maybe what you need is this:

cd /usr/local/bin/
ln -s llvm-ar40 llvm-ar
ln -s llvm-as40 llvm-as
ln -s llvm-bcanalyzer40 llvm-bcanalyzer
ln -s llvm-cat40 llvm-cat

In my case, I have several llvm versions installed because different ports require different versions.

Check this post also.

https://groups.google.com/forum/#!topic/harbour-users/ArUPtkV-OvY

Att,

Mario Lobo

Domenico D'Oria

unread,
Oct 27, 2017, 1:33:29 PM10/27/17
to Harbour Users
to Mario, thanks for your help, immeasurable...

to Viktor, many thanks for your huge work.

i try to compile now

there is be an error probably simple to recover

/usr/home/ricky/harbour-core/bin/bsd/clang/hbmk2 -lang=en -quiet -width=0 -autohbm- @../config/hbpre -inc ./hbmlzo/hbmlzo.hbp @../config/hbpost
../../../../../contrib/hbmlzo/core.c:54:10: fatal error: 'minilzo.h' file not found
#include "minilzo.h"

but this file is in ../../../../../contrib/hbmlzo/3rd/millzo directory

where i have to made the change ?

regards

Domenico




vszakats

unread,
Oct 27, 2017, 1:58:33 PM10/27/17
to Harbour Users
My blind guess would be a wrongly set HB_WITH_MINILZO.

As I said, without verbose output and posting your settings
it's impossible to tell anything meaningful — and it's best to
install dependencies and let them get autodetected instead
of manually configuring or falling back to the vendored copies
in /3rd/ directories.

-Viktor

Mario Lobo

unread,
Oct 27, 2017, 6:31:07 PM10/27/17
to Harbour Users
Domenico:

Try erasing this line:

-deppkgname=minilzo:lzo2{pkg}

from contrib/hbmlzo/hbmlzo.hbp

Mario

Mario Lobo

unread,
Oct 28, 2017, 10:17:34 AM10/28/17
to Harbour Users
Never mind that!

Viktor has corrected it!

Just git pull !

Mario

Domenico D'Oria

unread,
Oct 28, 2017, 10:37:57 AM10/28/17
to Harbour Users
 after Your suggestions and Viktor update

even if there are some warnings, compilation ends fine.

thank Mario for your support

thank Viktor fory your job.

now i will try some GUI

regards

Domenico



Reply all
Reply to author
Forward
0 new messages