Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem with gettext (when basing on tutorial) #1892

Closed
AgainPsychoX opened this issue Sep 10, 2017 · 10 comments · Fixed by #1949
Closed

Problem with gettext (when basing on tutorial) #1892

AgainPsychoX opened this issue Sep 10, 2017 · 10 comments · Fixed by #1949

Comments

@AgainPsychoX
Copy link
Contributor

I follow the tutorial from http://mxe.cc/#tutorial and get stuck on simple make... It looks like gettext package fails to make itself.

Logs:
https://gist.github.com/PsychoXIVI/53c08dbf93d5f3fbc3652dce8503f69e

tmp-gettext-x86_64-pc-linux-gnu folder of mxe after trying make again:
https://files.fm/u/57vfk4m2

In settings.mk file I uncommented the line with MXE_TARGETS (no. 15).

I am using Ubuntu 14.04, with gettext 0.18.3 (gnu runtime) . Tried apt update/upgrade - no better results.

By the way: I am not sure this should use x86_64-pc-linux-gnu instead of, as example, i686-w64-mingw32.static (from settings.mk file).

@AgainPsychoX
Copy link
Contributor Author

AgainPsychoX commented Sep 11, 2017

I tried to install gettext-0.19.8.1 (lastest, which seems to be downloaded every run try). There was some errors:

  1. aclocal 1.15 missing, but I solve it by running autoreconf -f -i before ./configure the gettext package.
  2. after long install process, suddenly... makeinfo is missing on your system. Well... Installed texinfo package and make clean && autoreconf -f -i && ./configure && make
  3. Another error after some time:
// ...
/bin/bash ../libtool  --tag=CC   --mode=link gcc -std=gnu99  -g -O2   -o msgcmp msgcmp-msgcmp.o msgcmp-msgl-fsearch.o libgettextsrc.la  -lm
libtool: link: gcc -std=gnu99 -g -O2 -o .libs/msgcmp msgcmp-msgcmp.o msgcmp-msgl-fsearch.o  ./.libs/libgettextsrc.so -lm -fopenmp
/usr/bin/ld: msgcmp-msgl-fsearch.o: undefined reference to symbol 'xalloc_die'
//mnt/v/gettext/gettext-0.19.8.1/gettext-tools/gnulib-lib/.libs/libgettextlib-0.19.8.1.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[5]: *** [msgcmp] Błąd 1 
//...

Now I have no idea how to solve this problem. It looks like it is not problem strictly in the MXE, but newest gettext. ;(

Is there a way to use older package of that?

@tonytheodore
Copy link
Member

Can you post the full gettext log (/mnt/e/Libraries/MXE/mxe/log/gettext_x86_64-pc-linux-gnu)?

@AgainPsychoX
Copy link
Contributor Author

AgainPsychoX commented Oct 29, 2017

I recently deleted it from my hard drive, but I very like idea of this whole project, so I tried that again.

Pre-install, Requirements were met.:
https://gist.github.com/PsychoXIVI/2c115275e7821f85395f68f01d90365d

After clonning:
https://gist.github.com/PsychoXIVI/8be466660e5d5d38e3eadbad24ecacf5

After simple make (like in the tutorial):
https://gist.github.com/PsychoXIVI/2f5e1a7942357b146cfaade02547b6eb

Log folder archive:
https://mega.nz/#!hqAnSQCS!_zmmq_c-jaFEC4160WzFFL-KfcYMTxKw5RMA7wDm9r8

Only gettext log:
https://gist.github.com/PsychoXIVI/8d42cdb9d735db4b0099e5a02ca073fd

I will try the next day download and compile exactly aclocal-1.15 from official GNU ftp server..

tonytheodore added a commit to tonytheodore/mxe that referenced this issue Oct 29, 2017
  - gettext requires recent autotools
      - add for Ubuntu 14.04 (trusty) - fixes mxe#1892
      - add deps for Debian Jessie and Wheezy
  - libtool is built for prior Debian/Ubuntu, remove from docs
  - tidy up darwin overrides
@tonytheodore
Copy link
Member

I will try the next day download and compile exactly aclocal-1.15 from official GNU ftp server

gettext does seem to require a later version - #1949 should fix it. We already build autotools for previous Debian releases without issue so adding trusty should be seamless.

@tonytheodore
Copy link
Member

Looking at it some more, it's actually a bug in gettext, running configure shouldn't trigger any autotools regeneration - the whole point of autotools is that you don't need them installed...

#1949 will work in either case.

tonytheodore added a commit to tonytheodore/mxe that referenced this issue Oct 30, 2017
  - gettext requires recent autotools
      - add for Ubuntu 14.04 (trusty) - fixes mxe#1892
      - add deps for Debian Jessie and Wheezy
  - libtool is built for prior Debian/Ubuntu, remove from docs
  - tidy up darwin overrides
@AgainPsychoX
Copy link
Contributor Author

AgainPsychoX commented Nov 1, 2017

Now m4 seems to be failing, because of... it now need aclocal-1.14

Trying to make it up:
https://gist.github.com/PsychoXIVI/87b615bfae305dc8c7810c85e6e7a20f

Log from log/20171101145929/m4_x86_64-pc-linux-gnu:
https://gist.github.com/PsychoXIVI/b895610abeecf721acaa6fc95674f4e5

BTW: It's Ubuntu 16.04 (xenial) (Bash on Ubuntu on Windows)

@tonytheodore tonytheodore reopened this Nov 1, 2017
@tonytheodore
Copy link
Member

I’ll try to set up Ubuntu on Windows - I need to see the time stamps and anything else that triggers these regeneration steps.

@tonytheodore
Copy link
Member

I think it's the same as #1518 (comment), using the "windows" file system under /mnt is going to have problems. If you compare extracted tarballs from the "linux" filesystem (I don't know the terminology) in ~/:

tonyt@TT-W10:~/mxe$ ll m4-1.4.17/
total 2584
drwxrwxr-x 2 tonyt tonyt       0 Sep 22  2013 ./
drwxrwxrwx 2 tonyt tonyt       0 Nov 12 20:11 ../
-rw-rw-r-- 1 tonyt tonyt     863 Sep 22  2013 acinclude.m4
-rw-rw-r-- 1 tonyt tonyt   47617 Sep 22  2013 aclocal.m4
-rw-rw-r-- 1 tonyt tonyt    2448 Sep 22  2013 AUTHORS
-rw-rw-r-- 1 tonyt tonyt    2584 Sep 22  2013 BACKLOG
-rwxrwxr-x 1 tonyt tonyt  142895 Sep 22  2013 bootstrap*
drwxr-xr-x 2 tonyt tonyt       0 Nov 12 20:11 build-aux/
-rw-rw-r-- 1 tonyt tonyt   15283 Sep 22  2013 c-boxes.el
-rw-rw-r-- 1 tonyt tonyt    1889 Sep 22  2013 cfg.mk
-rw-rw-r-- 1 tonyt tonyt  194892 Sep 22  2013 ChangeLog
drwxr-xr-x 2 tonyt tonyt       0 Nov 12 20:11 checks/
-rwxrwxr-x 1 tonyt tonyt 1089430 Sep 22  2013 configure*
[...]

to /mnt

tonyt@TT-W10:/mnt/c/Users/tonyt/mxe$ ll m4-1.4.17/
total 1996
drwxrwxrwx 2 root root       0 Sep 22  2013 ./
drwxrwxrwx 2 root root       0 Nov 12 20:42 ../
-rwxrwxrwx 1 root root     863 Nov 12 20:42 acinclude.m4*
-rwxrwxrwx 1 root root   47617 Nov 12 20:42 aclocal.m4*
-rwxrwxrwx 1 root root    2448 Nov 12 20:42 AUTHORS*
-rwxrwxrwx 1 root root    2584 Nov 12 20:42 BACKLOG*
-rwxrwxrwx 1 root root  142895 Nov 12 20:42 bootstrap*
drwxrwxrwx 2 root root       0 Nov 12 20:42 build-aux/
-rwxrwxrwx 1 root root   15283 Nov 12 20:42 c-boxes.el*
-rwxrwxrwx 1 root root    1889 Nov 12 20:42 cfg.mk*
-rwxrwxrwx 1 root root  194892 Nov 12 20:42 ChangeLog*
drwxrwxrwx 2 root root       0 Nov 12 20:42 checks/
-rwxrwxrwx 1 root root 1089430 Nov 12 20:42 configure*
[...]

You can see the timestamps are all extract time, permissions are all root and (possibly most bizarre) the totals are different.

Symlinks do appear to work, though I've only tested manually creating them - not if they actually work the way MXE uses them.

If you really want to keep the source under /mnt you could try:

make ... MXE_TMP=~/mxe-tmp

that will at least stop the autotools regeneration steps but it's beyond me to investigate further.

I'd suggest just using the "linux" filesystem until basic tarball extracts work the same across both.

@AgainPsychoX
Copy link
Contributor Author

I used make with MXE_TMP=/tmp/mxe-tmp since I symlinked Windows :\Users with /home, is also works :) Thank you. You are awesome guys.

@tonytheodore
Copy link
Member

Good to hear, I added some notes to the docs 3e2477d

tonytheodore added a commit that referenced this issue Feb 28, 2018
issue from #1892 was actually related to Bash on Ubuntu on Windows
and timestamp issues causing autotools to be called
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants