Menu ▾ ▴

#90 tutor , dbchw error creating

v1.0_(example)
open
nobody
1
2021-05-26
2021-05-14
No

OS freebsd 13.0 ( but i think this no matter )
Harbour last commit
Hwgui last commit

when i try to compile tutor and dbchw this is the error :

Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
ld: error: undefined symbol: sin

referenced by misc.c
misc.o:(HB_FUN_HWG_SIN) in archive ../../lib/libhwgui.a

ld: error: undefined symbol: cos

referenced by misc.c
misc.o:(HB_FUN_HWG_COS) in archive ../../lib/libhwgui.a
clang: error: linker command failed with exit code 1 (use -v to see invocation)
hbmk2[dbchw]: Error: Running linker. 1
clang '/tmp/hbmk_kXc34l.dir/dbchw.o' '/tmp/hbmk_kXc34l.dir/commands.o' '/tmp/hbmk_kXc34l.dir/modistru.o' '/tmp/hbmk_kXc34l.dir/move.o' '/tmp/hbmk_kXc34l.dir/view.o' '/tmp/hbmk_kXc34l.dir/procs_c.o' '/tmp/hbmk_kXc34l.dir/hbmk_jC8Etv.o' -Wl,--start-group -lhwgui -lprocmisc -lhbxml -lhwgdebug -lhbcplr -lhbdebug -lharbour -L/usr/local/lib -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lpthread -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lintl -lfontconfig -lfreetype -Wl,--end-group -o../../bin/dbchw -L/usr/local/lib/harbour -L../.. -L../../lib -L/usr/X11R6/lib -L/usr/local/lib

hbmk2: Error: Referenced, missing, but unknown function(s): HWG_SIN(),
HWG_COS()

is there something i forgot ?

regards

domenico

Discussion

  • Wilfried Brunken

    Hello Domenico,
    please test *.hbp files committed with r2995
    on your BSD system and give feedback.
    Macro "{linux}" not for BSD:
    The macro for unix has also effect on LINUX, so
    i changed it to:
    "{unix}"

    If there are many other places need to modify the macro,
    please send a list of them for check and commit.

    With regards,
    MNI TNX, 73 es 55 de
    DF7BE, Wilfried

     
  • domenico d'oria

    domenico d'oria - 2021-05-24

    Hi Wilfried, some minutes ago i update hwgui to last commit ( 2996 )

    build libs with normal warnings

    try to rebuild tutor with

    hbmk2 tutor.hbp

    received this warning

    Error: Referenced, missing, but unknown function(s): HWG_SIN(),
    HWG_COS()

    no tutor created

    same errors with dbchw

     
  • Wilfried Brunken

    Hello Domenico,
    please check, if the missing symbols are in the HWGUI lib:
    cltest@afulinux4:~/hwgui/lib$ nm libhwgui.a | grep HWG_COS
    0000000000000490 T HB_FUN_HWG_COS
    cltest@afulinux4:~/hwgui/lib$ nm libhwgui.a | grep HWG_SIN
    0000000000000470 T HB_FUN_HWG_SIN

    If not:
    it seems, that the math library "libm.a" or "libm.so" was not
    included by the the HWGUI build:
    Harbour 3.2.0dev (r2104281802)
    Copyright (c) 1999-2021, https://harbour.github.io/
    ld: error: undefined symbol: sin

    but i don't know why not. I checked all files of the HWGUI build process:

    1. the functions HWG_COS() and HWG_SIN() are implemented
      in source code file misc.c for WinAPI and GTK.
      This functions call the basic functions "sin" and "cos" of libm.xx of the
      GCC and returned their value in Harbour notification.

    2. the file "hwgui.hbm" contains a list of all source file to compile:
      {unix}source/gtk/misc.c
      ...
      {win}source/winapi/misc.c

    3. The link option "-lm" is necessary to include the libm library.

    Instead of using the hbmk2 utility, you can use as alternative method
    the following:

    1. Edit the .profile of userid running hwgui, as
      described in install.txt . After a new login the entries are valid.

    2.Edit the script make_gtk.sh and modify the
    installation path of Harbour to your own needs:
    export HB_ROOT=$HOME/Harbour/core-master

    1. Be shure, that the script have execute permission, otherwise say:
      chmod 755 make_gtk.sh

    2. Remove all files .a in directory lib and all .o in obj, if existing

    3. Try to build hwgui with
      ./make_gtk.sh -hb
      Calls the system make utility with "source/gtk/Makefile.linux"

    4. Now try to build tutor and dbch with hbmk2 ...

    Please give feedback, if you have success, otherwise
    collect all outputs into one text file and post them for analyis.

    With regards,
    MNI TNX, 73 es 55 de
    DF7BE, Wilfried

     

Log in to post a comment.