<div dir="ltr">Thanks! That fixed it.<div>Compilation now succeeds!<br></div><div><br></div><div>Only one problem seems to remain. During the installation phase I get this error at the end (full output of install stage: <a href="https://pastebin.com/ca6FJebB">https://pastebin.com/ca6FJebB</a>):</div><div><br></div><div><div><font face="monospace, monospace">ecasound: installs files in /home/buildroot/buildroot-2018.02-rc2/output/target//home/buildroot/buildroot-2018.02-rc2/output</font></div><div><font face="monospace, monospace">make[1]: *** [/home/buildroot/buildroot-2018.02-rc2/output/build/ecasound-2.9.1/.stamp_target_installed] Error 1</font></div><div><font face="monospace, monospace">make: *** [_all] Error 2</font></div></div><div><br></div><div>Everything seems to have nicely been installed into each directory.</div><div>I noticed there's a double forward slash in the directory name, could that be the culprit?</div><div><br></div><div>By the way, the working patch looks like this now:</div><div><br></div><div><div><font face="monospace, monospace">diff --git a/ecasound/Makefile.am b/ecasound/Makefile.am</font></div><div><font face="monospace, monospace">index 7346a51d5b94..1223f346aff7 100644</font></div><div><font face="monospace, monospace">--- a/ecasound/Makefile.am</font></div><div><font face="monospace, monospace">+++ b/ecasound/Makefile.am</font></div><div><font face="monospace, monospace">@@ -1,4 +1,4 @@</font></div><div><font face="monospace, monospace">-INCLUDES = -I$(ECA_S_READLINE_INCLUDES) -I$(srcdir) -I$(top_srcdir) -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils</font></div><div><font face="monospace, monospace">+INCLUDES = -I=/usr/include/readline -I$(srcdir) -I$(top_srcdir) -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils</font></div><div><font face="monospace, monospace"><br></font></div><div><font face="monospace, monospace"> if ECA_AM_USE_NCURSES</font></div><div><font face="monospace, monospace"> termcap_library_ncurses = -lncurses</font></div></div><div><br></div><div>Assuming we manage to fix this, should I upload this package for inclusion into Buildroot somewhere?</div><div>Or, how does that work? What's the etiquette, convention, etc.?</div><div><br></div><div>rgds,</div><div>Sjoerd Venema</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 27 February 2018 at 12:54, Peter Seiderer <span dir="ltr"><<a href="mailto:ps.report@gmx.net" target="_blank">ps.report@gmx.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello Sjoerd,<br>
<span class=""><br>
On Mon, 26 Feb 2018 18:51:30 +0100, Sjoerd Venema <<a href="mailto:srg.venema@gmail.com">srg.venema@gmail.com</a>> wrote:<br>
<br>
> Hi Baruch,<br>
><br>
> Still fails on the readline.h<br>
><br>
> Full output:<br>
</span>> <a href="https://pastebin.com/1eM3dZBiusr/include/readline" rel="noreferrer" target="_blank">https://pastebin.com/<wbr>1eM3dZBiusr/include/readline</a><br>
<span class="">><br>
> I'm starting to think that there's a problem with the installation of<br>
> readline perhaps?<br>
<br>
</span>No, a problem with the suggested patch, try the following:<br>
<br>
diff --git a/package/ecasound/0001-<wbr>makefile.am-unsafereadine.<wbr>patch b/package/ecasound/0001-<wbr>makefile.am-unsafereadine.<wbr>patch<br>
index a7eb1c3824..87a8eb078e 100644<br>
--- a/package/ecasound/0001-<wbr>makefile.am-unsafereadine.<wbr>patch<br>
+++ b/package/ecasound/0001-<wbr>makefile.am-unsafereadine.<wbr>patch<br>
@@ -2,7 +2,7 @@<br>
 +++ ecasound-2.9.1/ecasound/<wbr>Makefile.am        2018-02-27 12:49:04.641658026 +0100<br>
<span class=""> @@ -1,4 +1,4 @@<br>
 -INCLUDES = -I$(ECA_S_READLINE_INCLUDES) -I$(srcdir) -I$(top_srcdir) -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils<br>
</span>-+INCLUDES = -I=/readline -I$(srcdir) -I$(top_srcdir) -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils<br>
++INCLUDES = -I=/usr/include/readline -I$(srcdir) -I$(top_srcdir) -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils<br>
<span class=""><br>
  if ECA_AM_USE_NCURSES<br>
  termcap_library_ncurses = -lncurses<br>
</span>diff --git a/package/ecasound/Config.in b/package/ecasound/Config.in<br>
index b443127bf8..15338b13aa 100644<br>
--- a/package/ecasound/Config.in<br>
+++ b/package/ecasound/Config.in<br>
@@ -1,5 +1,6 @@<br>
 config BR2_PACKAGE_ECASOUND<br>
        bool "ecasound"<br>
+       select BR2_PACKAGE_READLINE<br>
        help<br>
          Ecasound is a software package designed for<br>
          multitrack audio processing.<br>
diff --git a/package/ecasound/<a href="http://ecasound.mk" rel="noreferrer" target="_blank">ecasound.mk</a> b/package/ecasound/<a href="http://ecasound.mk" rel="noreferrer" target="_blank">ecasound.mk</a><br>
index 657248e78b..f48ed4168c 100644<br>
--- a/package/ecasound/<a href="http://ecasound.mk" rel="noreferrer" target="_blank">ecasound.mk</a><br>
+++ b/package/ecasound/<a href="http://ecasound.mk" rel="noreferrer" target="_blank">ecasound.mk</a><br>
@@ -10,7 +10,7 @@ ECASOUND_SITE = <a href="http://ecasound.seul.org/download" rel="noreferrer" target="_blank">http://ecasound.seul.org/<wbr>download</a><br>
<span class=""> ECASOUND_INSTALL_STAGING = NO<br>
 ECASOUND_INSTALL_TARGET = YES<br>
 #ECASOUND_CONF_OPTS =<br>
</span>-ECASOUND_DEPENDENCIES = readline<br>
+ECASOUND_DEPENDENCIES = host-pkgconf readline<br>
 ECASOUND_AUTORECONF = YES<br>
<br>
 $(eval $(autotools-package))<br>
<br>
<br>
Regards,<br>
Peter<br>
<br>
><br>
> kind regards,<br>
> Sjoerd<br>
<span class="">><br>
> On 26 February 2018 at 06:42, Baruch Siach <baruch@usr/include/<a href="http://readlinetkos.co.il" rel="noreferrer" target="_blank">readlinetk<wbr>os.co.il</a>> wrote:<br>
><br>
> > Hi Sjoerd,<br>
> ><br>
> > On Sun, Feb 25, 2018 at 11:12:10AM +0100, Sjoerd Venema wrote:<br>
> > > Thanks for the patch, at this point, quick hacks are welcome ;-).<br>
> > > I'm new at Buildroot and (Cross-)Compilation. So, it's not always that<br>
> > > clear to me what errors mean exactly and how to deal with them.<br>
> > ><br>
> > > The patch, however, doesn't seem to work:<br>
> > ><br>
> > > On 25 February 2018 at 06:36, Baruch Siach <<a href="mailto:baruch@tkos.co.il">baruch@tkos.co.il</a>> wrote:<br>
> > ><br>
> > > > Hi Sjoerd Venema,<br>
> > > ><br>
> > > > On Sun, Feb 25, 2018 at 01:03:03AM +0100, Sjoerd Venema wrote:<br>
> > > > > Ok, but package BR2_PACKAGE_READLINE is actually selected. Still, I<br>
> > get<br>
> > > > the<br>
> > > > > error.<br>
> > > > > I'm now running a make clean all, to be sure, but I don't think it<br>
> > > > resolves<br>
> > > > > the issue. This is my .mk file:<br>
> > > > ><br>
> > > > > ##############################<wbr>##############################<br>
> > > > ####################<br>
> > > > > #<br>
> > > > > # ecasound<br>
> > > > > #<br>
> > > > > ##############################<wbr>##############################<br>
</span>> > > > ####################  usr/include/readline<br>
<span class="">> > > > ><br>
> > > > > ECASOUND_VERSION = 2.9.1<br>
> > > > > ECASOUND_SOURCE = ecasound-$(ECASOUND_VERSION).<wbr>tar.gz<br>
> > > > > ECASOUND_SITE = <a href="http://ecasound.seul.org/download" rel="noreferrer" target="_blank">http://ecasound.seul.org/<wbr>download</a><br>
> > > > > ECASOUND_INSTALL_STAGING = NO<br>
> > > > > ECASOUND_INSTALL_TARGET = YES<br>
> > > > > #ECASOUND_CONF_OPTS =<br>
> > > > > ECASOUND_DEPENDENCIES = readline<br>
> > > > ><br>
> > > > > $(eval $(autotools-package))<br>
> > > ><br>
> > > > Unfortunately the ecasound build systems is not cross compile<br>
> > friendly. It<br>
> > > > insists on looking for readline.h in the host include directory. The<br>
> > quick<br>
> > > > hack below might help. Make sure to add _AUTORECONF to regenerate the<br>
> > > > Makefile.<br>
> > ><br>
> > > Added.<br>
> > ><br>
> > > > This does not fix the cross compile issue completely, since ecasound<br>
> > still<br>
> > > > depends on readline headers being installed on your host, otherwise<br>
> > > > configure<br>
> > > > failes.<br>
> > > ><br>
> > > > diff --git a/ecasound/Makefile.am b/ecasound/Makefile.am<br>
> > > > index 9378d40ecb10..d2e58ab6e50c 100644<br>
</span>> > > > --- a/ecasound/Makefile.amusr/<wbr>include/readline<br>
<div><div class="h5">> > > > +++ b/ecasound/Makefile.am<br>
> > > > @@ -1,4 +1,4 @@<br>
> > > > -AM_CPPFLAGS = -I$(ECA_S_READLINE_INCLUDES) -I$(srcdir) -I$(top_srcdir)<br>
> > > > -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils<br>
> > > > +AM_CPPFLAGS = -I=/readline -I$(srcdir) -I$(top_srcdir)<br>
> > > > -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils<br>
> > > ><br>
> > > ><br>
> > > This patch gives me an error:<br>
> > ><br>
> > > >>> ecasound 2.9.1 Patching<br>
> > ><br>
> > > Applying 0001-makefile.am-<wbr>unsafereadline.patch using patch:<br>
> > > patching file ecasound/Makefile.am<br>
> > > Hunk #1 FAILED at 1.<br>
> > > 1 out of 1 hunk FAILED -- saving rejects to file ecasound/Makefile.am.rej<br>
> > > make[1]: ***<br>
> > > [/home/buildroot/buildroot-<wbr>2018.02-rc2/output/build/<br>
> > ecasound-2.9.1/.stamp_patched]<br>
> > > Error 1<br>
> > > make: *** [_all] Error 2<br>
> > ><br>
> > > Can't find that .rej file. But upon closer inspection, there is no<br>
> > > AM_CPPFLAGS in Makefile.am.<br>
> > > There is one in the Makefile:<br>
> > ><br>
> > > AM_CPPFLAGS =  -D_REENTRANT -D_XOPEN_SOURCE=600<br>
> > ><br>
> > > I've tried appending the line from the patch, but no luck on that.<br>
> ><br>
> > That's because I generated the patch against the master branch. Here it is<br>
> > against v2.9.1:<br>
> ><br>
> > diff --git a/ecasound/Makefile.am b/ecasound/Makefile.am<br>
> > index 7346a51d5b94..1223f346aff7 100644<br>
> > --- a/ecasound/Makefile.am<br>
> > +++ b/ecasound/Makefile.am<br>
> > @@ -1,4 +1,4 @@<br>
> > -INCLUDES = -I$(ECA_S_READLINE_INCLUDES) -I$(srcdir) -I$(top_srcdir)<br>
> > -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils<br>
> > +INCLUDES = -I=/readline -I$(srcdir) -I$(top_srcdir)<br>
> > -I$(top_srcdir)/libecasound -I$(top_srcdir)/kvutils<br>
> ><br>
> >  if ECA_AM_USE_NCURSES<br>
> >  termcap_library_ncurses = -lncurses<br>
> ><br>
> > > >  if ECA_AM_USE_NCURSES<br>
> > > >  termcap_library_ncurses = -lncurses<br>
> > ><br>
> > > Should this be part of the patch too?<br>
> ><br>
> > Yes. This is the patch hunk context. See<br>
> > <a href="https://en.wikipedia.org/wiki/Diff_utility#Unified_format" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/<wbr>Diff_utility#Unified_format</a>.<br>
> ><br>
><br>
> Thanks, that clarifies that.<br>
><br>
><br>
><br>
> ><br>
</div></div>> > > > > On 24 February 2018 at 22:25, Baruch Siach <baruchusr/include/<a href="mailto:readline@tkos.co.il">readline@<wbr>tkos.co.il</a>><br>
<div class="HOEnZb"><div class="h5">> > wrote:<br>
> > > > > > On Sat, Feb 24, 2018 at 10:12:19PM +0100, Sjoerd Venema wrote:<br>
> > > > > > > I'm getting an "unsafe header/library path used in<br>
> > > > > > cross-compilation"-error<br>
> > > > > > > while building ecasound (<a href="https://ecasound.seul.org/" rel="noreferrer" target="_blank">https://ecasound.seul.org/</a><br>
> > > > ecasound/download.php<br>
> > > > > > ).<br>
> > > > > > > From what I've read so far is that it's because the makefile<br>
> > > > references<br>
> > > > > > the<br>
> > > > > > > /usr/-directory. What I can't figure out is how to change the<br>
> > > > makefile to<br>
> > > > > > > not do that. Turning on/off the "paranoid"-function in menuconfig<br>
> > > > didn't<br>
> > > > > > > make a difference.<br>
> > > > > ><br>
> > > > > > There is no ecasound package in current Buildroot. Have you added<br>
> > this<br>
> > > > > > package<br>
> > > > > > locally?<br>
> > > > > ><br>
> > > > > > > [buildroot@br buildroot]$ make ecasound<br>
> > > > > > > >>> ecasound 2.9.1 Building<br>
> > > > > > > PATH="/home/buildroot/<wbr>buildroot-2018.02-rc2/output/<br>
> > > > > > host/bin:/home/buildroot/<wbr>buildroot-2018.02-rc2/output/<br>
> > > > > > host/sbin:/usr/local/bin:/usr/<wbr>bin:/usr/local/sbin:/usr/sbin:<br>
> > > > > > /home/buildroot/.local/bin:/<wbr>home/buildroot/bin"<br>
> > > > > > > /usr/bin/make -j5  -C<br>
> > > > > > > /home/buildroot/buildroot-<wbr>2018.02-rc2/output/build/<br>
> > ecasound-2.9.1/<br>
> > > > > > > /usr/bin/make  all-recursive<br>
> > > > > > > Making all in kvutils<br>
> > > > > > > make[4]: Nothing to be done for `all'.<br>
> > > > > > > Making all in libecasound<br>
> > > > > > > Making all in plugins<br>
> > > > > > > make[5]: Nothing to be done for `all'.<br>
> > > > > > > make[5]: Nothing to be done for `all-am'.<br>
> > > > > > > Making all in ecasound<br>
> > > > > > > /home/buildroot/buildroot-<wbr>2018.02-rc2/output/host/bin/<br>
> > > > > > arm-buildroot-linux-<wbr>uclibcgnueabihf-g++<br>
> > > > > > > -DHAVE_CONFIG_H -I. -I. -I.. *-I/usr/include/readline* -I. -I..<br>
> > > > > > > -I../libecasound -I../kvutils -D_REENTRANT -D_XOPEN_SOURCE=600<br>
> > > > > > > -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64<br>
> > > > > > > -ffast-math -fstrict-aliasing -DNDEBUG -DENABLE_DBC<br>
> > > > -D_LARGEFILE_SOURCE<br>
> > > > > > > -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os  -c -o<br>
> > eca-curses.o<br>
> > > > > > > eca-curses.cpp<br>
> > > > > > > arm-buildroot-linux-<wbr>uclibcgnueabihf-g++: WARNING: unsafe<br>
> > > > header/library<br>
> > > > > > > path used in cross-compilation: '*-I/usr/include/readline*'<br>
> > > > > ><br>
> > > > > > This is just a warning, it doesn't break your build. But you should<br>
> > > > fix it.<br>
> > > > > ><br>
> > > > > > The BR2_COMPILER_PARANOID_UNSAFE_<wbr>PATH option makes this a hard<br>
> > error.<br>
> > > > But<br>
> > > > > > the<br>
> > > > > > warning is shown anyway.<br>
> > > > > ><br>
> > > > > > > eca-curses.cpp:46:22: fatal error: readline.h: No such file or<br>
> > > > directory<br>
> > > > > > >  #include <readline.h><br>
> > > > > > >                       ^<br>
> > > > > ><br>
> > > > > > This is your problem. Your package need readline. You need to<br>
> > select<br>
> > > > > > BR2_PACKAGE_READLINE, as well as add readline to your package<br>
> > > > dependencies.<br>
> > > > > ><br>
> > > > > > > compilation terminated.<br>
> > > > > > > make[4]: *** [eca-curses.o] Error 1<br>
> > > > > > > make[3]: *** [all-recursive] Error 1<br>
> > > > > > > make[2]: *** [all] Error 2<br>
> > > > > > > make[1]: ***<br>
> > > > > > > [/home/buildroot/buildroot-<wbr>2018.02-rc2/output/build/<br>
> > > > > > ecasound-2.9.1/.stamp_built]<br>
> > > > > > > Error 2<br>
> > > > > > > make: *** [_all] Error 2<br>
> ><br>
> > --<br>
> >      <a href="http://baruch.siach.name/blog/" rel="noreferrer" target="_blank">http://baruch.siach.name/blog/</a>                  ~. .~   Tk Open<br>
> > Systems<br>
> > =}----------------------------<wbr>--------------------ooO--U--<br>
> > Ooo------------{=<br>
> >    - <a href="mailto:baruch@tkos.co.il">baruch@tkos.co.il</a> - tel: <a href="tel:%2B972.2.679.5364" value="+97226795364">+972.2.679.5364</a>, <a href="http://www.tkos.co.il" rel="noreferrer" target="_blank">http://www.tkos.co.il</a> -<br>
> ><br>
<br>
</div></div></blockquote></div><br></div>