Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re^2: Unable to install Tk module for Strawberry Perl

by syphilis (Archbishop)
on Jan 20, 2024 at 23:55 UTC ( [id://11157130]=note: print w/replies, xml ) Need Help??

in reply to Re: Unable to install Tk module for Strawberry Perl
in thread Unable to install Tk module for Strawberry Perl

Hopefully I'll get a chance to look into the issue I had 5.38.

The solution posted at was to replace typedef unsigned long XID in pTk/mTk/xlib/X11/X.h with typedef unsigned long long XID.
This change has already been made to the Tk source available from the github repo at


Replies are listed 'Best First'.
Re^3: Unable to install Tk module for Strawberry Perl
by Anonymous Monk on Apr 14, 2024 at 05:45 UTC
    This doesn't help me install Tk under Strawberry Perl 5.38.2. Issuing the command cpan Tk or any other variation thereof, cranks through the usual thousands of lines of incomprehensibility, including some red errors early on, maybe on something named "pmop" or something like that... But the real point of failure is this incomprehensible C compilation error:
    gcc -c -I. -I./pTk/mTk/xlib -I.. -I.. -I../pTk/mTk/xlib -I. -Ibitmaps + -I.. -I../pTk/mTk/xlib -DWIN32 -DWIN64 -DPERL_TEXTMODE_SCRIPTS -DMUL +TIPLICITY -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D__USE_MINGW_ANSI_STDIO - +fwrapv -fno-strict-aliasing -mms-bitfields -DPERLDLL -Os -falign-func +tions -falign-jumps -falign-labels -falign-loops -freorder-blocks -fr +eorder-blocks-algorithm=stc -freorder-blocks-and-partition -DVERSIO +N=\"804.036\" -DXS_VERSION=\"804.036\" "-IC:\STRAWB~1\perl\lib\CORE" + imgBMP.c In file included from ../pTk/mTk/xlib/X11/Xlib.h:31, from tkWinPort.h:19, from tkPort.h:32, from tk.h:87, from imgBMP.c:11: ../pTk/mTk/xlib/X11/X.h:182:34: error: expected identifier or '(' befo +re numeric constant 182 | #define ControlMask (1<<2) | ^
    This is very strange as this is the third successive line of pretty much the same format: "#define _____ (1<<_)" , but the first two lines are apparently acceptable as they stand. The only outstanding difference in this line is that "ControlMask" as a string is long enough that it moves the definition "(1<<2)" to the next tab stop, as compared to the two preceding lines. I also can't reproduce the error in a simple test program that simply does a "#include tk.h".

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11157130]
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others browsing the Monastery: (8)
As of 2024-05-22 15:42 GMT
Find Nodes?
    Voting Booth?

    No recent polls found