Using dependencies: aclocal-1.14: command not found
Running xgo with the --deps flag I get
/deps-build/proj4/missing: line 81: aclocal-1.14: command not found
WARNING: 'aclocal-1.14' is missing on your system.
You should only need it if you modified 'acinclude.m4' or
'configure.ac' or m4 files included by 'configure.ac'.
The 'aclocal' program is part of the GNU Automake package:
<http://www.gnu.org/software/automake>
It also requires GNU Autoconf, GNU m4 and Perl in order to run:
<http://www.gnu.org/software/autoconf>
<http://www.gnu.org/software/m4/>
<http://www.perl.org/>
Makefile:384: recipe for target 'aclocal.m4' failed
make: *** [aclocal.m4] Error 127
Also, when there is no configure script, but there is a autogen.sh, then that could be used to generate configure.
Do you have some public repository + build command to reproduce this and allow testing? I'd gladly add new features and/or polishes, just need a way to reliably test it.
I downloaded a library source from https://github.com/OSGeo/proj.4/archive/master.zip
I unpacked.
Because it doesn't have configure I ran autogen.sh
I repacked as proj4.tar.gz and put it on my local webserver.
In my current directory I have only one file, projtest.go, which I have attached as projtest.go.txt
Now I run this command, on Linux, Debian 8.4:
xgo --deps=http://localhost/tmp/proj4.tar.gz --targets=windows/amd64 -x -v .
I get:
Checking docker installation...
Client:
Version: 1.10.3
API version: 1.22
Go version: go1.5.3
Git commit: 20f81dd
Built: Thu Mar 10 15:38:58 2016
OS/Arch: linux/amd64
Server:
Version: 1.10.3
API version: 1.22
Go version: go1.5.3
Git commit: 20f81dd
Built: Thu Mar 10 15:38:58 2016
OS/Arch: linux/amd64
Checking for required docker image karalabe/xgo-latest... found.
Downloading new dependency: http://localhost/tmp/proj4.tar.gz...
New dependency cached: /home/peter/.xgo-cache/proj4.tar.gz.
Cross compiling ....
Building locally ....
Compiling for windows-4.0/amd64...
Configuring dependency proj4 for x86_64-w64-mingw32...
configure: WARNING: using cross tools not prefixed with host triplet
Building dependency proj4 for x86_64-w64-mingw32...
/deps-build/proj4/missing: line 81: aclocal-1.14: command not found
WARNING: 'aclocal-1.14' is missing on your system.
You should only need it if you modified 'acinclude.m4' or
'configure.ac' or m4 files included by 'configure.ac'.
The 'aclocal' program is part of the GNU Automake package:
<http://www.gnu.org/software/automake>
It also requires GNU Autoconf, GNU m4 and Perl in order to run:
<http://www.gnu.org/software/autoconf>
<http://www.gnu.org/software/m4/>
<http://www.perl.org/>
make: *** [aclocal.m4] Error 127
Makefile:384: recipe for target 'aclocal.m4' failed
2016/04/16 13:46:30 Failed to cross compile package: exit status 1.
Possible improvements:
- Support for zip, so you can use dependencies on github directly. But why not use a local tar file as a dependency instead?
- Downloads from github, if that where possible, should be renamed, because all downloads are called
master.zip. - If there is no
configure, but there is aautogen.sh, run that to createconfigure - If there is a
configure, but an incompatible version ofautomakewas used, runautogen.sh, if it exists, but what to do if there is noautogen.sh?
A problem with downloads from github is that filedates are not preserved, so make may want to recreate things that shouldn't be recreated, like some make scripts.
Compile automake from source and it will work
VERSION=1.15
wget ftp://ftp.gnu.org/gnu/automake/automake-${VERSION}.tar.gz &> /dev/null
if [ -f "automake-${VERSION}.tar.gz" ]; then
tar -xzf automake-${VERSION}.tar.gz
cd automake-${VERSION}/
./configure
make && make install
echo -e "\e[1;39m[ \e[1;32mOK\e[39m ] automake-${VERSION} installed\e[0;39m"
else
echo -e "\e[1;39m[ \e[31mError\e[39m ] cannot fetch file from ftp://ftp.gnu.org/gnu/automake/ \e[0;39m"
exit 1
fi
I run into the same issue.
@gp187 should that be added to the build dependencies script?
I still have this problem. Example:
$ xgo --deps=https://github.com/zeromq/libzmq/releases/download/v4.3.2/zeromq-4.3.2.tar.gz --targets=windows/amd64 github.com/pebbe/zmq4
Checking docker installation...
Client:
Version: 18.09.1
(peter) ~/tmp xgo --deps=https://github.com/zeromq/libzmq/releases/download/v4.3.2/zeromq-4.3.2.tar.gz --targets=windows/amd64 github.com/pebbe/zmq4
Checking docker installation...
Client:
Version: 18.09.1
API version: 1.39
Go version: go1.11.6
Git commit: 4c52b90
Built: Tue, 03 Sep 2019 19:59:35 +0200
OS/Arch: linux/amd64
Experimental: false
Server:
Engine:
Version: 18.09.1
API version: 1.39 (minimum version 1.12)
Go version: go1.11.6
Git commit: 4c52b90
Built: Tue Sep 3 17:59:35 2019
OS/Arch: linux/amd64
Experimental: false
Checking for required docker image karalabe/xgo-latest... found.
Downloading new dependency: https://github.com/zeromq/libzmq/releases/download/v4.3.2/zeromq-4.3.2.tar.gz...
New dependency cached: /home/peter/.xgo-cache/zeromq-4.3.2.tar.gz.
Cross compiling github.com/pebbe/zmq4...
Fetching main repository github.com/pebbe/zmq4...
github.com/pebbe/zmq4 (download)
Compiling for windows-4.0/amd64...
Configuring dependency zeromq-4.3.2 for x86_64-w64-mingw32...
configure: WARNING: using cross tools not prefixed with host triplet
configure: WARNING: Cannot find libunwind
Building dependency zeromq-4.3.2 for x86_64-w64-mingw32...
/deps-build/zeromq-4.3.2/config/missing: line 81: aclocal-1.14: command not found
WARNING: 'aclocal-1.14' is missing on your system.
You should only need it if you modified 'acinclude.m4' or
'configure.ac' or m4 files included by 'configure.ac'.
The 'aclocal' program is part of the GNU Automake package:
<http://www.gnu.org/software/automake>
It also requires GNU Autoconf, GNU m4 and Perl in order to run:
<http://www.gnu.org/software/autoconf>
<http://www.gnu.org/software/m4/>
<http://www.perl.org/>
Makefile:2681: recipe for target 'aclocal.m4' failed
make: *** [aclocal.m4] Error 127
2019/10/14 12:34:04 Failed to cross compile package: exit status 1.