ID: | 3528 |
From: | ka...@aspodata.se |
Date: | Sun, 10 Nov 2019 10:58:45 +0100 (CET) |
Subject: | Re: [pcb-rnd] undefined reference to `fgw_ucall_all' |
in-reply-to: | 3526 from ge...@igor2.repo.hu |
replies: | 3529 from ge...@igor2.repo.hu , 3530 from ge...@igor2.repo.hu |
Igor2: > On Sat, 9 Nov 2019, karl@aspodata.se wrote: > >/Net/svn/pcb-rnd/src/../src_plugins/import_sch/import_sch.c:274: undefined reference to `fgw_uvcall' ... > I think you have system installed fungw that is too old for the user call > contexts and scconfig failed to detect that. With the fix it should give > you a warning about this and fall back to the cut-back (but new-enough) > version shipped with pcb-rnd. No warning and it still doesn't work: $ ./configure --buildin-diag --debug --plugin-script --plugin-expfeat --plugin-export_openems > config.log Generating puplug/Makefile (0) Generating puplug/config.h (0) $ grep fungw config.log Checking for fungw... OK ('', '' and '-lfungw -lm -lgenht') Checking for fungw user_call_ctx... OK ('', '' and '-lfungw -lm -lgenht') fungw turing complete scripting yes, PLUGIN [script] $ make > make.log 2>&1 $ tail make.log /Net/svn/pcb-rnd/src/event.c:235: undefined reference to `fgw_ucall_all' ../src_plugins/import_sch/import_sch.o: In function `pcb_act_Import': /Net/svn/pcb-rnd/src/../src_plugins/import_sch/import_sch.c:277: undefined reference to `fgw_uvcall' /Net/svn/pcb-rnd/src/../src_plugins/import_sch/import_sch.c:354: undefined reference to `fgw_uvcall' collect2: error: ld returned 1 exit status make[2]: *** [Makefile:62: pcb-rnd] Error 1 make[2]: Leaving directory '/Net/svn/pcb-rnd/src' make[1]: *** [Makefile:51: all] Error 2 make[1]: Leaving directory '/Net/svn/pcb-rnd/src' make: *** [Makefile:3: all] Error 2 //// I think I found out why. When configureing, scconf looks in /usr/local/lib (my guess), but when linking, ld looks in lib64: $ ls -l /usr/local/lib/libfungw.so.1.0.0 /usr/local/lib64/libfungw.so.1.0.0 -rwxr-xr-x 1 karl users 60432 Nov 10 09:55 /usr/local/lib/libfungw.so.1.0.0 -rwxr-xr-x 1 karl users 43544 Feb 26 2019 /usr/local/lib64/libfungw.so.1.0.0 $ grep /usr/local/lib /etc/ld.so.conf /usr/local/lib64 /usr/local/lib32 /usr/local/lib Gentoo have been messing with the lib dirs.: https://www.gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html Soo, in februari, before the gentoo lib switch, fungw ended up in lib64, and the new fungw ended up in lib since it doesn't know about gentoos lib policy. ///// The quick fix is to remove the lib64 one and be done with it: $ cd /usr/local/lib64/ $ mkdir zzz $ mv libfungw.so* zzz/ $ cd - /Net/svn/pcb-rnd $ tail make.log2 make[5]: Leaving directory '/Net/svn/pcb-rnd/src_3rd/genlist' make[4]: Leaving directory '/Net/svn/pcb-rnd/src' gcc gsch2pcb.o help.o netlister.o run.o glue.o method_import.o ../../src/vtlibrary.o ../../src/compat_fs.o ../../src/paths.o ../../src/conf.o ../../src/conf_core.o ../../src/hid_cfg.o ../../src/hidlib_conf.o ../../src/misc_util.o ../../src/unit.o ../../src/conf_internal.o ../../src/list_conf.o ../../src/conf_hid.o ../../src/pcb-printf.o ../../src/compat_misc.o ../../src/safe_fs.o ../../src/plug_footprint.o ../../src_3rd/genlist/genadlist.o ../../src_3rd/genlist/genlistalloc.o ../../src_3rd/qparse/qparse.o ../../src/librnd-hid.a ../../src/librnd-3rd.a -o gsch2pcb-rnd -lm -rdynamic -lfungw -lm -lgenht -lgd -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype -lgtkglext-x11-1.0 -lgdkglext-x11-1.0 -lGL -lGLU -lXmu -lXm -lXt -lSM -lICE -lpangox-1.0 -lX11 -Wl,--export-dynamic -pthread -lgmodule-2.0 -L/opt/X11/lib -lXinerama -lXrender -lxml2 -ldl -lfungw -lm -lgenht make[3]: Leaving directory '/Net/svn/pcb-rnd/util/gsch2pcb-rnd' make[2]: Leaving directory '/Net/svn/pcb-rnd/util/gsch2pcb-rnd' make[1]: Leaving directory '/Net/svn/pcb-rnd/util' cd pcblib && make make[1]: Entering directory '/Net/svn/pcb-rnd/pcblib' make[1]: Nothing to be done for 'all'. make[1]: Leaving directory '/Net/svn/pcb-rnd/pcblib' $ ///// Or do you want to handle this case ? Regards, /Karl Hammar
Reply subtree:
3528 Re: [pcb-rnd] undefined reference to `fgw_ucall_all' from ka...@aspodata.se
3529 Re: [pcb-rnd] undefined reference to `fgw_ucall_all' from ge...@igor2.repo.hu
3531 Re: [pcb-rnd] undefined reference to `fgw_ucall_all' from ka...@aspodata.se
3530 Re: [pcb-rnd] undefined reference to `fgw_ucall_all' from ge...@igor2.repo.hu