[MacPorts] #52070: tmux @ 2.2 compile failed in tiger ppc
MacPorts
noreply at macports.org
Sun Aug 21 05:12:29 PDT 2016
#52070: tmux @ 2.2 compile failed in tiger ppc
------------------------------+--------------------------------
Reporter: zhangchaowang@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.4
Resolution: | Keywords: tiger
Port: tmux |
------------------------------+--------------------------------
Comment (by kenneth.f.cunningham@…):
The first error is this:
{{{
413 :info:build compat/imsg.h:32: error: expected specifier-qualifier-
list before 'u_char'
}}}
Googling "macosx tiger error: expected specifier-qualifier-list before
'u_char'" we find a few references to this kind of error.
<http://stackoverflow.com/questions/5087257/error-after-compilation-in-c>
and <https://ghc.haskell.org/trac/ghc/ticket/5135#no1> seem possibly
related to this issue in this case.
In particular, it seems likely that the failed inclusion of the definition
of u_char will be related to this file ""/usr/include/sys/types.h"" not
being included or the appropriate block being parsed.
To start, I'd try adding
#include <sys/types.h>
near the top in compat.h, and see what happens. compat.h sounds like the
kind of file where this should go, and seems to be included in most of the
other files in the project.
Also, there are some changes in "/usr/include/sys/types.h" depending on
the system you're using, and so there might need to be some manipulation
of the guard block to get it to compile on Tiger.
On later systems, we see something line this is <sys/types.h>
{{{
#if !defined(_POSIX_C_SOURCE) || defined(_DARWIN_C_SOURCE)
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
#ifndef _U_LONG
typedef unsigned long u_long;
#define _U_LONG
#endif
typedef unsigned short ushort; /* Sys V compatibility */
typedef unsigned int uint; /* Sys V compatibility */
#endif
}}}
whereas on Tiger, the block looks like this:
{{{
#ifndef _POSIX_C_SOURCE
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
}}}
I hope this gets you started. I am away from my Tiger machines just now,
so can't test it for you directly. -- K
--
Ticket URL: <https://trac.macports.org/ticket/52070#comment:1>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list