Re: Automake for RISC-V

2021-11-22 Thread Billa Surendra
On Sun, Nov 21, 2021 at 12:09 PM Daniel Herring 
wrote:

> Hi Billa,
>
> It sounds like you are trying to build from a source repo instead of a
> release tarball.
>
> Building with automake or autoconf is a multi-step process.  Run automake
> on a ".am" file to generate a makefile.  Run make on the makefile to build
> the executable.
>
> Automake has a special "make dist" rule.  The dist rule uses automake on a
> host computer to produce a tarball.  This dist tarball requires make and a
> compiler, but it does not require automake.
>

With your suggestion, I have successfully installed automake-1.16.2 in
riscv target image.
finally, I have installed autoconf-2.69 and automake-1.16.2 in the target
image. Next, I am trying to install texinfo-6.7 on the target image but
it's giving me error

Error message:

checking Perl configuration value archlibexp...
/usr/lib/perl5/5.34.0/riscv64-linux
checking Perl configuration value privlibexp... /usr/lib/perl5/5.34.0
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating gnulib/lib/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing po-directories commands
config.status: executing libtool commands
checking whether we can build Perl extension (XS) modules...
 cd . && /usr/bin/bash /home/texinfo-6.7/tp/Texinfo/XS/missing
automake-1.16 --foreign

















*configure.ac:14 : error: version mismatch.  This
is Automake 1.16.2,configure.ac:14 : but the
definition used by this AM_INIT_AUTOMAKEconfigure.ac:14
: comes from Automake 1.16.1.  You should
recreateconfigure.ac:14 : aclocal.m4 with aclocal
and run automake again.WARNING: 'automake-1.16' is probably too old.
 You should only need it if you modified 'Makefile.am' or
 'configure.ac ' or m4 files included by 'configure.ac
'. The 'automake' program is part of the GNU
Automake package: > It also requires GNU
Autoconf, GNU m4 and Perl in order to run:
 >
 >
   >make: *** [Makefile:979:
Makefile.in] Error 1no fallback module for TestXSunset the TEXINFO_XS and
TEXINFO_XS_PARSER environment variables to use the pure Perl modulesBEGIN
failed--compilation aborted at ../../Texinfo/XS/TestXS.pm line
31.Compilation failed in require at -e line 1.*
checking whether we can build Perl extension (XS) modules... no
checking for prove... prove
checking parser tests requirements... no
checking Perl Texinfo API texinfo documentation build requirements... yes

I have tried installing automake-1.16.1 version with your approach but
could not able to install it on target. Please suggest to me what I can do.

Thanks
Billa



> -- Daniel
>
>
> On Sun, 21 Nov 2021, Billa Surendra wrote:
>
> > On Sun, 21 Nov, 2021, 2:28 am Nick Bowler,  wrote:
> >
> >> On 20/11/2021, Billa Surendra  wrote:
> >>> I have RISC-V native compiler on target image, but when I am compiling
> >>> automake on target image it needs automake on target. This is the main
> >>> problem.
> >>
> >> Automake should not be required to install automake if you are using
> >> a released version and have not modified the build system.
> >>
> >
> > Could you please explain more, What is the released version ? . Modified
> > build system means ?
> > I have created my RISC-V Linux target system on x86, now I am compiling
> > automake on target system only with native compiler.
> >
> >>
> >>> In the same way I am trying to install texinfo on target image it
> >>> also need automake on target.
> >>
> >> Likewise, texinfo should also not require automake to install.
> >>
> >> Cheers,
> >>   Nick
> >>
> >
> >
>


Re: Automake for RISC-V

2021-11-21 Thread Bob Friesenhahn

On Sun, 21 Nov 2021, Billa Surendra wrote:


With these steps I am not able to install. Error message is "aclocal-1-15
not found".


This means that Autools generated files (a collection of packages, one 
of which is Automake) are being regenerated for some reason.  In this 
case, it is having a problem because either Autoconf is not installed, 
or the installed version is not the same as used to produce existing 
cached files in the source tree.


