[PD-dev] cross-compiling linus-to-windows 64 bit using automake

Lucas Cordiviola lucarda27 at hotmail.com
Wed Feb 21 04:48:37 CET 2018


@ Miller:

Can you try deleting this 32bit files from your pd/bin (from your tk/tcl 
8.6.8 test).

pthreadVC.lib
msvcr90.dll
msvcrt.dll
pthreadVC.dll

it could be that "msvcrt.dll" is making troubles to Wine.

I'm not sure why is not the case with wish85 builds. :/


--

Mensaje telepatico asistido por maquinas.

On 2/19/2018 9:04 PM, Lucas Cordiviola wrote:
>> I guess it's working fine for you - and I guess you're compiling it
>> on windows (not cross-compiling form linux, correct)?
> Yes.
>
>> I should have mentioned that not only do I get garbage but also it
>> doesn't work in the first place (no GUI appears) when I compile it.
> Very strange.
>
> If you could do it with "wish85.exe 64 bit", why not with 86?
>
> I leave this for the experts.
>
> :)
>
> Mensaje telepatico asistido por maquinas.
>
> On 2/19/2018 8:15 PM, Miller Puckette wrote:
>> I guess it's working fine for you - and I guess you're compiling it
>> on windows (not cross-compiling form linux, correct)?
>>
>> I should have mentioned that not only do I get garbage but also it
>> doesn't work in the first place (no GUI appears) when I compile it.
>>
>> cheers
>> Miller
>>
>> On Mon, Feb 19, 2018 at 10:23:42PM +0000, Lucas Cordiviola wrote:
>>> It all builds fine and I'm able to run wish86.exe all right; but when I try
>>> to test it as in:
>>>
>>> wine pd-0.48-1test2-ia64/bin/wish86.exe `pwd`/pd-0.48-1test2-ia64/tcl/pd-gui.tcl
>>>
>>> I get signs of memory corruption that I haven't been able to track down (my
>>> debugging statements in pd-gui.tcl generate binary garbage).  This seems to
>>> be an interaction between wine and tcl/tk and is almost certainly too deep
>>> for me to figure out.
>>>
>>>
>>> I have a Windows MinGW64 build using "wish86.exe" (64-bit) --> http://lucarda.com.ar/x/Pd-0.48-1-all-w64.zip
>>>
>>> What do I have to type in the cmd to test if i get "binary garbage"?
>>>
>>> Note: building on Windows with Msys2 I get the correct 64bit "libwinpthread-1.dll" copied to pd/bin.
>>>
>>>
>>> --
>>>
>>> Mensaje telepatico asistido por maquinas.
>>>
>>> On 2/19/2018 6:42 PM, Miller Puckette wrote:
>>>
>>> I'm able to sucessfuilly cross-compile 64-bit windows targets from linux
>>> now, albeit a bit shakily.  Here's what I've found so far:
>>>
>>> 'libtool' has a library dependency, -lmsvcrt , which breaks compilation.  It
>>> works just to delete it.
>>>
>>> Somehow a 32-bit version of libwinpthread-1.dll gets installed - I have to
>>> manually replace it with a 64-bit one.
>>>
>>> and... try as I might I still can't get it working with tcl/tk 8.6 - I have to
>>> yse 8.5.  More on that later.
>>>
>>> My compilation steps currently look like this (after making a clean directory
>>> to put it in, /home/msp/bis/work/pd-versions/build-dirs/test85):
>>>
>>> v=0.48-1test3-ia64
>>> tkversion=8.5.19
>>> s=/home/msp/tmp/clean-pd-source
>>>
>>> git clone ~/pd $s
>>> cd $s
>>> ./autogen.sh
>>> cd /home/msp/bis/work/pd-versions/build-dirs/test85
>>> $s/configure --host=x86_64-w64-mingw32 CPPFLAGS='-DPD_LONGINTTYPE=__int64'
>>> sed -i '/-lmsvcrt/s/-lmsvcrt//g' libtool
>>> make
>>> cd msw
>>> cp -a /home/msp/bis/work/pd-versions/build-tk-on-win64/msw/tcltk-$tkversion .
>>> /home/msp/bis/work/pd-versions/build-tk-on-win64/msw/msw-app.sh \
>>>      --builddir ..  --tk tcltk-$tkversion $v
>>> cp /usr/x86_64-w64-mingw32/sys-root/mingw/bin/libwinpthread-1.dll \
>>>      pd-$v/bin/
>>>
>>> (note: I make the clone of the Pd source so I don't have to run automake in my
>>> 'clean' source tree).
>>>
>>> When I try this for 8.6.8 I change the configuration line as follws:
>>> $s/configure --host=x86_64-w64-mingw32 \
>>>       --with-wish=wish86.exe \
>>>       CPPFLAGS='-DPD_LONGINTTYPE=__int64 -DWISH=\"wish86.exe\"'
>>>
>>> It all builds fine and I'm able to run wish86.exe all right; but when I try
>>> to test it as in:
>>>
>>> wine pd-0.48-1test2-ia64/bin/wish86.exe `pwd`/pd-0.48-1test2-ia64/tcl/pd-gui.tcl
>>>
>>> I get signs of memory corruption that I haven't been able to track down (my
>>> debugging statements in pd-gui.tcl generate binary garbage).  This seems to
>>> be an interaction between wine and tcl/tk and is almost certainly too deep
>>> for me to figure out.
>>>
>>> This doesn't seem to be a fatal problem though - if my "test" 64-bit build works
>>> OK I can live with that for at least until 8.7 comes out (and who knows what
>>> problems that might fix and/or introduce)
>>>
>>> cheers
>>> Miller
>>>
>>>
>>> _______________________________________________
>>> Pd-dev mailing list
>>> Pd-dev at lists.iem.at<mailto: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



More information about the Pd-dev mailing list