Open dtrehas opened 7 years ago
OS?
$ go version
go version go1.7.5 windows/amd64
$ gcc --version
gcc (x86_64-win32-seh-rev0, Built by MinGW-W64 project) 5.3.0
$ go get -x github.com/sciter-sdk/go-sciter
...
$ cd %GOPATH%\src\github.com\sciter-sdk\go-sciter\examples\simple
$ go build -v .
github.com/sciter-sdk/go-sciter
github.com/sciter-sdk/go-sciter/window
github.com/sciter-sdk/go-sciter/examples/simple
$ dir /b
simple.exe
simple.go
simple.html
Hmm.. again..
gcc (i686-posix-dwarf-rev1, Built by MinGW-W64 project) 6.3.0 go version go1.7.4 windows/amd64 GOARCH=386 C:\Programming\sciter404\bin**32**>
C:\Programming> go get -x gopkg.in/sciter-sdk/go-sciter.v4 cd . git clone https://gopkg.in/sciter-sdk/go-sciter.v4 C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4 cd C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4 git submodule update --init --recursive cd C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4 git show-ref cd C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4 git submodule update --init --recursive WORK=C:\Users\user\AppData\Local\Temp\go-build339351674 mkdir -p $WORK\gopkg.in\sciter-sdk\go-sciter.v4_obj\ mkdir -p $WORK\gopkg.in\sciter-sdk\ cd C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4 "C:\Programming\Go.1.7\pkg\tool\windowsamd64\compile.exe" -o "C:\Users\user\AppData\Local\Temp\go-build339351674\gopkg.in\sciter-sdk\go-sciter.v4.a" -trimpath "C:\Users\user\AppData\Local\Temp\go-build339351674" -p gopkg.in/sciter-sdk/go-sciter.v4 -complete -buildid c6149786f3bee21c9adb1bf52c598df0e4fc44b7 -D /C_/Programming/GOPATH/src/gopkg.in/sciter-sdk/go-sciter.v4 -I "C:\Users\user\AppData\Local\Temp\go-build339351674" -I "C:\Programming\GOPATH\pkg\windows_386" -pack "C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\generate.go" "C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go" "C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\value.go" "C:\Programming\GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\wrapper.go"
GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:27: undefined: BehaviorEvent GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:62: undefined: MouseEvent GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:78: undefined: CursorType GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:89: undefined: KeyEvent GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:100: undefined: FocusEvent GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:111: undefined: ScrollEvent GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:122: undefined: GestureCmd GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:139: undefined: GestureState GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:171: undefined: GestureTypeFlag GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:197: undefined: DrawEvent GOPATH\src\gopkg.in\sciter-sdk\go-sciter.v4\types_string.go:197: too many errors
Is anything wrong with the gcc compiler?
I'm suspecting that stringer can not be built.
And this is a problem that I detected when M$ VS Code editor could not compile tools based to golang.org/x/tools. Stringer is one of that.
Many people complained about this issue. I'm suspecting there is a block downloading these tools
What is stringer?
GOARCH=386
I haven't tried cross-compilation yet.
It seems that when i m using 32-bit go compiler the compilation works. It fails immediately (obviously) when GOARCH=amd64 but gives all the aforementioned errors when GOARCH=386
(1) install mingw32 and mingw64
C:\mingw32
C:\mingw64
set system environment, add C:\mingw32\bin and C:\mingw64\bin to path
confirm install well, you can test in cmd, well see it below :
d:\>i686-w64-mingw32-gcc
i686-w64-mingw32-gcc: fatal error: no input files
compilation terminated.
d:\>x86_64-w64-mingw32-gcc
x86_64-w64-mingw32-gcc: fatal error: no input files
compilation terminated.
(2) golang install amd64 version, not to use 386 version
d:\>go version
go version go1.8.1 windows/amd64
(3) cross-compilation
REM 32-bit build:
set CGO_ENABLED=1
set GOARCH=386
set GOOS=windows
set CC=i686-w64-mingw32-gcc
go build -ldflags "-H windowsgui -w -s" -o demo_windows_386.exe
REM 64-bit build:
set CGO_ENABLED=1
set GOARCH=amd64
set GOOS=windows
set CC=x86_64-w64-mingw32-gcc
go build -ldflags "-H windowsgui -w -s" -o demo_windows_amd64.exe
you can put it to .bat file
@huxiyu Awesome!
It can work now. CC=x86_64-w64-mingw32-gcc CGO_ENABLED=1 GOOS=windows go build .
need set CGO_ENABLED=1
, when I cross compile, CGO_ENABLED
need set again?
============================================================== I have encountered the same problem when I compile from linux to windows.
$/usr/bin/x86_64-w64-mingw32-gcc --version
x86_64-w64-mingw32-gcc (GCC) 6.3.0 20170516
$go version
go version go1.11.2 linux/amd64
$CC=/usr/bin/x86_64-w64-mingw32-gcc GOOS=windows GOARCH=amd64 go build .
# github.com/sciter-sdk/go-sciter
../../github.com/sciter-sdk/go-sciter/types_string.go:27:9: undefined: BehaviorEvent
../../github.com/sciter-sdk/go-sciter/types_string.go:62:9: undefined: MouseEvent
../../github.com/sciter-sdk/go-sciter/types_string.go:78:9: undefined: CursorType
../../github.com/sciter-sdk/go-sciter/types_string.go:89:9: undefined: KeyEvent
../../github.com/sciter-sdk/go-sciter/types_string.go:100:9: undefined: FocusEvent
../../github.com/sciter-sdk/go-sciter/types_string.go:111:9: undefined: ScrollEvent
../../github.com/sciter-sdk/go-sciter/types_string.go:122:9: undefined: GestureCmd
../../github.com/sciter-sdk/go-sciter/types_string.go:139:9: undefined: GestureState
../../github.com/sciter-sdk/go-sciter/types_string.go:171:9: undefined: GestureTypeFlag
../../github.com/sciter-sdk/go-sciter/types_string.go:197:9: undefined: DrawEvent
../../github.com/sciter-sdk/go-sciter/types_string.go:197:9: too many errors
Typing go get -x github.com/sxiter-sdk/go-sciter displays..
github.com/sciter-sdk/go-sciter
src\github.com\sciter-sdk\go-sciter\types_string.go:27: undefined: BehaviorEvent src\github.com\sciter-sdk\go-sciter\types_string.go:62: undefined: MouseEvent src\github.com\sciter-sdk\go-sciter\types_string.go:78: undefined: CursorType src\github.com\sciter-sdk\go-sciter\types_string.go:89: undefined: KeyEvent src\github.com\sciter-sdk\go-sciter\types_string.go:100: undefined: FocusEvent src\github.com\sciter-sdk\go-sciter\types_string.go:111: undefined: ScrollEvent src\github.com\sciter-sdk\go-sciter\types_string.go:122: undefined: GestureCmd src\github.com\sciter-sdk\go-sciter\types_string.go:139: undefined: GestureState src\github.com\sciter-sdk\go-sciter\types_string.go:171: undefined: GestureTypeFlag src\github.com\sciter-sdk\go-sciter\types_string.go:197: undefined: DrawEvent src\github.com\sciter-sdk\go-sciter\types_string.go:197: too many errors
Is it something I haven't done properly?