<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Hi Woodley,</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">(I re-added the developers list on CC so they can see the fix)</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Moving -lm to after -Wl,-Bdynamic did the trick. Strangely, once I did that and `make all &amp;&amp; make install` for libtsdb, the other errors went away. Not sure if they were related or something else changed on my system in the meantime. And as you said, this also fixed the compiling of FFTB for me.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Cheers,<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, May 14, 2020 at 1:14 AM Woodley Packard &lt;<a href="mailto:sweaglesw@sweaglesw.org">sweaglesw@sweaglesw.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;">Hi Mike,<div><br></div><div>The errors while compiling test.static and friends do appear to be related to the stack overflow thread you found.  Fortunately those binaries are not required; you should be able to use the dynamic ones just fine.  If you want the ones that have the support libraries compiled in statically, I recommend moving -lm from inside of the static link block in TOOL_STATIC_LDFLAGS to after the -Wl,-Bdynamic.  I&#39;ve done that at my end now; thanks for the report.  The same should work for the LIBS setting for FFTB&#39;s Makefile.</div><div><br></div><div>The error you&#39;re seeing when running art most likely is a result of your system&#39;s shared library search path not including /usr/local/lib/.  Your options would be to put libace.so somewhere your system expects to find it or add that path.  To do that latter, you can edit /etc/ld.so.conf or /etc/ld.so.conf.d/, or use LD_LIBRARY_PATH.<br><div><br></div><div>Let me know if that helps resolve the issues at your end.</div><div><br></div><div>Thanks,</div><div>Woodley</div><div><br><blockquote type="cite"><div>On May 12, 2020, at 12:55 AM, <a href="mailto:goodman.m.w@gmail.com" target="_blank">goodman.m.w@gmail.com</a> wrote:</div><br><div><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Hi all,</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">I&#39;m getting similar errors to Alexandre. I successfully compiled and installed liba, repp-0.2.2, and then ace, but I&#39;m getting the error that it cannot find &lt;tsdb.h&gt; I try &quot;make all&quot; for libtsdb. I noticed that tsdb.h is provided by libtsdb, and `#include &lt;tsdb.h&gt;` seems to look in my system libraries. Changing all these to `#include &quot;tsdb.h&quot;` (thinking it might use the file in the current directory) did not work, so I reverted those changes and ran the following:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">    make libtsdb.a  # required for &#39;make install&#39;<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">    make libtsdb.so  # required for &#39;make install&#39;<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">    make install  # copies the above 2 things plus tsdb.h to /usr/local/lib/<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Then I tried running &quot;make all&quot; again and now I see this:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">    [...]<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">    test.c: In function ‘main’:<br>    test.c:599:2: warning: implicit declaration of function ‘ace_load_grammar’ [-Wimplicit-function-declaration]<br>      599 |  ace_load_grammar(&quot;/home/sweaglesw/cdev/ace-regression/comparison.dat&quot;);<br>          |  ^~~~~~~~~~~~~~~~<br>    /usr/bin/ld: /usr/lib/x86_64-linux-gnu/libm-2.31.a(e_exp.o): in function `__ieee754_exp_ifunc&#39;:<br>    (.text+0x246): undefined reference to `_dl_x86_cpu_features&#39;<br>    /usr/bin/ld: /usr/lib/x86_64-linux-gnu/libm-2.31.a(e_log.o): in function `__ieee754_log_ifunc&#39;:<br>    (.text+0x2c6): undefined reference to `_dl_x86_cpu_features&#39;<br>    collect2: error: ld returned 1 exit status<br>    make: *** [Makefile:45: test.static] Error 1<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">It seems there&#39;s some incompatibility in glibc versions. This SO question seems relevant: <a href="https://stackoverflow.com/q/56415996/1441112" target="_blank">https://stackoverflow.com/q/56415996/1441112</a> ; maybe it&#39;s a static vs. dynamic linking issue? Other than test.static, I was able to make other targets, such as art and mkprof, but I see errors when I try to run them:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">    $ ./art -h<br>    ./art: error while loading shared libraries: libace.so: cannot open shared object file: No such file or directory<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">But I have libace.so at /usr/local/lib/libace.so, so I&#39;m not sure what went wrong here. My end goal is to compile FFTB, and if I carry on with the current setup I see the same errors as when compiling test.static when I do &quot;make fftb&quot; for the FFTB source code. Does anybody know how to get around these issues?<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Some context:<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">* For compiling ACE I copied itsdb_libraries.tgz as described here: <a href="http://moin.delph-in.net/AceInstall#Missing_itsdb.h" target="_blank">http://moin.delph-in.net/AceInstall#Missing_itsdb.h</a></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">* I&#39;m running Pop!_OS 20.04 (similar to Ubuntu), with glibc version 2.31</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jul 19, 2019 at 10:38 PM Woodley Packard &lt;<a href="mailto:sweaglesw@sweaglesw.org" target="_blank">sweaglesw@sweaglesw.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">It looks like you are trying to compile the &quot;liba&quot; dependency.  MacOS does shared libraries quite differently from Linux.  it will probably be easiest to do it as a static library; try &quot;make liba.a&quot;?<br>
<br>
-Woodley<br>
<br>
<br>
&gt; On Jul 19, 2019, at 6:02 AM, Alexandre Rademaker &lt;<a href="mailto:arademaker@gmail.com" target="_blank">arademaker@gmail.com</a>&gt; wrote:<br>
&gt; <br>
&gt; <br>
&gt; Hi Woodley,<br>
&gt; <br>
&gt; Once I follow the proper order for compile the dependencies (liba, libace, libtsdb, fftb), I got everything to work at Linux. But no success o Mac OS yet!! :-( <br>
&gt; <br>
&gt; Any direction?<br>
&gt; <br>
&gt; I found that gcc-9 is the gcc installed from brew<br>
&gt; <br>
&gt; $ gcc-9 --version<br>
&gt; gcc-9 (Homebrew GCC 9.1.0) 9.1.0<br>
&gt; Copyright (C) 2019 Free Software Foundation, Inc.<br>
&gt; This is free software; see the source for copying conditions.  There is NO<br>
&gt; warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br>
&gt; <br>
&gt; <br>
&gt; These where my changes in the Makefile but I could not compile. <br>
&gt; <br>
&gt; $ svn diff Makefile<br>
&gt; Index: Makefile<br>
&gt; ===================================================================<br>
&gt; --- Makefile  (revision 40)<br>
&gt; +++ Makefile  (working copy)<br>
&gt; @@ -1,6 +1,6 @@<br>
&gt; -HDRS=net.h timer.h http.h web.h sql.h server.h aisle-rpc.h asta-rpc.h background.h daemon.h aside-rpc.h escape.h<br>
&gt; -OBJS=net.o timer.o http.o web.o sql.o server.o aisle-rpc.o asta-rpc.o background.o daemon.o aside-rpc.o escape.o<br>
&gt; -CC=gcc<br>
&gt; +HDRS=net.h timer.h http.h web.h server.h aisle-rpc.h asta-rpc.h background.h daemon.h aside-rpc.h escape.h<br>
&gt; +OBJS=net.o timer.o http.o web.o server.o aisle-rpc.o asta-rpc.o background.o daemon.o aside-rpc.o escape.o<br>
&gt; +CC=gcc-9<br>
&gt; CFLAGS=-g -O -shared -fPIC -pthread<br>
&gt; #CFLAGS=-g -pg -O -shared -fPIC -pthread<br>
&gt; <br>
&gt; @@ -16,13 +16,13 @@<br>
&gt;       cp liba.h /usr/local/include/<br>
&gt; <br>
&gt; tests: ${OBJS} liba.h<br>
&gt; -     gcc -g -isystem . test.c ${OBJS} -lpq -lpthread -o test<br>
&gt; +     ${CC} -g -isystem . test.c ${OBJS} -lpthread -o test<br>
&gt; <br>
&gt; shared-tests:<br>
&gt; -     gcc -g test.c -la -o test<br>
&gt; +     ${CC} -g test.c -la -o test<br>
&gt; <br>
&gt; liba.so: ${OBJS} liba.h Makefile<br>
&gt; -     ld -shared ${OBJS} -o liba.so -lpq -lpthread<br>
&gt; +     ld ${OBJS} -o liba.so -lpthread<br>
&gt; <br>
&gt; <br>
&gt; The error is:<br>
&gt; <br>
&gt; $ make<br>
&gt; ld net.o timer.o http.o web.o server.o aisle-rpc.o asta-rpc.o background.o daemon.o aside-rpc.o escape.o -o liba.so -lpthread<br>
&gt; ld: warning: No version-min specified on command line<br>
&gt; Undefined symbols for architecture x86_64:<br>
&gt;  &quot;_main&quot;, referenced from:<br>
&gt;     implicit entry/start for main executable<br>
&gt; ld: symbol(s) not found for inferred architecture x86_64<br>
&gt; make: *** [liba.so] Error 1<br>
&gt; <br>
&gt; <br>
&gt; <br>
&gt; Best,<br>
&gt; <br>
&gt; --<br>
&gt; Alexandre Rademaker<br>
&gt; <a href="http://arademaker.github.io/" rel="noreferrer" target="_blank">http://arademaker.github.io</a><br>
&gt; <br>
&gt; <br>
&gt; <br>
<br>
<br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr">-Michael Wayne Goodman</div>
</div></blockquote></div><br></div></div></blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature">-Michael Wayne Goodman</div>