Menu

#14 Win32.c is no good when building for win32 in cygwin...

open
nobody
5
2014-12-23
2004-11-29
Lucas Thode
No

I was able to hack together a makefile for Ficl for
builds under Cygwin/GCC. The problem is, gcc 3 wont
touch the contents of win32.c... I'll try to add
another CFLAGS switch into the makefile I created.

--build log start--
ficlplatform/win32.c:36: error: syntax error before
"ioinfo"
ficlplatform/win32.c: In function `ficlFileTruncate':
ficlplatform/win32.c:47: error: `HANDLE' undeclared
(first use in this function)

ficlplatform/win32.c:47: error: (Each undeclared
identifier is reported only onc
e
ficlplatform/win32.c:47: error: for each function it
appears in.)
ficlplatform/win32.c:47: error: parse error before "hFile"
ficlplatform/win32.c:48: error: `hFile' undeclared
(first use in this function)
ficlplatform/win32.c:48: error: `FILE_BEGIN' undeclared
(first use in this funct
ion)
ficlplatform/win32.c: In function `ficlFileStatus':
ficlplatform/win32.c:61: error: `DWORD' undeclared
(first use in this function)
ficlplatform/win32.c:61: error: parse error before
"attributes"
ficlplatform/win32.c:62: error: `attributes' undeclared
(first use in this funct
ion)
ficlplatform/win32.c: In function `ficlPrimitiveMulticall':
ficlplatform/win32.c:210: error:
`FICL_MULTICALL_CALLTYPE_VIRTUAL_METHOD' undecl
ared (first use in this function)
ficlplatform/win32.c:236: error:
`FICL_MULTICALL_CALLTYPE_FUNCTION' undeclared (
first use in this function)
ficlplatform/win32.c:238: error:
`FICL_MULTICALL_EXPLICIT_VTABLE' undeclared (fi
rst use in this function)
ficlplatform/win32.c:241: error: parse error before "push"
ficlplatform/win32.c:249: error: parse error before "mov"
ficlplatform/win32.c:253: error: parse error before "mov"
ficlplatform/win32.c: At top level:
ficlplatform/win32.c:261: error: parse error before "else"
ficlplatform/win32.c:264: warning: data definition has
no type or storage class
ficlplatform/win32.c:265: error: parse error before '}'
token
ficlplatform/win32.c:272: error: parse error before '('
token
ficlplatform/win32.c:272: warning: parameter names
(without types) in function d
eclaration
ficlplatform/win32.c:272: error: `ficlCallbackAssert'
declared as function retur
ning a function
ficlplatform/win32.c:272: error: conflicting types for
`ficlCallbackAssert'
ficl.h:1328: error: previous declaration of
`ficlCallbackAssert'
ficlplatform/win32.c:272: error: parse error before '!'
token
ficlplatform/win32.c:286: error: conflicting types for
`address'
ficlplatform/win32.c:284: error: previous declaration
of `address'
ficlplatform/win32.c:286: error: `vm' undeclared here
(not in a function)
ficlplatform/win32.c:286: warning: data definition has
no type or storage class
ficlplatform/win32.c:287: error: `argument' undeclared
here (not in a function)
ficlplatform/win32.c:287: warning: data definition has
no type or storage class
ficlplatform/win32.c:288: error: conflicting types for
`buffer'
ficlplatform/win32.c:285: error: previous declaration
of `buffer'
ficlplatform/win32.c:288: warning: data definition has
no type or storage class
ficlplatform/win32.c:289: warning: parameter names
(without types) in function d
eclaration
ficlplatform/win32.c:289: warning: data definition has
no type or storage class
ficlplatform/win32.c:290: error: variable-size type
declared outside of any func
tion
ficlplatform/win32.c:290: error: variable-sized object
may not be initialized
ficlplatform/win32.c:290: error: conflicting types for
`buffer'
ficlplatform/win32.c:288: error: previous declaration
of `buffer'
ficlplatform/win32.c:290: warning: data definition has
no type or storage class
ficlplatform/win32.c:291: error: `fixupIndex'
undeclared here (not in a function
)
ficlplatform/win32.c:291: warning: data definition has
no type or storage class
ficlplatform/win32.c:292: warning: data definition has
no type or storage class
ficlplatform/win32.c:293: error: parse error before
'--' token
ficlplatform/win32.c:298: warning: initialization makes
pointer from integer wit
hout a cast
ficlplatform/win32.c:298: error: initializer element is
not constant
ficlplatform/win32.c:298: warning: data definition has
no type or storage class
ficlplatform/win32.c:299: error: parse error before
'+=' token
ficlplatform/win32.c:354: error: parse error before
'->' token
ficlplatform/win32.c:354: error: conflicting types for
`ficlStackPushInteger'
ficl.h:962: error: previous declaration of
`ficlStackPushInteger'
ficlplatform/win32.c:354: warning: data definition has
no type or storage class
ficlplatform/win32.c:355: error: parse error before
'->' token
ficlplatform/win32.c:367: warning: parameter names
(without types) in function d
eclaration
ficlplatform/win32.c:367: error: conflicting types for
`free'
/usr/include/stdlib.h:76: error: previous declaration
of `free'
ficlplatform/win32.c:367: warning: data definition has
no type or storage class
ficlplatform/win32.c:368: error: parse error before '}'
token
ficlplatform/win32.c: In function
`ficlSystemCompilePlatform':
ficlplatform/win32.c:382: error: `HMODULE' undeclared
(first use in this functio
n)
ficlplatform/win32.c:382: error: parse error before
"hModule"
ficlplatform/win32.c:392: error:
`FICL_MULTICALL_CALLTYPE_FUNCTION' undeclared (
first use in this function)
ficlplatform/win32.c:393: error:
`FICL_MULTICALL_CALLTYPE_METHOD' undeclared (fi
rst use in this function)
ficlplatform/win32.c:394: error:
`FICL_MULTICALL_CALLTYPE_VIRTUAL_METHOD' undecl
ared (first use in this function)
ficlplatform/win32.c:395: error:
`FICL_MULTICALL_RETURNTYPE_VOID' undeclared (fi
rst use in this function)
ficlplatform/win32.c:396: error:
`FICL_MULTICALL_RETURNTYPE_INTEGER' undeclared
(first use in this function)
ficlplatform/win32.c:397: error:
`FICL_MULTICALL_RETURNTYPE_CSTRING' undeclared
(first use in this function)
ficlplatform/win32.c:398: error:
`FICL_MULTICALL_RETURNTYPE_FLOAT' undeclared (f
irst use in this function)
ficlplatform/win32.c:399: error:
`FICL_MULTICALL_REVERSE_ARGUMENTS' undeclared (
first use in this function)
ficlplatform/win32.c:400: error:
`FICL_MULTICALL_EXPLICIT_VTABLE' undeclared (fi
rst use in this function)
ficlplatform/win32.c:407: error: `hModule' undeclared
(first use in this functio
n)
ficlplatform/win32.c: At top level:
ficlplatform/win32.c:36: warning: array `__pioinfo'
assumed to have one element
ficlplatform/win32.c:291: error: storage size of
`fixups' isn't known
--end build log--

Discussion

  • Lucas Thode

    Lucas Thode - 2004-11-29

    Logged In: YES
    user_id=604556

    My proposed fix solved some of the issues, but not
    all...Here is the updated build log.
    --build log starts--
    ficlplatform/win32.c: In function `ficlPrimitiveMulticall':
    ficlplatform/win32.c:241: error: parse error before "push"
    ficlplatform/win32.c:249: error: parse error before "mov"
    ficlplatform/win32.c:253: error: parse error before "mov"
    ficlplatform/win32.c: At top level:
    ficlplatform/win32.c:261: error: parse error before "else"
    ficlplatform/win32.c:264: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:265: error: parse error before '}' token
    ficlplatform/win32.c:272: error: parse error before '(' token
    ficlplatform/win32.c:272: warning: parameter names (without
    types) in function d
    eclaration
    ficlplatform/win32.c:272: error: `ficlCallbackAssert'
    declared as function retur
    ning a function
    ficlplatform/win32.c:272: error: conflicting types for
    `ficlCallbackAssert'
    ficl.h:1328: error: previous declaration of `ficlCallbackAssert'
    ficlplatform/win32.c:272: error: parse error before '!' token
    ficlplatform/win32.c:286: error: conflicting types for `address'
    ficlplatform/win32.c:284: error: previous declaration of
    `address'
    ficlplatform/win32.c:286: error: `vm' undeclared here (not
    in a function)
    ficlplatform/win32.c:286: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:287: error: `argument' undeclared here
    (not in a function)
    ficlplatform/win32.c:287: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:288: error: conflicting types for `buffer'
    ficlplatform/win32.c:285: error: previous declaration of
    `buffer'
    ficlplatform/win32.c:288: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:289: warning: parameter names (without
    types) in function d
    eclaration
    ficlplatform/win32.c:289: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:290: error: variable-size type declared
    outside of any func
    tion
    ficlplatform/win32.c:290: error: variable-sized object may
    not be initialized
    ficlplatform/win32.c:290: error: conflicting types for `buffer'
    ficlplatform/win32.c:288: error: previous declaration of
    `buffer'
    ficlplatform/win32.c:290: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:291: error: `fixupIndex' undeclared
    here (not in a function
    )
    ficlplatform/win32.c:291: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:292: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:293: error: parse error before '--' token
    ficlplatform/win32.c:298: warning: initialization makes
    pointer from integer wit
    hout a cast
    ficlplatform/win32.c:298: error: initializer element is not
    constant
    ficlplatform/win32.c:298: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:299: error: parse error before '+=' token
    ficlplatform/win32.c:354: error: parse error before '->' token
    ficlplatform/win32.c:354: error: conflicting types for
    `ficlStackPushInteger'
    ficl.h:962: error: previous declaration of
    `ficlStackPushInteger'
    ficlplatform/win32.c:354: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:355: error: parse error before '->' token
    ficlplatform/win32.c:367: warning: parameter names (without
    types) in function d
    eclaration
    ficlplatform/win32.c:367: error: conflicting types for `free'
    /usr/i686-pc-mingw32/include/stdlib.h:354: error: previous
    declaration of `free'

    ficlplatform/win32.c:367: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:368: error: parse error before '}' token
    ficlplatform/win32.c:291: error: storage size of `fixups'
    isn't known
    --end build log--

     
  • Lucas Thode

    Lucas Thode - 2004-11-30

    Logged In: YES
    user_id=604556

    I think most of the syntax errors are caused by the
    differences in asm syntax between MSVC and GCC3. I will
    post my Makefile.cygwin32 and my cygwin32.c in this bug
    report. If anyone has Cygwin and knows both the MSVC 6/7
    and the GCC 3 ABI's, I would like it if you can finish the
    porting effort by rewriting the multicall mechanism to work
    properly with GCC-compiled code.

     
  • Lucas Thode

    Lucas Thode - 2004-12-01

    Logged In: YES
    user_id=604556

    I finished converting all of the asm's in win32.c, but it
    still doesn't compile properly... Here is the new build log:
    --start build log--
    ficlplatform/win32.c: In function `ficlPrimitiveMulticall':
    ficlplatform/win32.c:241: error: parse error before "push"
    ficlplatform/win32.c:249: error: parse error before "mov"
    ficlplatform/win32.c:253: error: parse error before "mov"
    ficlplatform/win32.c: At top level:
    ficlplatform/win32.c:261: error: parse error before "else"
    ficlplatform/win32.c:264: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:265: error: parse error before '}' token
    ficlplatform/win32.c:272: error: parse error before '(' token
    ficlplatform/win32.c:272: warning: parameter names (without
    types) in function d
    eclaration
    ficlplatform/win32.c:272: error: `ficlCallbackAssert'
    declared as function retur
    ning a function
    ficlplatform/win32.c:272: error: conflicting types for
    `ficlCallbackAssert'
    ficl.h:1328: error: previous declaration of `ficlCallbackAssert'
    ficlplatform/win32.c:272: error: parse error before '!' token
    ficlplatform/win32.c:286: error: conflicting types for `address'
    ficlplatform/win32.c:284: error: previous declaration of
    `address'
    ficlplatform/win32.c:286: error: `vm' undeclared here (not
    in a function)
    ficlplatform/win32.c:286: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:287: error: `argument' undeclared here
    (not in a function)
    ficlplatform/win32.c:287: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:288: error: conflicting types for `buffer'
    ficlplatform/win32.c:285: error: previous declaration of
    `buffer'
    ficlplatform/win32.c:288: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:289: warning: parameter names (without
    types) in function d
    eclaration
    ficlplatform/win32.c:289: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:290: error: variable-size type declared
    outside of any func
    tion
    ficlplatform/win32.c:290: error: variable-sized object may
    not be initialized
    ficlplatform/win32.c:290: error: conflicting types for `buffer'
    ficlplatform/win32.c:288: error: previous declaration of
    `buffer'
    ficlplatform/win32.c:290: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:291: error: `fixupIndex' undeclared
    here (not in a function
    )
    ficlplatform/win32.c:291: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:292: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:293: error: parse error before '--' token
    ficlplatform/win32.c:298: warning: initialization makes
    pointer from integer wit
    hout a cast
    ficlplatform/win32.c:298: error: initializer element is not
    constant
    ficlplatform/win32.c:298: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:299: error: parse error before '+=' token
    ficlplatform/win32.c:354: error: parse error before '->' token
    ficlplatform/win32.c:354: error: conflicting types for
    `ficlStackPushInteger'
    ficl.h:962: error: previous declaration of
    `ficlStackPushInteger'
    ficlplatform/win32.c:354: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:355: error: parse error before '->' token
    ficlplatform/win32.c:367: warning: parameter names (without
    types) in function d
    eclaration
    ficlplatform/win32.c:367: error: conflicting types for `free'
    /usr/i686-pc-mingw32/include/stdlib.h:354: error: previous
    declaration of `free'

    ficlplatform/win32.c:367: warning: data definition has no
    type or storage class
    ficlplatform/win32.c:368: error: parse error before '}' token
    ficlplatform/win32.c:291: error: storage size of `fixups'
    isn't known
    --end build log--

     
  • Lucas Thode

    Lucas Thode - 2004-12-01

    My Cygwin makefile

     
  • Lucas Thode

    Lucas Thode - 2004-12-01

    My cygwin32.c

     

Log in to post a comment.