Skip to content

Fail to compile the source files on Windows11 #127

@topfyf

Description

@topfyf

I downloaded the headers of boost1.83.0 under Windows11, and failed to compile the files in src/.

I used MinGW and the Makefile Makefile_mingw to build, and got the error outputs:

System.cpp: In member function 'int System::RunThreadsSTL()':
System.cpp:463:10: error: 'thread' was not declared in this scope
   vector<thread *> threads;
          ^~~~~~
System.cpp:463:10: note: suggested alternatives:
In file included from C:\boost_1_83_0/boost/thread/thread_only.hpp:22:0,
                 from C:\boost_1_83_0/boost/thread/thread.hpp:12,
                 from C:\boost_1_83_0/boost/thread.hpp:13,
                 from parallel.h:21,
                 from System.cpp:19:
C:\boost_1_83_0/boost/thread/detail/thread.hpp:163:29: note:   'boost::thread'
     class BOOST_THREAD_DECL thread
                             ^~~~~~
In file included from C:\boost_1_83_0/boost/thread.hpp:19:0,
                 from parallel.h:21,
                 from System.cpp:19:
C:\boost_1_83_0/boost/thread/tss.hpp:18:19: note:   'boost::detail::thread'
         namespace thread
                   ^~~~~~
System.cpp:463:18: error: template argument 1 is invalid
   vector<thread *> threads;
                  ^
System.cpp:463:18: error: template argument 2 is invalid
System.cpp:470:11: error: request for member 'resize' in 'threads', which is of non-class type 'int'
   threads.resize(nu);
           ^~~~~~
System.cpp:473:14: error: invalid types 'int[unsigned int]' for array subscript
     threads[k] = new thread(fptr, k);
              ^
System.cpp:473:22: error: expected type-specifier before 'thread'
     threads[k] = new thread(fptr, k);
                      ^~~~~~
System.cpp:477:14: error: invalid types 'int[unsigned int]' for array subscript
     threads[k]->join();
              ^
System.cpp:478:21: error: invalid types 'int[unsigned int]' for array subscript
     delete threads[k];
                     ^
Makefile:94: recipe for target 'System.o' failed
make: *** [System.o] Error 1

Did I do anything wrong?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions