Normally, it is sufficient to grab the Go MSI installer from the website in order to set up the toolchain. However, some packages that provide Go wrappers for C libraries rely on cgo tool, which in turn, needs the GCC toolchain in order to build the glue code. Also, 3rd-party dependencies are usually hosted on services like GitHub, thus Git is also needed. This mini-guide illustrates how to setup a convenient development environment on Windows using MSYS2.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void * | |
luaL_pushcdata(struct lua_State *L, uint32_t ctypeid, uint32_t size) | |
{ | |
/* | |
* ctypeid is actually has CTypeID type. | |
* CTypeId is defined somewhere inside luajit's internal headers | |
* which should not be included in init.h header. | |
*/ | |
static_assert(sizeof(ctypeid) == sizeof(CTypeID), |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(env3) jaten@Jasons-MBP ~/go/src/github.com/cosmos72/gomacro (generate) $ go version | |
go version | |
go version go1.12beta2 darwin/amd64 | |
(env3) jaten@Jasons-MBP ~/go/src/github.com/cosmos72/gomacro (generate) $ time go install -a -toolexec=time -x | |
time go install -a -toolexec=time -x | |
WORK=/var/folders/2x/hm9gp5ys3k9gmm5f_vzm_6wc0000gn/T/go-build619075523 | |
mkdir -p $WORK/b004/ | |
mkdir -p $WORK/b010/ | |
cat >$WORK/b004/importcfg << 'EOF' # internal | |
# import config |
OlderNewer