$ mingw32-make
cd interpreter; ./config.sh
Config: PO locks enabled
C:/msys64/mingw64/bin/mingw32-make -C parser/build
mingw32-make[1]: Entering directory 'C:/parasail/parser/build'
cd ayacc; gnatmake -I../../../aflex_ayacc/ayacc ../../../aflex_ayacc/ayacc/ayacc.adb -o ../bin/ayacc
gnatmake: "../bin/ayacc.exe" up to date.
cd aflex; gnatmake -I../../../aflex_ayacc/aflex -I../../../aflex_ayacc/aflex/GEN ../../../aflex_ayacc/aflex/aflex.adb -o ../bin/aflex
gnatmake: "../bin/aflex.exe" up to date.
mingw32-make[1]: Leaving directory 'C:/parasail/parser/build'
cd testsuite/ParaSail; ../support/clean.sh
cd testsuite/Sparkel; ../support/clean.sh
cd testsuite/Parython; ../support/clean.sh
cd testsuite/Javallel; ../support/clean.sh
gprbuild -p -p -g -O0 -gnato -gnata -gnatE -gnat95 -P build/parasail -largs
gprbuild: "parasail_main.exe" up to date
gprbuild -p -c -P build/compiled_main -largs -lm
gprbuild -p -c -p -g -O0 -gnato -gnata -gnatE -gnat95 -P build/compiled_main_with_interp -largs -lm
gprbuild -p -p -g -O0 -gnato -gnata -gnatE -gnat95 -P build/parasail_gtk -largs
Link
[link] parasail_main_gtk.adb
c:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lgtk-win32-2.0
c:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lgdk-win32-2.0
c:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -latk-1.0
c:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lgdk_pixbuf-2.0
collect2.exe: error: ld returned 1 exit status
gprbuild: link of parasail_main_gtk.adb failed
mingw32-make: *** [Makefile:116: parasail_gtk] Error 4
-LC:/msys64/mingw64/lib -lgtk-win32-2.0 -lgdk-win32-2.0 -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid -lpangowin32-1.0 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -pthread -lgthread-2.0 -lintl -lglib-2.0
--
You received this message because you are subscribed to the Google Groups "ParaSail Programming Language" group.
To unsubscribe from this group and stop receiving emails from it, send an email to parasail-programming...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I suggest you omit the GTK executable. It hasn't been tested on windows, and even on the Mac where I do most of my testing, the GTK interface has become pretty flaky.
As far as the direct answer to your question, I have never seen ".dll.a" as a good extension. What does that mean? I am used to seeing ".dll" on Windows, or ".a" on Unix-oids. In general, I am not a Windows expert, and so will be flailing a bit trying to answer questions that touch on system-level issues there.-Tuck
On Thursday, May 2, 2019 at 10:33:26 PM UTC+7, Tucker Taft wrote:I suggest you omit the GTK executable. It hasn't been tested on windows, and even on the Mac where I do most of my testing, the GTK interface has become pretty flaky.I'm not sure I understand. Would parasail only (not parasail_gtk) suffice to make a working compiler? What is, then, the point of parasail_gtk?
As far as the direct answer to your question, I have never seen ".dll.a" as a good extension. What does that mean? I am used to seeing ".dll" on Windows, or ".a" on Unix-oids. In general, I am not a Windows expert, and so will be flailing a bit trying to answer questions that touch on system-level issues there.-Tuck
On Thu, May 2, 2019 at 5:16 AM Zing Chen wrote:
Hello,I'm trying to build ParaSail v8 under Windows 7 - x64 in MSYS2\MINGW64 environment.I'm stuck at parasail_gtk:
...
A .dll.a file is a stub file that describes a .dll which should exist in the run environment but does not exist in the build environment. msys2/mingw64 tool chain (GCC-Ada etc) simulates a *NIX build environment that specifically targets Windows 64-bit environment. So, it is kind of a *NIX-to-64-bit-Windows cross-compiler.Contrary to mingw (or mingw-w64), msys2/mingw64 is more *NIX-like. For example, it can run the pre-built ParaSail interpreter interps.csh.Contrary to msys2 alone (or cygwin), msys2/mingw64 produces more Windows-like executables. For example, theoretically, it can compile a ParaSail compiler that runs on Windows natively, i.e. without installed msys2 or cygwin.That's to my best understanding. I use msys2/mingw64 very occasionally.
Thank you.
...
$ mingw32-make config build_no_gtk build_sparkel build_javallel build_parython test_runtime local-install
$ ./pslc.csh -b3 -O2
llc: Command not found.
# pacman -Ss llvm
mingw32/mingw-w64-i686-clang 8.0.0-2
C language family frontend for LLVM (mingw-w64)
mingw32/mingw-w64-i686-compiler-rt 8.0.0-2
Runtime libraries for Clang and LLVM (mingw-w64)
mingw32/mingw-w64-i686-lld 8.0.0-2
Linker tools for LLVM (mingw-w64)
mingw32/mingw-w64-i686-llvm 8.0.0-2
Low Level Virtual Machine (mingw-w64)
mingw32/mingw-w64-i686-polly 8.0.0-2
Polly - Polyhedral optimizations for LLVM (mingw-w64)
mingw64/mingw-w64-x86_64-clang 8.0.0-2
C language family frontend for LLVM (mingw-w64)
mingw64/mingw-w64-x86_64-compiler-rt 8.0.0-2
Runtime libraries for Clang and LLVM (mingw-w64)
mingw64/mingw-w64-x86_64-lld 8.0.0-2
Linker tools for LLVM (mingw-w64)
mingw64/mingw-w64-x86_64-llvm 8.0.0-2
Low Level Virtual Machine (mingw-w64)
mingw64/mingw-w64-x86_64-polly 8.0.0-2
Polly - Polyhedral optimizations for LLVM (mingw-w64)
msys/clang-svn 60106.1d5b05f-1
C language family frontend for LLVM (mingw-w64)
msys/lld-svn 4595.3511ec1-1
Linker tools for LLVM (mingw-w64)
msys/llvm-svn 124592.2aebced-1
Low Level Virtual Machine (mingw-w64)
...
Should I install all mingw64/xxxx packages from the offer? I wish I knew the exact list of required packages without much trials and errors.
$ ./pslc.csh -b3 -O2
make --silent $make_target OBJS="$objs" EXE="$exe" $silent
mingw32-make --silent $make_target OBJS="$objs" EXE="$exe" $silent
$ ./pslc.csh -b1 -O0
$ ./pslc.csh -b2 -O0
gcc.exe: error: /c/parasail/lib/reflection.psl.o: No such file or directory
gcc.exe: error: /c/parasail/lib/llvm_printer.psi.o: No such file or directory
gcc.exe: error: /c/parasail/lib/llvm_printer.psl.o: No such file or directory
gcc.exe: error: /c/parasail/lib/psvm_debugging.psl.o: No such file or directory
gcc.exe: error: /c/parasail/lib/type_desc_llvm_utils.psi.o: No such file or directory
gcc.exe: error: /c/parasail/lib/type_desc_llvm_utils.psl.o: No such file or directory
gcc.exe: error: /c/parasail/lib/compiler.psi.o: No such file or directory
gcc.exe: error: /c/parasail/lib/compiler.psl.o: No such file or directory
gcc.exe: error: /c/parasail/lib/compiler_main.psl.o: No such file or directory
gcc.exe: error: /c/parasail/lib/aaa.psi.o: No such file or directory
gprbuild: link of compiled_main_with_interp.adb failed
mingw32-make: *** [Makefile:154: compiled_main_with_interp] Error 4
The commandcompleted succesfully: aaa.psi.o was created in directory /c/parasail/lib. On the other hand,
$ ./pslc.csh -b1 -O0has failed:
$ ./pslc.csh -b2 -O0
*** ParaSail Testsuite
Using the ParaSail Compiler
Tests summary
-------------
Num_Tests = 160/167 (Failed = 5)
real 24m47.193s
user 0m7.388s
sys 2m47.545s
output saved in /c/parasail/testsuite/ParaSail/runtests.out
Failed: core_clock div_con fifo_queue_con for_loop_con locked_box
c:\parasail\bin>compiler
ParaSail Interpreter and Virtual Machine Revision: 8.0
Copyright (C) 2011-2019, AdaCore, New York NY, USA
This program is provided "as is" with no warranty.
Report problems at http://groups.google.com/group/parasail-programming-language
Enter input files:
UPDATE. I've installed msys/make package and use the original pslc.csh script (not the modified pslc1.csh which replaces 'make' with 'mingw32-make.exe'. It works.parasail.exe compiled.
I've run the test suit to check that the build is complete. Out of 167 tests, 160 passed, 5 failed, and 2 unknown:
*** ParaSail Testsuite
Using the ParaSail Compiler
Tests summary
-------------
Num_Tests = 160/167 (Failed = 32)
real 23m38.184s
user 0m7.711s
sys 2m47.689s
output saved in /c/parasail/testsuite/ParaSail/runtests.out
Failed: agg_with_iterator core_array2d core_basic_map core_bit_set core_clock core_countable_range core_enum_with_rep core_file core_fixed core_io core_map core_packed core_packed_word core_range_set core_set core_time div_con dp_with_colons dp2 drinking_phils fifo_queue_con for_loop_con hippo_game imat_vec locked_box mapset mat_vec non_univ_string para_hello range_set tokenizer2 wgraph
--
Glad to hear everything built well with default options. Not obvious what might have gone wrong with -O2. Hopefully it was just a temporary "glitch."
$ bin/pslc.csh examples/fib.psl
psc-interpreter.adb:11431: Error: invalid data
Runtime error: Exception CONSTRAINT_ERROR propagated.
Executing [null] at PC 1
Routine address = 16#8E_A230#
Locals at 16#6A1_BBD0#
Runtime error: Execute_For_Thread: PSC.INTERPRETER.PROPAGATING_EXCEPTION raised.
Runtime error: Internal: Thread_Server 6: PSC.INTERPRETER.PROPAGATING_EXCEPTION raised.
raised PSC.INTERPRETER.PROPAGATING_EXCEPTION : psc-interpreter.adb:17143
C:\msys64\mingw64\bin\llc.exe: error: C:\msys64\mingw64\bin\llc.exe: examples/fib.psl.ll: error: Could not open input file: No such file or directory
$ bin/pslc.csh examples/hello_main.psl
psc-interpreter.adb:11431: Error: invalid data
Runtime error: Exception CONSTRAINT_ERROR propagated.
Executing [null] at PC 1
Routine address = 16#8E_8FC0#
Locals at 16#49E_4D30#
Runtime error: Execute_For_Thread: PSC.INTERPRETER.PROPAGATING_EXCEPTION raised.
Runtime error: Internal: Thread_Server 3: PSC.INTERPRETER.PROPAGATING_EXCEPTION raised.
raised PSC.INTERPRETER.PROPAGATING_EXCEPTION : psc-interpreter.adb:17143
call_compiled_main.o: In function `_ada_call_compiled_main':
C:/parasail/interpreter/call_compiled_main.adb:128: undefined reference to `_parasail_main_routine'
C:/parasail/interpreter/call_compiled_main.adb:109: undefined reference to `_parasail_main_routine'
collect2.exe: error: ld returned 1 exit
status
gprbuild: link of call_compiled_main.adb failed
make: *** [Makefile:150: compiled_main] Error 4
*** ParaSail Testsuite
Using the ParaSail Compiler
Tests summary
-------------
Num_Tests = 160/167 (Failed = 5)
real 24m43.985s
user 0m6.768s
sys 2m47.478s
output saved in /c/parasail/testsuite/ParaSail/runtests.out
Failed: div_con fifo_queue_con for_loop for_loop_con locked_box
$ cd c:/parasail
$ make config build_no_gtk test_runtime local-install
$ bin/pslc.csh -b3 [-O2]
The c-shell scripts are not very complicated, so you could probably hand translate to the "normal" shell if you wanted to.
Take care,-Tuck
The handful of failures in the test suite are expected, as a number of these tests have inevitable load dependence due to potential thread scheduling differences, and so their saved output is not always identical.
The "-O2" problem is a mystery. Try passing in "-i" to pslc.csh to verify that the "interpreted" compiler is doing the right thing. E.g.:pslc.csh -i examples/fib.psl
$ bin/pslc.csh -i -O2 examples/fib.psl -o fib
c:\parasail>fib 50
Fib(50) = 12586269025
c:\parasail>
When you rebuild with -O2, are you using "-b3" to rebuild everything, or are you using "-b2" to only rebuild the compiler? It would be interesting to see whether the results are different.
Do you feel up to using the "gdb" that comes with the Ada compiler to try to diagnose what is happening? If so, I can give you some instructions.Take care,-Tuck
I've reported an -O2 version that fails "only" 32 tests. It was built with mingw32-make. (Except the final pslc.csh -b2 -O2 which uses make instead. I hoped that plsc.csh and Makefile were made to be Windows-friendly. I was wrong.) I can't reproduce that version. Every later trial following the same procedure results in a compiler that crashes in almost all cases.
--
To view this discussion on the web visit https://groups.google.com/d/msgid/parasail-programming-language/CAFcdWfXTo5Pjw1YYDw4gMrGXQJGXYH89CtWmrNhfyujx6D5-8A%40mail.gmail.com.
Yes, this is a known bug. I have attached a version of lib/compiler.psl that fixes this problem. Just replace your existing lib/compiler.psl with this file (after changing its name to "compiler.psl").Take care,-Tuck
On Thu, Jul 29, 2021 at 6:06 PM Zing Chen wrote:
With llvm+clang v12 I can no longer compile the compiler. The following error was reported for Parasail v8.4.$ bin/pslc.csh -b3 -O2Installing Debugging Console!
the third field of the element type is mandatory, specify i8* null to migrate from the obsoleted 2-field form
llc: error: 'C:/parasail/lib/aaa.psi.ll': input module cannot be verified
--On Tue, May 7, 2019 at 4:38 AM Zing Chen wrote:--
On Monday, May 6, 2019 at 1:37:13 AM UTC+7, Zing Chen wrote:I've reported an -O2 version that fails "only" 32 tests. It was built with mingw32-make. (Except the final pslc.csh -b2 -O2 which uses make instead. I hoped that plsc.csh and Makefile were made to be Windows-friendly. I was wrong.) I can't reproduce that version. Every later trial following the same procedure results in a compiler that crashes in almost all cases.I made advance a bit today. I found that -O2 compiler works, i.e. it doesn't crash, as long as it is linked with -O0 library.0. Already have a compiler built with -b3 [-O0], which works (reported earlier).1. Made library with -b1 -O0. The -O0 compiler was used. The library is already -O0 so this step is redundant, but that's what I did.2. Made compiler with -b2 -O2. The -O0 compiler was used. The new compiler (with -O0 library) fails only 4 tests.3. Made library with -b1 -O2. The -O2 compiler (with -O0 library) was used. The compiler + the new -O2 library (linked with test samples) fails 31 tests.4. Rolled back step 2 - 3 and made a library with -b1 -O2 using the pure -O0 compiler. The pure -O0 compiler + the new -O2 library linked with test samples fails "only" 30 tests.Thank you for reading.-Zing
You received this message because you are subscribed to the Google Groups "ParaSail Programming Language" group.
To unsubscribe from this group and stop receiving emails from it, send an email to parasail-programming...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
You received this message because you are subscribed to the Google Groups "ParaSail Programming Language" group.
To unsubscribe from this group and stop receiving emails from it, send an email to parasail-programming...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/parasail-programming-language/7ce1b263-9239-40bc-9011-ef37e1cd3d53n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/parasail-programming-language/b310dadf-2164-4175-bca7-4f886cc092fbn%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/parasail-programming-language/7cb9dd79-d887-416a-9745-c933c587e292n%40googlegroups.com.
Without -O2, the command produces a working compiler. With -O2 it results in a broken compiler.
Following are output of compiling the example fib.psl.
Working compiler:
$ ../bin/pslc.csh -O2 fib.psl -o fib
$ ./fib 30
Fib(30) = 832040
Broken compiler:
$ ../bin/pslc.csh fib.psl
psc-interpreter.adb:11873: Error: invalid data
Runtime error: Exception CONSTRAINT_ERROR propagated.
Executing [null] at PC 1
Routine address = 16#1_3FC5_F930#
Locals at 16#4B3_4AB0#
Runtime error: Execute_For_Thread: PSC.INTERPRETER.PROPAGATING_EXCEPTION raised.
Runtime error: Internal: Thread_Server 5: PSC.INTERPRETER.PROPAGATING_EXCEPTION raised.
raised PSC.INTERPRETER.PROPAGATING_EXCEPTION : psc-interpreter.adb:17719
To view this discussion on the web visit https://groups.google.com/d/msgid/parasail-programming-language/19fa6174-ef52-4477-a050-bcf4b9b38f0cn%40googlegroups.com.
Like -O2
, the -O2 -a
results in a broken compiler:
$ ../bin/pslc.csh -O2 fib.psl -o fib
psc-interpreter.adb:11873: Error: invalid data
Runtime error: Exception CONSTRAINT_ERROR propagated.
Executing [null] at PC 1
Routine address = 16#1_3F71_68E0#
Locals at 16#2C7_3870#
Runtime error: Execute_For_Thread: PSC.INTERPRETER.PROPAGATING_EXCEPTION raised.
Runtime error: Internal: Thread_Server 4: PSC.INTERPRETER.PROPAGATING_EXCEPTION raised.
raised PSC.INTERPRETER.PROPAGATING_EXCEPTION : psc-interpreter.adb:17719
C:\msys64\mingw64\bin/llc.exe: error: C:\msys64\mingw64\bin/llc.exe: fib.psl.ll: error: Could not open input file: No such file or directory
Pls find in the attached file complete log of the 3 trial builds of the compiler (no additional option, with -O2
and with -O2 -a
).
Indeed, the working compiler (one resulted from -i -k -b3 -w -d
) compiles better in -O2
mode. For example, the fib.exe
resulted from pslc.csh -O2 fib.psl
can compute fib(50)
while one resulted from pslc.csh fib.psl
can compute only fib(30)
. The fib(40)
raises STORAGE_ERROR.
Thank you for consideration.
-Zing.