Opened 12 years ago

Closed 12 years ago

#31885 closed defect (worksforme)

apple-gcc42 failed to compile: conflicting types for 'psignal'

Reported by: macports@… Owned by: jeremyhu (Jeremy Huddleston Sequoia)
Priority: Normal Milestone:
Component: ports Version: 2.0.3
Keywords: lion Cc: macports@…
Port: apple-gcc42

Description (last modified by ryandesign (Ryan Carsten Schmidt))

I was trying to install mkvutoolnix but the installation stopped when compiling apple-gcc42. I'm on a core i7 macbook air (2011) with Lion.

$ uname -a
Darwin MacBook-Air.local 11.2.0 Darwin Kernel Version 11.2.0: Tue Aug  9 20:54:00 PDT 2011; root:xnu-1699.24.8~1/RELEASE_X86_64 x86_64
$ xcodebuild -version
Xcode 4.2
Build version 4D199

I'm attaching the complete log file, here's the first error I see:

info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_apple-gcc42/apple-gcc42/work/objroot/src/libiberty/strsignal.c:552:1: error: conflicting types for 'psignal'
:info:build psignal (unsigned signo, char *message)
:info:build ^
:info:build /usr/include/signal.h:105:6: note: previous declaration is here
:info:build void    psignal(unsigned int, const char *);
:info:build         ^
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_apple-gcc42/apple-gcc42/work/objroot/src/libiberty/strsignal.c:558:30: warning: comparison of integers of different signs: 'unsigned int' and 'int' [-Wsign-compare]
:info:build   if ((signo <= 0) || (signo >= sys_nsig))
:info:build                        ~~~~~ ^  ~~~~~~~~
:info:build 1 warning and 1 error generated.
:info:build make[4]: *** [strsignal.o] Error 1
:info:build make[4]: *** Waiting for unfinished jobs....
:info:build make[5]: Nothing to be done for `all'.
:info:build make[3]: *** [all-stage1-libiberty] Error 2
:info:build make[2]: *** [stage1-bubble] Error 2
:info:build make[1]: *** [all] Error 2
:info:build + exit 1
:info:build make: *** [install] Error 1
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_apple-gcc42/apple-gcc42/work/gcc-5666.3'

Attachments (2)

main.log (27.7 KB) - added by macports@… 12 years ago.
config.log (133.6 KB) - added by macports@… 12 years ago.

Download all attachments as: .zip

Change History (13)

Changed 12 years ago by macports@…

Attachment: main.log added

comment:1 Changed 12 years ago by macports@…

Cc: macports@… added

Cc Me!

comment:3 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: macports@… removed
Description: modified (diff)
Keywords: apple-gcc42 removed
Owner: changed from macports-tickets@… to jeremyhu@…
Port: apple-gcc42 added

comment:4 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

That code in libiberty/strsignal.c is only included when:

#ifndef HAVE_PSIGNAL

Can you please attach libiberty/config.log

comment:5 Changed 12 years ago by macports@…

Attaching config.log from path /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_apple-gcc42/apple-gcc42/work/objroot/obj-x86_64-x86_64/libiberty/ Hope it helps, thanks.

Changed 12 years ago by macports@…

Attachment: config.log added

comment:6 Changed 12 years ago by macports@…

Cc: macports@… added

Cc Me!

comment:6 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

It looks like dsymutil was bugged ... can you update to Xcode 4.3.2?

Can you provide the crash log for dsymutil?

configure:7396: result: no
2140	configure:7309: checking for psignal
2141	configure:7365: /Developer/usr/bin/clang -std=gnu89 -o conftest -g -O2  -std=gnu89  -Wl,-no_pie conftest.c  >&5
2142	dsymutil(70798,0x7fff74297960) malloc: *** error for object 0x10940a510: incorrect checksum for freed object - object was probably modified after being freed.
2143	*** set a breakpoint in malloc_error_break to debug
2144	clang: error: unable to execute command: Abort trap: 6
2145	clang: error: dsymutil command failed due to signal 2 (use -v to see invocation)
2146	configure:7371: $? = 254
2147	configure: failed program was:
2148	| /* confdefs.h.  */
2149	|
2150	| #define PACKAGE_NAME ""
2151	| #define PACKAGE_TARNAME ""
2152	| #define PACKAGE_VERSION ""
2153	| #define PACKAGE_STRING ""
2154	| #define PACKAGE_BUGREPORT ""
2155	| #define HAVE_SYS_FILE_H 1
2156	| #define HAVE_SYS_PARAM_H 1
2157	| #define HAVE_LIMITS_H 1
2158	| #define HAVE_STDLIB_H 1
2159	| #define HAVE_STRING_H 1
2160	| #define HAVE_UNISTD_H 1
2161	| #define HAVE_STRINGS_H 1
2162	| #define HAVE_SYS_TIME_H 1
2163	| #define HAVE_TIME_H 1
2164	| #define HAVE_SYS_RESOURCE_H 1
2165	| #define HAVE_SYS_STAT_H 1
2166	| #define HAVE_SYS_MMAN_H 1
2167	| #define HAVE_FCNTL_H 1
2168	| #define HAVE_ALLOCA_H 1
2169	| #define HAVE_SYS_SYSCTL_H 1
2170	| #define HAVE_STDINT_H 1
2171	| #define HAVE_SYS_WAIT_H 1
2172	| #define TIME_WITH_SYS_TIME 1
2173	| #define STDC_HEADERS 1
2174	| #define HAVE_SYS_TYPES_H 1
2175	| #define HAVE_SYS_STAT_H 1
2176	| #define HAVE_STDLIB_H 1
2177	| #define HAVE_STRING_H 1
2178	| #define HAVE_MEMORY_H 1
2179	| #define HAVE_STRINGS_H 1
2180	| #define HAVE_INTTYPES_H 1
2181	| #define HAVE_STDINT_H 1
2182	| #define HAVE_UNISTD_H 1
2183	| #define SIZEOF_INT 4
2184	| #define UNSIGNED_64BIT_TYPE uint64_t
2185	| #define HAVE_UINTPTR_T 1
2186	| #define HAVE_ASPRINTF 1
2187	| #define HAVE_ATEXIT 1
2188	| #define HAVE_BASENAME 1
2189	| #define HAVE_BCMP 1
2190	| #define HAVE_BCOPY 1
2191	| #define HAVE_BSEARCH 1
2192	| #define HAVE_BZERO 1
2193	| #define HAVE_CALLOC 1
2194	| #define HAVE_CLOCK 1
2195	| #define HAVE_FFS 1
2196	| #define HAVE_GETCWD 1
2197	| #define HAVE_GETPAGESIZE 1
2198	| #define HAVE_GETTIMEOFDAY 1
2199	| #define HAVE_INDEX 1
2200	| #define HAVE_INSQUE 1
2201	| #define HAVE_MEMCHR 1
2202	| #define HAVE_MEMCMP 1
2203	| #define HAVE_MEMCPY 1
2204	| #define HAVE_MEMMOVE 1
2205	| #define HAVE_MEMSET 1
2206	| #define HAVE_MKSTEMPS 1
2207	| #define HAVE_PUTENV 1
2208	| #define HAVE_RANDOM 1
2209	| #define HAVE_RENAME 1
2210	| #define HAVE_RINDEX 1
2211	| #define HAVE_SETENV 1
2212	| #define HAVE_SNPRINTF 1
2213	| #define HAVE_SIGSETMASK 1
2214	| #define HAVE_STPCPY 1
2215	| #define HAVE_STPNCPY 1
2216	| #define HAVE_STRCASECMP 1
2217	| #define HAVE_STRCHR 1
2218	| #define HAVE_STRDUP 1
2219	| #define HAVE_STRNCASECMP 1
2220	| #define HAVE_STRNDUP 1
2221	| #define HAVE_STRRCHR 1
2222	| #define HAVE_STRSTR 1
2223	| #define HAVE_STRTOD 1
2224	| #define HAVE_STRTOL 1
2225	| #define HAVE_STRTOUL 1
2226	| #define HAVE_TMPNAM 1
2227	| #define HAVE_VASPRINTF 1
2228	| #define HAVE_VFPRINTF 1
2229	| #define HAVE_VPRINTF 1
2230	| #define HAVE_VSNPRINTF 1
2231	| #define HAVE_VSPRINTF 1
2232	| #define HAVE_WAITPID 1
2233	| #define STACK_DIRECTION -1
2234	| #define HAVE_UNISTD_H 1
2235	| #define HAVE_FORK 1
2236	| #define HAVE_VFORK 1
2237	| #define HAVE_WORKING_VFORK 1
2238	| #define HAVE_WORKING_FORK 1
2239	| #define HAVE_SYS_ERRLIST 1
2240	| #define HAVE_SYS_NERR 1
2241	| #define HAVE_SYS_SIGLIST 1
2242	| #define HAVE_GETRUSAGE 1
2243	| /* end confdefs.h.  */
2244	| /* System header to define __stub macros and hopefully few prototypes,
2245	|     which can conflict with char psignal (); below.
2246	|     Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
2247	|     <limits.h> exists even on freestanding compilers.  Under hpux,
2248	|     including <limits.h> includes <sys/time.h> and causes problems
2249	|     checking for functions defined therein.  */
2250	| #if defined (__STDC__) && !defined (_HPUX_SOURCE)
2251	| # include <limits.h>
2252	| #else
2253	| # include <assert.h>
2254	| #endif
2255	| /* Override any gcc2 internal prototype to avoid an error.  */
2256	| #ifdef __cplusplus
2257	| extern "C"
2258	| {
2259	| #endif
2260	| /* We use char because int might match the return type of a gcc2
2261	|    builtin and then its argument prototype would still apply.  */
2262	| char psignal ();
2263	| /* The GNU C library defines this for functions which it implements
2264	|     to always fail with ENOSYS.  Some functions are actually named
2265	|     something starting with __ and the normal name is an alias.  */
2266	| #if defined (__stub_psignal) || defined (__stub___psignal)
2267	| choke me
2268	| #else
2269	| char (*f) () = psignal;
2270	| #endif
2271	| #ifdef __cplusplus
2272	| }
2273	| #endif
2274	|
2275	| int
2276	| main ()
2277	| {
2278	| return f != psignal;
2279	|   ;
2280	|   return 0;
2281	| }

comment:7 Changed 12 years ago by macports@…

I did the XCode upgrade and also a Port update. It worked! Thank you. Do you still want the dsymutil log? If you tell me were is it, I'll post it.

Jose

comment:8 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Status: newassigned

Yes, I'd like the dsymutil crash report just to make sure it really is fixed. Chances are that it is fixed, but you also might just no longer be tickling it. Please email it to jeremyhu@…, thanks.

I'll update the port to require XCode 4.3 on Lion.

comment:9 Changed 12 years ago by macports@…

Can you tell me how to get that log?

comment:10 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Crash logs are saved in ~/Library/Logs/DiagnosticReports/ and /Library/Logs/DiagnosticReports/

comment:11 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: worksforme
Status: assignedclosed

No response, closing.

Note: See TracTickets for help on using tickets.