Menu

compiling on OSX

Steve
2012-05-14
2013-01-27
  • Steve

    Steve - 2012-05-14

    I am trying to build wineasio on OSX and getting a very strange compile error I don't know what to do with.  maybe someone can help? 

    [~/wine/wineasio]: make -f Makefile
    gcc -c -I. -I/usr/include -I/Users/sjs/wine/wine-1.5.4/include -I/Users/sjs/wine/wine-1.5.4/include/wine -I/Users/sjs/wine/wine-1.5.4/include/wine/windows    -m32 -g -O2 -D__WINESRC__ -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wwrite-strings -Wpointer-arith -o asio.o asio.c
    {standard input}:36:Unknown pseudo-op: .type
    {standard input}:36:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:38:Unknown pseudo-op: .cfi_startproc
    {standard input}:43:Unknown pseudo-op: .cfi_endproc
    {standard input}:44:Unknown pseudo-op: .previous
    {standard input}:48:Unknown pseudo-op: .type
    {standard input}:48:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:50:Unknown pseudo-op: .cfi_startproc
    {standard input}:55:Unknown pseudo-op: .cfi_endproc
    {standard input}:56:Unknown pseudo-op: .previous
    {standard input}:60:Unknown pseudo-op: .type
    {standard input}:60:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:62:Unknown pseudo-op: .cfi_startproc
    {standard input}:67:Unknown pseudo-op: .cfi_endproc
    {standard input}:68:Unknown pseudo-op: .previous
    {standard input}:72:Unknown pseudo-op: .type
    {standard input}:72:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:74:Unknown pseudo-op: .cfi_startproc
    {standard input}:79:Unknown pseudo-op: .cfi_endproc
    {standard input}:80:Unknown pseudo-op: .previous
    {standard input}:84:Unknown pseudo-op: .type
    {standard input}:84:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:86:Unknown pseudo-op: .cfi_startproc
    {standard input}:91:Unknown pseudo-op: .cfi_endproc
    {standard input}:92:Unknown pseudo-op: .previous
    {standard input}:96:Unknown pseudo-op: .type
    {standard input}:96:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:98:Unknown pseudo-op: .cfi_startproc
    {standard input}:103:Unknown pseudo-op: .cfi_endproc
    {standard input}:104:Unknown pseudo-op: .previous
    {standard input}:108:Unknown pseudo-op: .type
    {standard input}:108:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:110:Unknown pseudo-op: .cfi_startproc
    {standard input}:115:Unknown pseudo-op: .cfi_endproc
    {standard input}:116:Unknown pseudo-op: .previous
    {standard input}:120:Unknown pseudo-op: .type
    {standard input}:120:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:122:Unknown pseudo-op: .cfi_startproc
    {standard input}:127:Unknown pseudo-op: .cfi_endproc
    {standard input}:128:Unknown pseudo-op: .previous
    {standard input}:132:Unknown pseudo-op: .type
    {standard input}:132:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:134:Unknown pseudo-op: .cfi_startproc
    {standard input}:139:Unknown pseudo-op: .cfi_endproc
    {standard input}:140:Unknown pseudo-op: .previous
    {standard input}:144:Unknown pseudo-op: .type
    {standard input}:144:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:146:Unknown pseudo-op: .cfi_startproc
    {standard input}:151:Unknown pseudo-op: .cfi_endproc
    {standard input}:152:Unknown pseudo-op: .previous
    {standard input}:156:Unknown pseudo-op: .type
    {standard input}:156:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:158:Unknown pseudo-op: .cfi_startproc
    {standard input}:163:Unknown pseudo-op: .cfi_endproc
    {standard input}:164:Unknown pseudo-op: .previous
    {standard input}:168:Unknown pseudo-op: .type
    {standard input}:168:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:170:Unknown pseudo-op: .cfi_startproc
    {standard input}:175:Unknown pseudo-op: .cfi_endproc
    {standard input}:176:Unknown pseudo-op: .previous
    {standard input}:180:Unknown pseudo-op: .type
    {standard input}:180:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:182:Unknown pseudo-op: .cfi_startproc
    {standard input}:187:Unknown pseudo-op: .cfi_endproc
    {standard input}:188:Unknown pseudo-op: .previous
    {standard input}:192:Unknown pseudo-op: .type
    {standard input}:192:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:194:Unknown pseudo-op: .cfi_startproc
    {standard input}:199:Unknown pseudo-op: .cfi_endproc
    {standard input}:200:Unknown pseudo-op: .previous
    {standard input}:204:Unknown pseudo-op: .type
    {standard input}:204:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:206:Unknown pseudo-op: .cfi_startproc
    {standard input}:211:Unknown pseudo-op: .cfi_endproc
    {standard input}:212:Unknown pseudo-op: .previous
    {standard input}:216:Unknown pseudo-op: .type
    {standard input}:216:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:218:Unknown pseudo-op: .cfi_startproc
    {standard input}:223:Unknown pseudo-op: .cfi_endproc
    {standard input}:224:Unknown pseudo-op: .previous
    {standard input}:228:Unknown pseudo-op: .type
    {standard input}:228:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:230:Unknown pseudo-op: .cfi_startproc
    {standard input}:235:Unknown pseudo-op: .cfi_endproc
    {standard input}:236:Unknown pseudo-op: .previous
    {standard input}:240:Unknown pseudo-op: .type
    {standard input}:240:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:242:Unknown pseudo-op: .cfi_startproc
    {standard input}:247:Unknown pseudo-op: .cfi_endproc
    {standard input}:248:Unknown pseudo-op: .previous
    {standard input}:252:Unknown pseudo-op: .type
    {standard input}:252:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:254:Unknown pseudo-op: .cfi_startproc
    {standard input}:259:Unknown pseudo-op: .cfi_endproc
    {standard input}:260:Unknown pseudo-op: .previous
    {standard input}:264:Unknown pseudo-op: .type
    {standard input}:264:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:266:Unknown pseudo-op: .cfi_startproc
    {standard input}:271:Unknown pseudo-op: .cfi_endproc
    {standard input}:272:Unknown pseudo-op: .previous
    {standard input}:276:Unknown pseudo-op: .type
    {standard input}:276:Rest of line ignored. 1st junk character valued 95 (_).
    {standard input}:278:Unknown pseudo-op: .cfi_startproc
    {standard input}:283:Unknown pseudo-op: .cfi_endproc
    {standard input}:284:Unknown pseudo-op: .previous
    make: *** [asio.o] Error 1
    
     
  • Steve

    Steve - 2012-05-15

    ok I think I have discovered the problem but I don't know how to fix it.  The following code in asio.c has ELF assembler injections which are not supported on OSX.  anyone have any suggestions how to fix?

    #define __ASM_DEFINE_FUNC(name,suffix,code) asm(".text\n\t.align 4\n\t.globl " #name suffix "\n\t.type " #name suffix ",@function\n" #name suffix ":\n\t.cfi_startproc\n\t" code "\n\t.cfi_endproc\n\t.previous");
    #define __ASM_GLOBAL_FUNC(name,code) __ASM_DEFINE_FUNC(name,"",code)
    #define __ASM_NAME(name) name
    #define __ASM_STDCALL(args) ""
    /* From wine source */
    #ifdef __i386__  /* thiscall functions are i386-specific */
    #define THISCALL(func) __thiscall_ ## func
    #define THISCALL_NAME(func) __ASM_NAME("__thiscall_" #func)
    #define __thiscall __stdcall
    #define DEFINE_THISCALL_WRAPPER(func,args) \
        extern void THISCALL(func)(void); \
        __ASM_GLOBAL_FUNC(__thiscall_ ## func, \
                          "popl %eax\n\t" \
                          "pushl %ecx\n\t" \
                          "pushl %eax\n\t" \
                          "jmp " __ASM_NAME(#func) __ASM_STDCALL(args) )
    #else /* __i386__ */
    #define THISCALL(func) func
    #define THISCALL_NAME(func) __ASM_NAME(#func)
    #define __thiscall __cdecl
    #define DEFINE_THISCALL_WRAPPER(func,args) /* nothing */
    #endif /* __i386__ */
    /* Hide ELF symbols for the COM members - No need to to export them */
    #define HIDDEN __attribute__ ((visibility("hidden")))
    
     
  • Joakim Hernberg

    Joakim Hernberg - 2012-05-31

    I know of no one that has compiled this branch of wineasio on OSX.  I also have no idea what needs to be done to make it work.  Sorry!

     

Log in to post a comment.