Code Monkey home page Code Monkey logo

Comments (12)

jrfonseca avatar jrfonseca commented on June 2, 2024

I'm not sure if mgwhelp.dll intercepts all the entrypoints that Very Sleepy uses.

To be perfectly clear, mgwhelp.dll exports all symbols, but some are straight jumps to dbghelp.dll

How exacly did you integrate mgwhelp.dll with Very Sleepy?

from drmingw.

CyberShadow avatar CyberShadow commented on June 2, 2024

Well, I simply made it load mgwhelp.dll instead of Wine's dbghelp.dll.

Here are the functions Very Sleepy uses:

https://github.com/VerySleepy/verysleepy/blob/master/src/utils/dbginterface.h

from drmingw.

jrfonseca avatar jrfonseca commented on June 2, 2024

Thanks. You can see the functions MgwHelp handles in https://github.com/jrfonseca/drmingw/blob/master/src/mgwhelp32.def

But many funtions (e.g. StackWalk64) don't deal with symbols so passing-trhough is fine

I think the problem is fundamentally that Very Sleepy uses the Unicode functions, where as MgwHelp only intercepts the ASCIII functions.

I suspect that if we implement

  • SymFromAddrW
  • SymGetLineFromAddrW64
  • SymInitializeW

by using their ASCII counterparts as starting point, then things might start working.

from drmingw.

jrfonseca avatar jrfonseca commented on June 2, 2024

I only work on DrMingw in spare time, and there's not much of that lately, so I'm afraid I can't give any ETA.

@CyberShadow, by any chance, is implementing the Unicode entry-points mentioned above something you could help with?

from drmingw.

CyberShadow avatar CyberShadow commented on June 2, 2024

I am still unable to build this project.

Which exact version of MSYS and MinGW are needed? There are dozens of implementations/distributions of the above for Windows.

from drmingw.

jrfonseca avatar jrfonseca commented on June 2, 2024

Which exact version of MSYS and MinGW are needed? There are dozens of implementations/distributions of the above for Windows.

No MSYS needed. MinGW-W64 is needed. I updated BUILD.md with URLs to make it crystal clear --
138ab9d

from drmingw.

CyberShadow avatar CyberShadow commented on June 2, 2024

MinGW-W64 does not come with a make program, thus I can't use the Makefile that CMake generates.

from drmingw.

CyberShadow avatar CyberShadow commented on June 2, 2024

Can you clarify which MinGW-W64 flavor, in particular? The project provides multiple Windows downloads (cygwin, Mingw-builds, and Win-Builds). Mingw-builds is the one without the Make program. I couldn't get Win-Builds to work. The Mingw-builds installer also provides multiple options as to which flavor to install. (POSIX/native threads, sjlj/SEH exception handling, ...)

from drmingw.

jrfonseca avatar jrfonseca commented on June 2, 2024

Any MinGW-W64 flavour should work. Thought a native mingw make (any ) is indeed necessary.

The thing is I always build with cross-compilers. I once built with native mingw-w64 and updated the instructions, but indeed mingw-w64 website nowadays is quite confusing regarding binaries/downloads.

I'm now attempting to build with native mingw from scratch, and will update the instructions.

from drmingw.

jrfonseca avatar jrfonseca commented on June 2, 2024

I'm now attempting to build with native mingw from scratch, and will update the instructions.

Done. @CyberShadow , see https://github.com/jrfonseca/drmingw/blob/master/BUILD.md#native-toolchain

from drmingw.

CyberShadow avatar CyberShadow commented on June 2, 2024

Ahh, thanks. Wasn't aware of mingw32-make. It works now.

I'm going to attempt a 64-bit build as well (as the situation is more dire with 64 bits with Very Sleepy). Will let you know.

from drmingw.

CyberShadow avatar CyberShadow commented on June 2, 2024

Yep, worked with the same MinGW version but s/x32/x64/ s/dwarf/seh/ :

http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/64-bit/threads-win32/seh/x64-4.8.1-release-win32-seh-rev5.7z/download

from drmingw.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.