fedden / poker_ai

πŸ€– An Open Source Texas Hold'em AI

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cannot install on Mac(arm) with m1

marc-shen opened this issue Β· comments

Cannot install on Mac(arm) with m1

% pip3 install .
Defaulting to user installation because normal site-packages is not writeable
Processing /Users/marcshen/program/GitHub/poker_ai
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error
  
  Γ— python setup.py egg_info did not run successfully.
  β”‚ exit code: 1
  ╰─> [86 lines of output]
      Traceback (most recent call last):
        File "<string>", line 1, in <module>
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 116, in spawn_main
          exitcode = _main(fd, parent_sentinel)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 125, in _main
          prepare(preparation_data)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 236, in prepare
          _fixup_main_from_path(data['init_main_from_path'])
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 287, in _fixup_main_from_path
          main_content = runpy.run_path(main_path,
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/runpy.py", line 265, in run_path
          return _run_module_code(code, init_globals, run_name,
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/runpy.py", line 97, in _run_module_code
          _run_code(code, mod_globals, init_globals,
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/runpy.py", line 87, in _run_code
          exec(code, run_globals)
        File "/Users/marcshen/program/GitHub/poker_ai/setup.py", line 5, in <module>
          import poker_ai
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/__init__.py", line 12, in <module>
          from . import ai
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/__init__.py", line 1, in <module>
          from . import multiprocess
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/multiprocess/__init__.py", line 1, in <module>
          from . import server
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/multiprocess/server.py", line 10, in <module>
          from poker_ai.ai.agent import Agent
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/agent.py", line 8, in <module>
          manager = mp.Manager()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 57, in Manager
          m.start()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/managers.py", line 579, in start
          self._process.start()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/process.py", line 121, in start
          self._popen = self._Popen(self)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 284, in _Popen
          return Popen(process_obj)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_spawn_posix.py", line 32, in __init__
          super().__init__(process_obj)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
          self._launch(process_obj)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_spawn_posix.py", line 42, in _launch
          prep_data = spawn.get_preparation_data(process_obj._name)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 154, in get_preparation_data
          _check_not_importing_main()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 134, in _check_not_importing_main
          raise RuntimeError('''
      RuntimeError:
              An attempt has been made to start a new process before the
              current process has finished its bootstrapping phase.
      
              This probably means that you are not using fork to start your
              child processes and you have forgotten to use the proper idiom
              in the main module:
      
                  if __name__ == '__main__':
                      freeze_support()
                      ...
      
              The "freeze_support()" line can be omitted if the program
              is not going to be frozen to produce an executable.
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/Users/marcshen/program/GitHub/poker_ai/setup.py", line 5, in <module>
          import poker_ai
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/__init__.py", line 12, in <module>
          from . import ai
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/__init__.py", line 1, in <module>
          from . import multiprocess
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/multiprocess/__init__.py", line 1, in <module>
          from . import server
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/multiprocess/server.py", line 10, in <module>
          from poker_ai.ai.agent import Agent
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/agent.py", line 8, in <module>
          manager = mp.Manager()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 57, in Manager
          m.start()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/managers.py", line 583, in start
          self._address = reader.recv()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/connection.py", line 250, in recv
          buf = self._recv_bytes()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/connection.py", line 414, in _recv_bytes
          buf = self._recv(4)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/connection.py", line 383, in _recv
          raise EOFError
      EOFError
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

Γ— Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
(poker) marcshen@MarcdeMacBook-Pro poker_ai % pip3 install .
Defaulting to user installation because normal site-packages is not writeable
Processing /Users/marcshen/program/GitHub/poker_ai
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error
  
  Γ— python setup.py egg_info did not run successfully.
  β”‚ exit code: 1
  ╰─> [86 lines of output]
      Traceback (most recent call last):
        File "<string>", line 1, in <module>
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 116, in spawn_main
          exitcode = _main(fd, parent_sentinel)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 125, in _main
          prepare(preparation_data)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 236, in prepare
          _fixup_main_from_path(data['init_main_from_path'])
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 287, in _fixup_main_from_path
          main_content = runpy.run_path(main_path,
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/runpy.py", line 265, in run_path
          return _run_module_code(code, init_globals, run_name,
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/runpy.py", line 97, in _run_module_code
          _run_code(code, mod_globals, init_globals,
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/runpy.py", line 87, in _run_code
          exec(code, run_globals)
        File "/Users/marcshen/program/GitHub/poker_ai/setup.py", line 5, in <module>
          import poker_ai
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/__init__.py", line 12, in <module>
          from . import ai
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/__init__.py", line 1, in <module>
          from . import multiprocess
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/multiprocess/__init__.py", line 1, in <module>
          from . import server
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/multiprocess/server.py", line 10, in <module>
          from poker_ai.ai.agent import Agent
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/agent.py", line 8, in <module>
          manager = mp.Manager()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 57, in Manager
          m.start()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/managers.py", line 579, in start
          self._process.start()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/process.py", line 121, in start
          self._popen = self._Popen(self)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 284, in _Popen
          return Popen(process_obj)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_spawn_posix.py", line 32, in __init__
          super().__init__(process_obj)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
          self._launch(process_obj)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_spawn_posix.py", line 42, in _launch
          prep_data = spawn.get_preparation_data(process_obj._name)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 154, in get_preparation_data
          _check_not_importing_main()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/spawn.py", line 134, in _check_not_importing_main
          raise RuntimeError('''
      RuntimeError:
              An attempt has been made to start a new process before the
              current process has finished its bootstrapping phase.
      
              This probably means that you are not using fork to start your
              child processes and you have forgotten to use the proper idiom
              in the main module:
      
                  if __name__ == '__main__':
                      freeze_support()
                      ...
      
              The "freeze_support()" line can be omitted if the program
              is not going to be frozen to produce an executable.
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/Users/marcshen/program/GitHub/poker_ai/setup.py", line 5, in <module>
          import poker_ai
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/__init__.py", line 12, in <module>
          from . import ai
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/__init__.py", line 1, in <module>
          from . import multiprocess
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/multiprocess/__init__.py", line 1, in <module>
          from . import server
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/multiprocess/server.py", line 10, in <module>
          from poker_ai.ai.agent import Agent
        File "/Users/marcshen/program/GitHub/poker_ai/poker_ai/ai/agent.py", line 8, in <module>
          manager = mp.Manager()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 57, in Manager
          m.start()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/managers.py", line 583, in start
          self._address = reader.recv()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/connection.py", line 250, in recv
          buf = self._recv_bytes()
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/connection.py", line 414, in _recv_bytes
          buf = self._recv(4)
        File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/multiprocessing/connection.py", line 383, in _recv
          raise EOFError
      EOFError
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

Γ— Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

I don't know how to deal it.

add if __name__ == '__main__': before manager = mp.Manager() to agent.py, server.py
and delete install_requires=get_requirements(), line on setup.py

There is still an issue. You are supposed to remove the version number of the matplotlib. The mini forge may install the wrong architecture, which will lead to an error of subprocess.
Besides, thanks a lot.