java 11 gc log path in Windows change file separator - java-11

Java AdoptOpen 11.0.13
I'm running the following java command in a Windows Server 2016 operating system:
java -Xlog:gc*:file="C:\users\test_gc.log" -version
I would like to be able to do:
java -Xlog:gc*:file="C:/users/test_gc.log" -version
But this fails. In java 8, however, this was acceptable, and the quotes weren't required due to its xloggc syntax.
Is there a way to tell java 11 which file separator to use?
The loss of a universal forward slash in my paths has been wreaking havoc with running software in windows that has multiple embedded 3rd-party java components, as each embedded component parses the backslashes differently. Right now I have a combination of single backslashes, double backslashes, and even 4 backslashes as path separators for different java components. Two components even crash due to the quotes, although somehow they start up fine without any quotes.

Related

How can you change the perl 6 version you are using or install a new module for the one Comma uses?

When I start a new project in Comma, it pops up the version I am going to use. Instead of allowing me to select from every version in my rakudobrew list, there's a single option, which is not the one I have selected on the command line. When I run a script, it does not find the modules that are already installed. So how can I
Change the version of Perl 6 it's using for the current project? Or else
How can I install the module it's not finding from Comma IDE?
I can of course get out of comma, change the global Rakudo version, install the module, and then go back to whichever I'm using, but I was wondering how to do that from Comma itself.
To change Perl 6 SDK for the project you go to File -> Project Settings and select project's SDK. Usually it suggests you to choose from not SDKs available from rakudobrew, but one available in your PATH(global, possibly not configured by rakudobrew for this particular shell). So it looks like Perl 6 you have in PATH is not the one that you use from the command line, so the modules are not available.
Clicking on New -> Perl 6 SDK in Project Settings you can manually specify a path to a Perl 6 bin directory you want to have as an SDK, so for rakudobrew you should specify e.g. /home/$user/.rakudobrew/versions/moar-2019.07/install/bin directory. If it will be the same location you have in which perl6 in your command line where you install modules, it should work.
Right now Comma does not do things related to package management, though this feature is planned.

Using wxGTK without X

We are trying to cross compile the wxGTK (2.8.12) to our ARMv5 embedded device.
Since RAM space is limited to 64MB, we thought of not using X11.
So, we have built DirectFB and GTK+ (with gdktarget as directfb and without x).
Now, we are trying to build wxGTK with GTK+. But it seems like, it need X11 header files. Got following compiler errors:
./src/unix/utilsx11.cpp:31:22: warning: X11/Xlib.h: No such file or directory
./src/unix/utilsx11.cpp:33:23: warning: X11/Xutil.h: No such file or directory
./src/unix/utilsx11.cpp:40:22: warning: gdk/gdkx.h: No such file or directory
./src/unix/utilsx11.cpp:44: error: ‘Atom’ does not name a typeenter code here
....
Is it possible to build wxGTK with GTK+ (directfb) but without X?
Thanks,
Hari
wxGTK requires GTK+ and, while GTK+ can use different backends, notably Wayland, it's unlikely to be available on your device.
You could try building wxDirectFB instead, but wxDFB is a very alpha-quality port which hasn't been in use since quite some time, so you should be ready to do some work on it yourself in order to implement the missing parts (there will definitely be at least some).
There is a minimalist GNOME implementation based on the GTK+. It is based on the X11 and GTK+. It can be build using OpenEmbedded or probably downloaded as prebuilt WM.
Now looking at it I think you can try GNOME Embedded with wxGTK.

Convert a tcl file to a exe fail

I've tried to convert a tcl file to a exe file by using FREEWRAP.EXE .
It works on most of the files, but there is one file which includes a line of code "load TLTcl.dll " which will always fail.
When I run the tcl file with activetcl, it was fine.
Since I convert the tcl file to a exe file and put TLTcl.dll on the same folder with it, the exe always crash while executing.
I wonder how to load a dll file in the tcl file when I turn a tcl to a exe.
Thanks a lot !
puts "Starting FLASH script"
puts "FLASH write will be performed now, make sure you have an extra flash... "
#load 10 lira tcl DLL
load TLTcl.dll
It sounds like TLTcl.dll was not built with stubs support, which means that it links against a real tcl.dll (possibly with a version number in the name) and freewrap doesn't use that; it uses a statically-linked build so that the whole system can be a simply-redistributable file.
You'll need to rebuild TLTcl.dll with stubs support enabled (assuming it is a DLL that implements a Tcl extension). That's not usually too difficult, as it is a matter of defining the USE_TCL_STUBS preprocessor symbol when compiling all the files, and linking against the tclstub static library; it probably has the version number embedded in the filename (and the version of the Tcl headers you compile with and the stub library you link with must match). Note that it is a property of Tcl's API that if you build against the Tcl 8.5 stubbed API, you can be loaded into a Tcl 8.6 interpreter. (Indeed, that level of forward compatibility is there from about 8.0.6† through to 8.7, which is still in active development so you won't be using it yet.)
†This was a version that was only released to a few commercial partners. Everyone else used newer supported versions.

Bamboo variable replacement in batch file

We're running Atlassian's Bamboo build server 4.1.2 on a Windows machine. I've created a batch file that is executed within a Task. The script is just referenced in a .bat file an not inline in the task. (e.g. createimage.bat)
Within the createimage.bat, I'd like to use Bamboo's PLAN variables. The usual variable syntax is not working, means not replaced. A line in the script could be for example:
goq-image-${bamboo.INTERNALVERSION}-SB${bamboo.buildNumber}
Any ideas?
You are using the internal Bamboo variables syntax, but the Script Task passes those into the operating system's script environment and they need to be referenced with the respective syntax accordingly, e.g. (please note the underscores between terms):
Unix - goq-image-$bamboo_INTERNALVERSION-SB$bamboo_buildNumber
Windows - goq-image-%bamboo_INTERNALVERSION%-SB%bamboo_buildNumber%
Surprisingly, I'm unable to find an official reference for the Windows variation, there's only Using variables in bash right now:
Bamboo variables are exported as bash shell variables. All full stops
(periods) are converted to underscores. For example, the variable
bamboo.my.variable is $bamboo_my_variable in bash. This is related to
File Script tasks (not Inline Script tasks).
However, I've figured the Windows syntax from Atlassian's documentation at some point, and tested and used it as documented in Bamboo Variable Substitution/Definition:
these variables are also available as environment variables in the Script Task for example, albeit named slightly different, e.g.
$bamboo_custom_aws_cfn_stack_StringWithRegex (Unix) or
%bamboo_custom_aws_cfn_stack_StringWithRegex% (Windows)

YACC compile error

I am compiling a YACC file using Cygwin shell on a PC. I am getting an 'unknown character \15'. The weird thing is that a co-worker on another machine can compile the exact same file using the same shell with no warnings or errors. Is there some kind of flag I need to set in my shell or with the compiler? We are using nmake and a Visual Studio compiler. I will be happy to provide more info if needed.
Thank you very much!
Check your end-of-line settings. You probably have CRLF and YACC expects LF only. CR is ASCII 13 (15 in octal).
When you install cygwin you get asked about what the default EOL (end of line) should be, traditional unix "\n" or traditional dos "\r\n". My guess is that you and your co-worker have cygwin configured differently. You probably want to run your setup.exe again and select dos EOL.
Octal 15 is a carriage return. Did you transfer the file in text mode from your coworker's machine?