- edited description
parsec and mingw64 (for PaStiX - CalculiX)
Hi, I try compiled parsec in mingw64 but I have this errors (another error occurred after "fixing" the previous one; 1 fix → 2 fix → 3 and so on):
1. fix: replace file parsec_config_bottom.h
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/include/parsec/parsec_config_bottom.h:172:12: fatal error: parsec/win32/win_compat.h: No such file or directory
172 | # include "parsec/win32/win_compat.h"
2. fix: replace file installdirs.c
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/utils/installdirs.c:83:9: error: unknown type name 'HKEY'
83 | HKEY parsec_key;
3. fix: replace file mca_param.c
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/utils/mca_param.c:100:36: error: unknown type name 'HKEY'
100 | static int read_keys_from_registry(HKEY hKey, char *sub_key, char *current_name);
4. fix: replace file output.c
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/utils/output.c:64:5: error: unknown type name 'HANDLE'
64 | HANDLE ldi_syslog_ident;
5. fix: replace file debug.c
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/utils/debug.c:155:10: fatal error: execinfo.h: No such file or directory
155 | #include <execinfo.h>
6. fix: replace files dbpreader.c, CMakeLists.txt, parsec_options.h.in (https://bitbucket.org/icldistcomp/parsec/pull-requests/440/mmap-fix)
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/tools/profiling/dbpreader.c:14:10: fatal error: sys/mman.h: No such file or directory
14 | #include <sys/mman.h>
7. fix: replace file CMakeLists.txt (replace all c1x → c99)
[ 12%] Linking C executable testgraph.exe
/bin/sh: -latomic: command not found
8. fix: replace file jdf2c.c
E:/msys64_test/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: CMakeFiles/parsec_ptgpp.dir/objects.a(jdf2c.c.obj):jdf2c.c:(.text+0x1388a): undefined reference to `fsync'
9. fix: replace file parsec_description_structures.h
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/include/parsec/parsec_description_structures.h:60:29: error: expected ';', ',' or ')' before '.' token
60 | #define rop2 u_expr.range.op2
10. fix: replace file execution_stream.h
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/include/parsec/execution_stream.h:27:10: fatal error: sys/resource.h: No such file or directory
27 | #include <sys/resource.h>
11. fix: replace file Manual edit winuser (INPUT,*PINPUT,*LPINPUT
→ INPUT1,*PINPUT,*LPINPUT
)
E:/msys64_test/mingw64/x86_64-w64-mingw32/include/winuser.h:2676:5: error: 'INPUT' redeclared as different kind of symbol
2676 | } INPUT,*PINPUT,*LPINPUT;
12. fix: replace file parsec.c ()
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/parsec.c:182:76: error: 'parsec_runtime_bind_main_thread' undeclared (first use in this function)
182 | if( (0 != startup->virtual_process->vp_id) || (0 != startup->th_id) || parsec_runtime_bind_main_thread ) {
13. fix: replace file profiling.c
E:/msys64_test/usr/local/mfaverge-parsec-6.0.2/parsec/profiling.c:480:18: error: '_SC_PAGESIZE' undeclared (first use in this function); did you mean 'USN_PAGE_SIZE'?
480 | ps = sysconf(_SC_PAGESIZE);
These patches allowed me to get the libparsec.a library, I attach files with patch to verify correctness.
I am not a programmer so some fixes are just commented code (9, 12, 13).
Please look: https://bitbucket.org/icldistcomp/parsec/issues/270/parsec-and-mingw64
Comments (3)
-
reporter -
reporter - edited description
-
reporter Update: please see: https://bitbucket.org/icldistcomp/parsec/pull-requests/437
and:
- Log in to comment