If using a release tarball as the source, then this will only happen 
if the build rules specifically request it, or if the underlying 
filesystem does not replicate file timestamps correctly.


When dealing with other existing build systems, it is not uncommon to 
find added build rules to re-autotool the source tree in order to pick 
up


Bob



On Sun, 21 Nov, 2021, 5:38 pm Peter Johansson,  wrote:



On 21/11/21 16:32, Billa Surendra wrote:

Then how-to install automake in target image.



Download the tarball from https://ftp.gnu.org/gnu/automake/

unpack and follow the instructions in INSTALL; typically somethings like

./configure

make

sudo make install


Peter






--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,http://www.GraphicsMagick.org/
Public Key, http://www.simplesystems.org/users/bfriesen/public-key.txt



Re: Automake for RISC-V

2021-11-21 Thread Billa Surendra
With these steps I am not able to install. Error message is "aclocal-1-15
not found".

On Sun, 21 Nov, 2021, 5:38 pm Peter Johansson,  wrote:

>
> On 21/11/21 16:32, Billa Surendra wrote:
> > Then how-to install automake in target image.
>
>
> Download the tarball from https://ftp.gnu.org/gnu/automake/
>
> unpack and follow the instructions in INSTALL; typically somethings like
>
> ./configure
>
> make
>
> sudo make install
>
>
> Peter
>
>


Re: Automake for RISC-V

2021-11-21 Thread Peter Johansson



On 21/11/21 16:32, Billa Surendra wrote:

Then how-to install automake in target image.



Download the tarball from https://ftp.gnu.org/gnu/automake/

unpack and follow the instructions in INSTALL; typically somethings like

./configure

make

sudo make install


Peter




Re: Automake for RISC-V

2021-11-20 Thread Daniel Herring

Hi Billa,

It sounds like you are trying to build from a source repo instead of a 
release tarball.


Building with automake or autoconf is a multi-step process.  Run automake 
on a ".am" file to generate a makefile.  Run make on the makefile to build 
the executable.


Automake has a special "make dist" rule.  The dist rule uses automake on a 
host computer to produce a tarball.  This dist tarball requires make and a 
compiler, but it does not require automake.


-- Daniel


On Sun, 21 Nov 2021, Billa Surendra wrote:


On Sun, 21 Nov, 2021, 2:28 am Nick Bowler,  wrote:


On 20/11/2021, Billa Surendra  wrote:

I have RISC-V native compiler on target image, but when I am compiling
automake on target image it needs automake on target. This is the main
problem.


Automake should not be required to install automake if you are using
a released version and have not modified the build system.



Could you please explain more, What is the released version ? . Modified
build system means ?
I have created my RISC-V Linux target system on x86, now I am compiling
automake on target system only with native compiler.




In the same way I am trying to install texinfo on target image it
also need automake on target.


Likewise, texinfo should also not require automake to install.

Cheers,
  Nick








Re: Automake for RISC-V

2021-11-20 Thread Billa Surendra
Then how-to install automake in target image.

On Sun, 21 Nov, 2021, 11:57 am Jacob Bachmeyer,  wrote:

> Billa Surendra wrote:
> > On Sun, 21 Nov, 2021, 2:28 am Nick Bowler,  wrote:
> >
> >> On 20/11/2021, Billa Surendra  wrote:
> >>
> >>> I have RISC-V native compiler on target image, but when I am compiling
> >>> automake on target image it needs automake on target. This is the main
> >>> problem.
> >>>
> >> Automake should not be required to install automake if you are using
> >> a released version and have not modified the build system
> > Could you please explain more, What is the released version ? . Modified
> > build system means ?
> >
>
> Automake should only be needed if you have changed a "Makefile.am" file
> somewhere.
>
> Are you using some kind of packaging system that likes to regenerate
> build files as a matter of course?  The normal "/path/to/src/configure
> && make && make install" procedure should not require Automake to be
> installed.
>
>
> -- Jacob
>


