| Anonymous | Login | Signup for a new account | 2010-09-02 11:09 EDT | ![]() |
| Main | My View | View Issues | Change Log | Roadmap |
| View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | |||||
| ID | Project | Category | View Status | Date Submitted | Last Update | |
| 0001566 | MPD | Build | public | 2007-09-14 14:35 | 2010-06-05 21:15 | |
| Reporter | mattswell | |||||
| Assigned To | cirrus | |||||
| Priority | low | Severity | feature | Reproducibility | always | |
| Status | closed | Resolution | fixed | |||
| Platform | OS | OS Version | ||||
| Product Version | git | |||||
| Target Version | Fixed in Version | |||||
| Summary | 0001566: Unable to compile under cygwin | |||||
| Description | I have all plugins disabled, attempting to compile the core only. System information: Windows XP SP2 cygwin-1.5.24-2 gcc-3.4.4-3 mingw-20050502-1 MPD SVN Revision: 6887 Steps to reproduce: 1) cd to mpd source directory 2) ./autogen.sh --disable-libtool-lock --disable-shout --disable-iconv --disable-ipv6 --disable-oss --disable-alsa --disable-jack --disable-pulse --disable-fifo --disable-oggvorbis --disable-oggflac --disable-flac --disable-mp3 --disable-aac --disable-audiofile --enable-mod --disable-mpc --disable-wavpack --disable-id3 --disable-lsr --disable-aotest --disable-alsatest --disable-oggtest --disable-vorbistest --disable-libFLACtest --disable-libOggFLACtest --disable-audiofiletest --disable-libmikmodtest 3) make Error is as follows: source='inputStream_http.c' object='mpd-inputStream_http.o' libtool=no \ depfile='.deps/mpd-inputStream_http.Po' tmpdepfile='.deps/mpd-inputStrea m_http.TPo' \ depmode=gcc3 /bin/sh ../depcomp \ gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wmissing-prototypes -g -O2 -c -o mpd-inputStream_http.o `test -f 'inputStream_http.c' || echo './'`inputStrea m_http.c inputStream_http.c: In function `initHTTPConnection': inputStream_http.c:371: error: storage size of 'hints' isn't known inputStream_http.c:394: warning: implicit declaration of function `getaddrinfo' inputStream_http.c:397: warning: implicit declaration of function `gai_strerror' inputStream_http.c:397: warning: format argument is not a pointer (arg 2) inputStream_http.c:402: error: dereferencing pointer to incomplete type inputStream_http.c:403: error: dereferencing pointer to incomplete type inputStream_http.c:403: error: dereferencing pointer to incomplete type inputStream_http.c:404: error: dereferencing pointer to incomplete type inputStream_http.c:407: warning: implicit declaration of function `freeaddrinfo' inputStream_http.c:414: error: dereferencing pointer to incomplete type inputStream_http.c:414: error: dereferencing pointer to incomplete type inputStream_http.c:371: warning: unused variable `hints' make[3]: *** [mpd-inputStream_http.o] Error 1 make[3]: Leaving directory `/home/Matthew/mpd/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/Matthew/mpd/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/Matthew/mpd' make: *** [all] Error 2 | |||||
| Tags | No tags attached. | |||||
| Attached Files | ||||||
Relationships |
||||||
|
||||||
Notes |
|
|
(0001717) michu (reporter) 2007-10-25 05:29 |
solution (tried with latest svn version) create new file called fake_getaddrinfo.h with this content: struct addrinfo { int ai_flags; /* AI_PASSIVE, AI_CANONNAME */ int ai_family; /* PF_xxx */ int ai_socktype; /* SOCK_xxx */ int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */ size_t ai_addrlen; /* length of ai_addr */ char *ai_canonname; /* canonical name for hostname */ struct sockaddr *ai_addr; /* binary address */ struct addrinfo *ai_next; /* next structure in linked list */ }; static int fake_getaddrinfo(const char *hostname, struct addrinfo *ai, in_port_t port) { struct hostent *he; struct in_addr **ap; struct sockaddr_in *sa_in; he = gethostbyname(hostname); if (!he) return (-1); ai->ai_family = he->h_addrtype; ai->ai_socktype = SOCK_STREAM; ai->ai_protocol = 0; //ai->ai_addrlen = he->h_length; ai->ai_addrlen = sizeof(struct sockaddr_in); if (NULL == (ai->ai_addr = malloc(ai->ai_addrlen))) return (-1); sa_in = (struct sockaddr_in *)ai->ai_addr; memset(sa_in, 0, sizeof(struct sockaddr_in)); sa_in->sin_family = PF_INET; sa_in->sin_port = htons(port); ap = (struct in_addr **)he->h_addr_list; memcpy(&sa_in->sin_addr, *ap, sizeof(struct in_addr)); ai->ai_next = NULL; return (0); } static void fake_freeaddrinfo(struct addrinfo *ai) { free(ai->ai_addr); } now edit inputStream_http.c: -add #include "fake_getaddrinfo.h" -replace "freeaddrinfo(" with "fake_freeaddrinfo(" -change this line: //DEBUG(__FILE__ ": Error getting address info: %s\n", ai_strerror(error)); DEBUG(__FILE__ ": Error getting address info: %i\n", error); that should do the trick can anyone test this? cheers michu / www.neophob.com |
|
(0001718) michu (reporter) 2007-10-25 06:16 edited on: 2007-10-25 06:16 |
and btw, when you are facing this errors: $ ./mpd --no-daemon --stdout --verbose binding to any address flushing warning messages done flushing warning messages current locale is "C" setting filesystem charset to ISO-8859-1 setFsCharset: fs charset is: ISO-8859-1 reading DB Bad system call an export will solve the problem $ export CYGWIN=server $ ./mpd --no-daemon --stdout --verbose binding to any address flushing warning messages done flushing warning messages current locale is "C" setting filesystem charset to ISO-8859-1 setFsCharset: fs charset is: ISO-8859-1 reading DB No "audio_output" defined in config file Attempt to detect audio output device Attempting to detect a oss audio device Successfully detected a oss audio device unable to open oss mixer "/dev/mixer" using software volume tadaaa! cheers michu |
|
(0001719) michu (reporter) 2007-10-25 07:22 |
but i guess there are some issues left... interface 0: process command list returned 0 interface 0: closed interface 0: opened from 127.0.0.1 interface 0: process command "status" interface 0: command returned 0 interface 0: process command "play "-1"" playlist: play 0:"Daft Punk/Daft Punk Alive 2007/7. Too Long.mp3" 13 [main] mpd 684 C:\Program Files\cygwin\home\mpx\mpd-test\mpd.exe: *** fatal error - MapViewOfFileEx (0x28990000), Win32 er ror 6. Terminating. 0 [main] mpd 3004 fork: child 684 - died waiting for dll loading, errno 11 player Problems fork()'ing playlist: stop interface 0: command returned -1 mpd crash when forking... |
|
(0001779) michu (reporter) 2007-11-21 06:42 |
The error "** fatal error - MapViewOfFileEx (0x28990000), Win32 error 6. Terminating." was an cygwin bug and has been fixed in the curren snapshot release. so mpd will run fine under cygwin... |
|
(0001781) qball (administrator) 2007-11-21 06:55 edited on: 2007-11-21 08:03 |
I removed block state from the bug, as win32 is not a supported platform. If you want to supply a patch, please attach it as file. (if the patch is fine, It will be commited) |
|
(0001841) michu (reporter) 2007-12-07 08:31 |
i added the cygwin patch |
|
(0001842) Avuton Olrich (administrator) 2007-12-07 14:32 |
Would you make one patch which will take care of it all? Thanks. |
|
(0005713) Avuton Olrich (administrator) 2010-05-29 02:22 |
Compiles for mingw now, if git doesn't compile for cygwin, please reopen this bug. |
Issue History |
|||
| Date Modified | Username | Field | Change |
| 2007-09-14 14:35 | mattswell | New Issue | |
| 2007-09-14 14:35 | mattswell | Status | new => assigned |
| 2007-09-14 14:35 | mattswell | Assigned To | => shank |
| 2007-10-25 05:29 | michu | Note Added: 0001717 | |
| 2007-10-25 06:16 | michu | Note Added: 0001718 | |
| 2007-10-25 06:16 | michu | Note Edited: 0001718 | |
| 2007-10-25 07:22 | michu | Note Added: 0001719 | |
| 2007-11-21 06:42 | michu | Note Added: 0001779 | |
| 2007-11-21 06:55 | qball | Note Added: 0001781 | |
| 2007-11-21 06:55 | qball | Severity | block => feature |
| 2007-11-21 08:03 | qball | Note Edited: 0001781 | |
| 2007-12-07 08:30 | michu | File Added: cygwin.patch | |
| 2007-12-07 08:31 | michu | Note Added: 0001841 | |
| 2007-12-07 14:32 | Avuton Olrich | Note Added: 0001842 | |
| 2008-10-16 03:39 | cirrus | Assigned To | shank => cirrus |
| 2008-10-25 13:25 | Avuton Olrich | Category | Version - GIT => Build |
| 2008-10-25 13:25 | Avuton Olrich | Product Version | => git |
| 2008-11-05 04:04 | cirrus | Priority | normal => low |
| 2008-12-04 05:21 | cirrus | Relationship added | related to 0001854 |
| 2010-05-29 02:22 | Avuton Olrich | Note Added: 0005713 | |
| 2010-05-29 02:22 | Avuton Olrich | Status | assigned => resolved |
| 2010-05-29 02:22 | Avuton Olrich | Resolution | open => fixed |
| 2010-06-05 21:15 | Avuton Olrich | Status | resolved => closed |
| Copyright © 2000 - 2010 MantisBT Group |