Page 1 of 1

msys make throwing access violation only when run from CL

Posted: Fri Nov 18, 2016 2:21 am
by zetaPRIME
CodeLite version 9.2.6 (not self-compiled)
OS: Windows 8 x64
Compiler: msys make as custom build command; MSYS-1.0.17 as included in DevkitARM for 3DS homebrew development

For whatever reason, make doesn't work at all from CL even though it works perfectly from a terminal.
Build output:

Code: Select all

MESSAGE: Entering directory `D:\3DSdev\starlauncher'
C:\WINDOWS\system32\cmd.exe /C make
----------Building project:[ StarLauncher - Debug ]----------
      0 [main] make 17568 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
  11923 [main] make 17568 open_stackdumpfile: Dumping stack trace to make.exe.stackdump
====0 errors, 0 warnings====
Stack dump file:

Code: Select all

MSYS-1.0.17 Build:2011-04-24 23:39
Exception: STATUS_ACCESS_VIOLATION at eip=6574694C
eax=FFFFFFFF ebx=6172676F ecx=0000003B edx=6089C601 esi=6946206D edi=2F73656C
ebp=65646F43 esp=0028EF70 program=D:\devkitPro\msys\bin\make.exe
cs=0023 ds=002B es=002B fs=0053 gs=002B ss=002B
Stack trace:
Frame     Function  Args
 597389 [main] make 17568 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
 646592 [main] make 17568 handle_exceptions: Error while dumping state (probably corrupted stack)
And to make matters even more bizarre, it worked fine when I first got this set up, but after setting up code completion search paths it spat out "make: command not found"; adding the relevant paths to the PATH variable within CL results in it finding make but giving the aforementioned error.

(notably, the error doesn't happen if make doesn't find a makefile, so it's not an instantaneous crash, it would seem)

Re: msys make throwing access violation only when run from C

Posted: Fri Nov 18, 2016 3:00 am
by eranif
Try starting CodeLite from within the MSYS terminal

Re: msys make throwing access violation only when run from C

Posted: Fri Nov 18, 2016 3:49 am
by zetaPRIME
Almost no change, but it does give a partial stack trace now:

Code: Select all

MSYS-1.0.17 Build:2011-04-24 23:39
Exception: STATUS_ACCESS_VIOLATION at eip=6085A9DA
eax=60E93834 ebx=00000000 ecx=00000000 edx=60E93838 esi=0028E6E0 edi=472F7365
ebp=0028EAE8 esp=0028D6D0 program=D:\devkitPro\msys\bin\make.exe
cs=0023 ds=002B es=002B fs=0053 gs=002B ss=002B
Stack trace:
Frame     Function  Args
0028EAE8  6085A9DA  (00000000, 0028EB50, 472F7365, 0A034A78)
0028EB18  6085CDB6  (00000000, 00000003, 0028EB50, 472F7365)
0028EB38  6080E236  (0028EB50, 472F7365, 0028EB68, 6080E236)
0028EF68  60882726  (6C694620, 472F7365, 622F7469, 2F3A6E69)
1073805 [main] make 12080 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
1099303 [main] make 12080 handle_exceptions: Error while dumping state (probably corrupted stack)

Re: msys make throwing access violation only when run from C

Posted: Fri Nov 18, 2016 9:59 am
by eranif
you probably added some paths to the PATH environment variable that causes make to load some wrong DLLs


I suggest that you remove any changes done to PATH environment variable , start codelite from the MSYS terminal and try again

Re: msys make throwing access violation only when run from C

Posted: Fri Nov 18, 2016 12:12 pm
by zetaPRIME
well, the paths with the correct DLLs are searched first... and if I remove my path modifications it doesn't find make at all despite it still being in the path? also, the path within codelite's environment is still different from within command prompt for whatever reason

Re: msys make throwing access violation only when run from C

Posted: Fri Nov 18, 2016 12:16 pm
by eranif
You can open a terminal (CMD) from within CodeLite and then try run your make program.
The CMD opened from CodeLite should have the save environment as CodeLite uses for launching your make program.

From their, you can run dependency walker or something similar to see what is the difference