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

gdmodule requires libiconv on cygwin #7319

Closed
mwhansen opened this issue Oct 27, 2009 · 17 comments
Closed

gdmodule requires libiconv on cygwin #7319

mwhansen opened this issue Oct 27, 2009 · 17 comments

Comments

@mwhansen
Copy link
Contributor

On Cywgin, the gdmodule spkg requires libiconv. I think we have two choices for handling this:

  1. Making sure that libiconv is always installed in the system Cygwin environment. We can probably have control over this if we include the Cygwin install with Sage.

  2. Add a libiconv spkg that is only installed if we are in Cygwin. Note that this would probably amount to including it in all source tarballs.

Once libiconv is present, we need to patch Setup.py in gdmodule to add libiconv to the list of required libraries.

I'll put up an spkg for libiconv and gdmodule here shortly.

CC: @williamstein

Component: porting: Cygwin

Author: Mike Hansen

Reviewer: David Kirkby, William Stein

Merged: sage-4.4.1.alpha2

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

@mwhansen
Copy link
Contributor Author

comment:1

The spkg can be found a http://sage.math.washington.edu/home/mhansen/gdmodule-0.56.p7.spkg

@mwhansen
Copy link
Contributor Author

Author: Mike Hansen

@sagetrac-drkirkby
Copy link
Mannequin

sagetrac-drkirkby mannequin commented Jan 31, 2010

comment:3

The latest version of R will need iconv on Solaris - currently an option to configure, something like --no-iconv is added on R. But iconv is mandatory on the latest version with Solaris. Given iconv is not large, and does not take long to build, I believe that is should be added. I would also suggest it is installed on all platforms - not just Cygwin and Solaris. It would give one more item which is fixed, and so less need to worry if someone's problem might be their version of iconv is too old or broken in some way.

Dave

@sagetrac-drkirkby
Copy link
Mannequin

sagetrac-drkirkby mannequin commented Jan 31, 2010

comment:4

Note, SPKG.txt has:

gdmodule-0.56.p5 (Mike Hansen, October 27th, 2009)

  • Make gdmodule work on Cygwin.

gdmodule-0.56.p5 (Michael Abshoff)

with no entry for a p6 or p7. So this needs a bit of work, but even then, I'm unable to test on Cygwin, so you would need another reviewer too.

@sagetrac-drkirkby
Copy link
Mannequin

sagetrac-drkirkby mannequin commented Jan 31, 2010

Reviewer: David Kirkby

@sagetrac-drkirkby
Copy link
Mannequin

sagetrac-drkirkby mannequin commented Feb 5, 2010

comment:5

As I stated above, R also needs iconv on Solaris now - the R developers have now disabled the option to not use iconv. I've created #8191 to create an iconv package. This seems the most logical way. I can't see any possible workaround with R.

Dave

@sagetrac-drkirkby
Copy link
Mannequin

sagetrac-drkirkby mannequin commented Feb 15, 2010

comment:6

#8191 now has an iconv package, awaiting review, so there should be no need for Mike to create an iconv package.

@sagetrac-drkirkby
Copy link
Mannequin

sagetrac-drkirkby mannequin commented Mar 1, 2010

comment:7

#8191 now has positive review, so iconv should soon be in Sage.

@sagetrac-drkirkby
Copy link
Mannequin

sagetrac-drkirkby mannequin commented Mar 19, 2010

comment:8

Can this ticket be closed, given there is now an iconv package as a standard .spkg file in Sage?

dave

@mwhansen
Copy link
Contributor Author

comment:9

I'm not sure since the spkg here has other changes to it. I'll double check.

@mwhansen
Copy link
Contributor Author

mwhansen commented Apr 6, 2010

comment:10

There is an spkg at http://sage.math.washington.edu/home/mhansen/cygwin_port/gdmodule-0.56.p7.spkg that should be used. This still needs a review.

@sagetrac-drkirkby
Copy link
Mannequin

sagetrac-drkirkby mannequin commented Apr 7, 2010

comment:11

Has this been tested on at least one Linux, Solaris and OS X system? There are quite a few non-trivial changes here, and I am aware iconv and gd have caused problems recently, so I think we need to be especially careful this is very well tested.

Dave

@mwhansen
Copy link
Contributor Author

mwhansen commented Apr 7, 2010

comment:12

I've tested it on Cygwin and Linux. The only change is Cygwin-specific and does not happen on any other platform. The rest of the last commit was just checking in files to the repo that should have been but were not.

@williamstein
Copy link
Contributor

Merged: 4.4.1.alpha2

@sagetrac-mvngu
Copy link
Mannequin

sagetrac-mvngu mannequin commented Apr 29, 2010

Changed reviewer from David Kirkby to David Kirkby, William Stein

@sagetrac-mvngu
Copy link
Mannequin

sagetrac-mvngu mannequin commented May 3, 2010

Changed merged from 4.4.1.alpha2 to sage-4.4.1.alpha2

@williamstein
Copy link
Contributor

comment:18

I'm having trouble with this on Cygwin now:


E_LIBFONTCONFIG -I/home/wstein/sage-4.4.3.alpha1/local/include -I/usr/include -I/usr/include/X11 -I/home/wstein/sage-4.4.3.al
 -c _gdmodule.c -o build/temp.cygwin-1.7.1-i686-2.6/_gdmodule.o
_gdmodule.c:152: warning: function declaration isn’t a prototype
_gdmodule.c:169: warning: function declaration isn’t a prototype
_gdmodule.c: In function ‘image_string’:
_gdmodule.c:993: warning: pointer targets in passing argument 5 of ‘gdImageString’ differ in signedness
_gdmodule.c: In function ‘image_string16’:
_gdmodule.c:1008: warning: passing argument 5 of ‘gdImageString16’ from incompatible pointer type
_gdmodule.c: In function ‘image_stringup’:
_gdmodule.c:1022: warning: pointer targets in passing argument 5 of ‘gdImageStringUp’ differ in signedness
_gdmodule.c: In function ‘image_stringup16’:
_gdmodule.c:1037: warning: passing argument 5 of ‘gdImageStringUp16’ from incompatible pointer type
gcc -shared -Wl,--enable-auto-image-base build/temp.cygwin-1.7.1-i686-2.6/_gdmodule.o -L/home/wstein/sage-4.4.3.alpha1/local/
1 -L/home/wstein/sage-4.4.3.alpha1/local/lib/python2.6/config -lgd -lpng12 -lz -lfreetype -liconv -lfontconfig -lpython2.6 -o
-2.6/_gd.dll
build/temp.cygwin-1.7.1-i686-2.6/_gdmodule.o: In function `write_file':
/home/wstein/sage-4.4.3.alpha1/spkg/build/gdmodule-0.56.p7/src/_gdmodule.c:248: undefined reference to `_gdImagePngPtr'
/home/wstein/sage-4.4.3.alpha1/spkg/build/gdmodule-0.56.p7/src/_gdmodule.c:250: undefined reference to `_gdImagePng'
build/temp.cygwin-1.7.1-i686-2.6/_gdmodule.o:_gdmodule.c:(.rdata+0x7e4): undefined reference to `_gdImageCreateFromPng'
build/temp.cygwin-1.7.1-i686-2.6/_gdmodule.o:_gdmodule.c:(.rdata+0x824): undefined reference to `_gdImageCreateFromPngCtx'
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1
Failure to build gdmodule

real    0m3.434s
user    0m0.760s
sys     0m1.991s
sage: An error occurred while installing gdmodule-0.56.p7

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