Re: Automake for RISC-V

2021-11-20 Thread Jacob Bachmeyer

Billa Surendra wrote:

On Sun, 21 Nov, 2021, 2:28 am Nick Bowler,  wrote:
  

On 20/11/2021, Billa Surendra  wrote:


I have RISC-V native compiler on target image, but when I am compiling
automake on target image it needs automake on target. This is the main
problem.
  

Automake should not be required to install automake if you are using
a released version and have not modified the build system

Could you please explain more, What is the released version ? . Modified
build system means ?
  


Automake should only be needed if you have changed a "Makefile.am" file 
somewhere.


Are you using some kind of packaging system that likes to regenerate 
build files as a matter of course?  The normal "/path/to/src/configure 
&& make && make install" procedure should not require Automake to be 
installed.



-- Jacob



Re: Automake for RISC-V

2021-11-20 Thread Billa Surendra
On Sun, 21 Nov, 2021, 2:28 am Nick Bowler,  wrote:

> On 20/11/2021, Billa Surendra  wrote:
> > I have RISC-V native compiler on target image, but when I am compiling
> > automake on target image it needs automake on target. This is the main
> > problem.
>
> Automake should not be required to install automake if you are using
> a released version and have not modified the build system.
>

Could you please explain more, What is the released version ? . Modified
build system means ?
I have created my RISC-V Linux target system on x86, now I am compiling
automake on target system only with native compiler.

>
> > In the same way I am trying to install texinfo on target image it
> > also need automake on target.
>
> Likewise, texinfo should also not require automake to install.
>
> Cheers,
>   Nick
>


Re: Automake for RISC-V

2021-11-20 Thread Nick Bowler
On 20/11/2021, Billa Surendra  wrote:
> I have RISC-V native compiler on target image, but when I am compiling
> automake on target image it needs automake on target. This is the main
> problem.

Automake should not be required to install automake if you are using
a released version and have not modified the build system.

> In the same way I am trying to install texinfo on target image it
> also need automake on target.

Likewise, texinfo should also not require automake to install.

Cheers,
  Nick



Re: Automake for RISC-V

2021-11-19 Thread Billa Surendra
I have RISC-V native compiler on target image, but when I am compiling
automake on target image it needs automake on target. This is the main
problem. In the same way I am trying to install texinfo on target image it
also need automake on target. Suggest me how I can break this circular
dependency.

Thanks

On Fri, 19 Nov, 2021, 7:41 pm Bob Friesenhahn, 
wrote:

> On Thu, 18 Nov 2021, Billa Surendra wrote:
>
> > Dear All,
> >
> > I have cross-compiled Automake-1.16.2 package with RISC-V cross compiler,
> > but when I am executing binaries on RISC-V target OS image its gives
> errors
> > like "not found".
>
> Is there a reason why you need to "cross compile" Automake for the
> target rather than add the few pre-requisites to the target and native
> "compile" Automake there.  The pre-requisites needed to actually
> execute the "compiled" Automake on the target are similar to what is
> needed to cross-compile it so I am not seeing a win by trying to cross
> compile a script-based build tool.
>
> If you had a working cross-compiler for RISC-V then you could compile
> the software for the target (e.g. using Automake) without needing to
> add build tools to it.
>
> Bob
> --
> Bob Friesenhahn
> bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
> GraphicsMagick Maintainer,http://www.GraphicsMagick.org/
> Public Key, http://www.simplesystems.org/users/bfriesen/public-key.txt
>


Re: Automake for RISC-V

2021-11-19 Thread Bob Friesenhahn

On Thu, 18 Nov 2021, Billa Surendra wrote:


Dear All,

I have cross-compiled Automake-1.16.2 package with RISC-V cross compiler,
but when I am executing binaries on RISC-V target OS image its gives errors
like "not found".


Is there a reason why you need to "cross compile" Automake for the 
target rather than add the few pre-requisites to the target and native 
"compile" Automake there.  The pre-requisites needed to actually 
execute the "compiled" Automake on the target are similar to what is 
needed to cross-compile it so I am not seeing a win by trying to cross 
compile a script-based build tool.


If you had a working cross-compiler for RISC-V then you could compile 
the software for the target (e.g. using Automake) without needing to 
add build tools to it.


Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,http://www.GraphicsMagick.org/
Public Key, http://www.simplesystems.org/users/bfriesen/public-key.txt



Re: Automake for RISC-V

2021-11-18 Thread Jacob Bachmeyer

Billa Surendra wrote:

Thanks for your reply. I have installed perl on target system but target
image and build system perl version were different. And second, thing I
have noticed  that in aclocal script very first line is #! /bin/perl
  


A simple workaround is to find perl on the target system image (probably 
/usr/bin/perl, but it could have been installed somewhere else) and make 
a symlink at /bin/perl to the real interpreter.  It is possible that 
your build system has /bin as a symlink to /usr/bin, as a certain 
widely-loathed developer has been rather forcefully advocating the past 
few years...




-- Jacob



Re: Automake for RISC-V

2021-11-18 Thread Billa Surendra
Thanks for your reply. I have installed perl on target system but target
image and build system perl version were different. And second, thing I
have noticed  that in aclocal script very first line is #! /bin/perl


On Thu, 18 Nov, 2021, 11:48 pm Nick Bowler,  wrote:

> Hi Billa,
>
> On 18/11/2021, Billa Surendra  wrote:
> > Dear All,
> >
> > I have cross-compiled Automake-1.16.2 package with RISC-V cross compiler,
> > but when I am executing binaries on RISC-V target OS image its gives
> errors
> > like "not found".
>
> Automake is written in Perl so it does not really get "compiled" in the
> usual sense.
>
> [...]
> > $   ./configure  --prefix=/usr --host=riscv64-unknown-linux-gnu
> > $ make -j8
> > $  make DESTDIR=$risc-v_rootfs/ install
> [...]
> > *Error message (on risc-v rootfs):*
> >
> > ./aclocal
> > -/bin/sh: ./aclocal: not found
> >
> > ./aclocal-1.16
> > -/bin/sh: ./aclocal-1.16: not found
>
> My first guess is that perl is not installed on the host (risc-v)
> system.  Specifically, these files begin with #!/usr/bin/perl (or
> similar - depends on configure tests) and that program is not
> available when you run them.
>
> However, I took a quick look at Automake's configure script and it
> appears it detects perl only on the build system and then installs
> that filename into the installed scripts.  So I think it will not
> work out of the box unless a supported perl version is installed
> at the same location on both the build and host machines.
>
> Cheers,
>   Nick
>


Re: Automake for RISC-V

2021-11-18 Thread Nick Bowler
Hi Billa,

On 18/11/2021, Billa Surendra  wrote:
> Dear All,
>
> I have cross-compiled Automake-1.16.2 package with RISC-V cross compiler,
> but when I am executing binaries on RISC-V target OS image its gives errors
> like "not found".

Automake is written in Perl so it does not really get "compiled" in the
usual sense.

[...]
> $   ./configure  --prefix=/usr --host=riscv64-unknown-linux-gnu
> $ make -j8
> $  make DESTDIR=$risc-v_rootfs/ install
[...]
> *Error message (on risc-v rootfs):*
>
> ./aclocal
> -/bin/sh: ./aclocal: not found
>
> ./aclocal-1.16
> -/bin/sh: ./aclocal-1.16: not found

My first guess is that perl is not installed on the host (risc-v)
system.  Specifically, these files begin with #!/usr/bin/perl (or
similar - depends on configure tests) and that program is not
available when you run them.

However, I took a quick look at Automake's configure script and it
appears it detects perl only on the build system and then installs
that filename into the installed scripts.  So I think it will not
work out of the box unless a supported perl version is installed
at the same location on both the build and host machines.

Cheers,
  Nick