[PD-dev] Compiling debug mode for GDB on MSYS2 MINGW64

Christof Ressi info at christofressi.com
Fri May 19 13:29:20 CEST 2023


> Thanks for the trick, it could be nice to complete the wiki on 
> http://puredata.info/docs/developer/BuildingPd with at least your approach
That is just an ugly hack and I wouldn't publicy advertize it :-)

BTW, if you can endure the slowness, you can also manually call the 
'msw-app.sh' script like this:

msw/msw-app.sh -s -n <version_suffix>

---

I think the best solution would be to actually support running Pd 
directly from the source tree (like we can already do on Linux and 
macOS). Unfortunately, this is not completely trivial. I just opened a 
ticket for this: https://github.com/pure-data/pure-data/issues/1957

Christof

On 19.05.2023 09:17, Pierre Mallard wrote:
> Hello Chris and everyone,
>
> Thanks for the trick, it could be nice to complete the wiki on 
> http://puredata.info/docs/developer/BuildingPd with at least your 
> approach (mine would require to patch msw/Makefile.am)
> Let me know if it is worth it, I don't have an account there.
>
> Bye
>
> Le jeu. 18 mai 2023 à 13:37, Christof Ressi <info at christofressi.com> a 
> écrit :
>
>     Hi,
>
>     yes, "make app" strips the binaries by default.
>
>     Since autotools/libtool is incredibly slow on Windows, I typically
>     only
>     do "make app" once in the beginning; in my IDE I have a added a
>     custom
>     build step "cp ./src/pd.dll ./pd-0.x.x/bin" that just copies the
>     (unstripped) Pd DLL into the bin folder (assuming I only want to
>     test/debug the Pd core and not one of the externals in "extra").
>
>     Cheers,
>
>     Christof
>
>     On 18.05.2023 12:45, Pierre Mallard wrote:
>     > Hello everyone,
>     >
>     > I have been struggling a few days to achieve using gdb on msys2
>     mingw64.
>     > In case anyone is interested, here is how I finally succeed in
>     using
>     > gdb. Note that I am a newbee on both autotools and pd so maybe
>     there
>     > is a much more straightforward way to do so.
>     >
>     > Edit msw/Makefile.am to add -n for non stripping binaries :
>     > ...
>     >  $(SH) $(top_srcdir)/msw/msw-app.sh -n --sources --builddir
>     > $(top_builddir) $(VERSION)
>     > ...
>     >
>     > Type following commands
>     >  $ ./autogen.sh
>     >  $ cd build
>     >  $ ../configure --enable-debug CFLAGS="-g"
>     >  $ make
>     >  $ make app
>     >
>     > The generated pd.exe in pd-0.53.1 directory correctly execute
>     but with
>     > no symbol in it. To retrieve symbol use libtool --mode=execute as
>     > follows :
>     >
>     > $ libtool --mode=execute gdb --args pd-0.53.1/bin/pd.exe
>     > ...
>     > Reading symbols from pd-0.53.1/bin/pd.exe...
>     > (gdb) b main
>     > Breakpoint 1 at 0x140001464: file ../../src/s_entry.c, line 30.
>     > (gdb)
>     >
>     > And this is it !
>     >
>     > I'm using following pure-data sources :
>     > branch master, last commit :
>     > commit 3fde7100fcfb8fd0debb4e5f1b4c264e053a6254
>     > Thu Apr 20 16:36:54 2023 +0200
>     >
>     >
>     > _______________________________________________
>     > Pd-dev mailing list
>     > Pd-dev at lists.iem.at
>     > https://lists.puredata.info/listinfo/pd-dev
>
>
>
>     _______________________________________________
>     Pd-dev mailing list
>     Pd-dev at lists.iem.at
>     https://lists.puredata.info/listinfo/pd-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20230519/1adcc331/attachment.htm>


More information about the Pd-dev mailing list