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

libfplll does not build on cygwin #22807

Closed
sagetrac-gouezel mannequin opened this issue Apr 13, 2017 · 8 comments
Closed

libfplll does not build on cygwin #22807

sagetrac-gouezel mannequin opened this issue Apr 13, 2017 · 8 comments

Comments

@sagetrac-gouezel
Copy link
Mannequin

sagetrac-gouezel mannequin commented Apr 13, 2017

Trying to compile 8.0.beta1 on cygwin64, I get the following error in libfplll:

libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -DFPLLL_DEFAULT_STRATEGY_PATH=\"/home/Sebastien/sage34/sage/local/share/fplll/strategies\" -DFPLLL_DEFAULT_STRATEGY=\"/home/Sebastien/sage34/sage/local/share/fplll/strategies/default.json\" -I./.. -I/home/Sebastien/sage34/sage/local/include/ -I/include -std=gnu++11 -fPIC -I/home/Sebastien/sage34/sage/local/include/ -L/home/Sebastien/sage34/sage/local/lib -O3 -MT enum/enumerate_base.lo -MD -MP -MF enum/.deps/enumerate_base.Tpo -c enum/enumerate_base.cpp  -DDLL_EXPORT -DPIC -o enum/.libs/enumerate_base.o
enum/enumerate_base.cpp:1:0: warning: -fPIC ignored for target (all code is position independent)
 /* Copyright (C) 2008-2011 Xavier Pujol
 ^
/usr/lib/gcc/x86_64-pc-cygwin/5.4.0/../../../../x86_64-pc-cygwin/bin/as: enum/.libs/enumerate_base.o: too many sections (41187)
/tmp/cc6XlJLC.s: Assembler messages:
/tmp/cc6XlJLC.s: Fatal error: can't write enum/.libs/enumerate_base.o: File too big

I tried to add CPPFLAGS="$CPPFLAGS -Wa,-mbig-obj" to spkg-install. Then the above file compiles correctly, but the final stage of the compilation (to produce libfplll.dll.a) hangs forever.

CC: @embray @tscrim

Component: porting: Cygwin

Issue created by migration from https://trac.sagemath.org/ticket/22807

@sagetrac-gouezel sagetrac-gouezel mannequin added this to the sage-8.0 milestone Apr 13, 2017
@sagetrac-gouezel
Copy link
Mannequin Author

sagetrac-gouezel mannequin commented Apr 13, 2017

comment:1

@embray, I am willing to test all the nice patches you have produced for Cygwin. But first I have to get there, which I am unable to do because of this libfplll thing...

@tscrim
Copy link
Collaborator

tscrim commented Apr 14, 2017

comment:2

Is this fixed by #22800?

@sagetrac-gouezel
Copy link
Mannequin Author

sagetrac-gouezel mannequin commented Apr 14, 2017

comment:3

Duplicate of #22800

@sagetrac-gouezel sagetrac-gouezel mannequin self-assigned this Apr 14, 2017
@sagetrac-gouezel sagetrac-gouezel mannequin removed this from the sage-8.0 milestone Apr 14, 2017
@embray embray closed this as completed Apr 14, 2017
@embray
Copy link
Contributor

embray commented Apr 14, 2017

comment:5

By the way, there are also a bug with building ECL on Cygwin 2.8.0 (the latest version). I haven't made a ticket for that yet but basically we need to add -D_GNU_SOURCE manually when compiling ECL (as a workaround).

@embray
Copy link
Contributor

embray commented Apr 14, 2017

comment:6

Also, as a minor status update, a lot of stuff was broken in my most recent build of develop (plus my additional patches). I mean it built, but a lot of tests were broken. Which is disheartening because last week I had it down to one test failing and now in just the space of a week the test suite is barely passing at all.

One thing I'm worried about is that on Monday I upgraded my Cygwin install and that could have caused all sorts of issues. I don't know what package versions I was at before the upgrade though so it might be difficult to reproduce. I'm trying a build now on a slightly older Cygwin install that I already knew to work for sage 7.4....

@sagetrac-gouezel
Copy link
Mannequin Author

sagetrac-gouezel mannequin commented Apr 14, 2017

comment:7

My cygwin is recent but not bleeding edge (2.8.0(0.309/5/3)) and I could compile ECL without any problem.

@embray
Copy link
Contributor

embray commented Apr 14, 2017

comment:8

That is the newest version that's been released, I think. I'm surprised--it didn't work for me without that.

@sagetrac-gouezel
Copy link
Mannequin Author

sagetrac-gouezel mannequin commented Apr 15, 2017

comment:9

Well, I could compile everything (but the documentation), but Sage does not start:

┌────────────────────────────────────────────────────────────────────┐
│ SageMath version 8.0.beta2, Release Date: 2017-04-12               │
│ Type "notebook()" for the browser-based notebook interface.        │
│ Type "help()" for help.                                            │
└────────────────────────────────────────────────────────────────────┘
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Warning: this is a prerelease version, and it may be unstable.     ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
------------------------------------------------------------------------
Attaching gdb to process id 6560.
      0 [main] gdb 8160 D:\cygwin64_20150103\bin\gdb.exe: *** fatal error - error while loading shared libraries: /home/Sebastien/sage34/sage/local/lib/libpython2.7.dll.a: cannot open shared object file: Permission denied

Saved trace to /cygdrive/c/Users/Sebastien/.sage/crash_logs/crash_zNsKd9.log
------------------------------------------------------------------------
Unhandled SIGSEGV: A segmentation fault occurred.
This probably occurred because a *compiled* module has a bug
in it and is not properly wrapped with sig_on(), sig_off().
Python will now terminate.
------------------------------------------------------------------------
Segmentation fault (core dumped)

More details on request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants