Mac 환경에서 기술 사용

github에는 며칠 전 컴퓨터 장기 선수권 대회로 주목받았던 장기 소프트웨어, 기교의 출처·이진법이 공개됐다.
장기 소프트웨어 기교github 사이트
테크닉 면에서도 액션 환경의 조건이 넉넉해 맥스 OS X 환경에서도 쉽게 실행할 수 있어 바로 사용해 봤다.
당시의 tips를 다음과 같이 정리합니다.

이 문서에 사용된 Mac 환경


MacBook Air(Mid 2012:Intel Core i5 1.8GHz、DDR3 4GB)
Mac OS X 10.11.5(El Capitan)
gcc 4.9.3
Homebrew 0.9.9
Git 2.8.0
Java for Mac OS X
!!!잘못된 결말!!!
이 문서는 터미널(MacOS에 표준 설치된 터미널.app 등)에서
Unix 명령을 사용합니다.사전에 양해해 주십시오.

Homebrew 및 Git 설치

// homebrewのインストール
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

// Gitのインストール
brew install git

기술원 파일 그룹에서 실행 파일 생성


우선, git clone 명령을 사용하여 상기github 사이트의 기술 창고를 복제합니다
README의 내용에 따라 클론의 폴더로 이동한 후 make release 명령을 실행하는 경우
다음 오류가 발생했습니다.
git clone https://github.com/gikou-official/Gikou.git
cd Gikou
make release

clang: error: unsupported option '-fopenmp'
make[1]: *** [obj/release/src/bitboard.o] Error 1
make: *** [release] Error 2

make release 오류 발생 원인


Mac의 표준 컴파일러입니다. gcc가 아니라 clang입니다.
clang이 -fopenmp 옵션을 지원하지 않기 때문입니다.
따라서-fopenmp Homebrew를 사용하여 옵션에 대응하는 gcc(ver4.2 이상)를 설치합니다.
※ 본 기사는 경우에 따라 gcc4입니다.9가 설치되어 있지만 gcc5도 문제없습니다.

make release 실행 시 참조하는 gcc 설정 방법


우선 gcc 명령으로 기존which의 경로(프로그램이 놓인 곳)를 조사한다.
which gcc
which gcc의 결과가 /usr/bin/gcc일 경우 아래 명령을 실행하십시오.
brew install /homebrew/versions/gcc49
sudo ln -sf /usr/local/bin/gcc-4.9 /usr/bin/gcc
sudo ln -sf /usr/local/bin/g++-4.9 /usr/bin/g++
또한 상기 sudo 명령이 실행될 때 맥에 로그인할 때 사용하는 계정의 비밀번호는
필요계정에 비밀번호를 설정하지 않으면 실행할 수 없습니다
아래의 사이트를 참조하여 계좌에 비밀번호를 설정하세요.
https://support.apple.com/ja-jp/HT202035
또한 상기sudo의 추가 명령을 실행할 때 출력Operation not permitted을 하면 SIP:System Integrity Protection의 일부 설정을 무효화해야 한다.
그 자세한 내용은 아래 사이트 등을 보고 처리하세요.
EI Capitan에 sudo가 포함된 Operation not permitted가 나타날 때의 대응 방법
http://berukann.hatenablog.jp/entry/2015/12/30/123020 which gcc의 결과가 /usr/local/bin/gcc일 경우 아래 명령을 실행하십시오.
brew install /homebrew/versions/gcc49
ln -s /usr/local/bin/gcc-4.9 /usr/local/bin/gcc
ln -s /usr/local/bin/g++-4.9 /usr/local/bin/g++
위 명령 중 하나를 실행한 후 터미널 소프트웨어를 다시 시작합니다gcc -v.
다음 느낌으로 gcc 버전 정보를 출력하면 OK.
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/Cellar/[email protected]/4.9.3/bin/../libexec/gcc/x86_64-apple-darwin15.4.0/4.9.3/lto-wrapper
Target: x86_64-apple-darwin15.4.0
Configured with: ../configure --build=x86_64-apple-darwin15.4.0 --prefix=/usr/local/Cellar/gcc49/4.9.3 --libdir=/usr/local/Cellar/gcc49/4.9.3/lib/gcc/4.9 --enable-languages=c,c++,objc,obj-c++,fortran --program-suffix=-4.9 --with-gmp=/usr/local/opt/gmp4 --with-mpfr=/usr/local/opt/mpfr2 --with-mpc=/usr/local/opt/libmpc08 --with-cloog=/usr/local/opt/cloog018 --with-isl=/usr/local/opt/isl011 --with-system-zlib --enable-libstdcxx-time=yes --enable-stage1-checking --enable-checking=release --enable-lto --with-build-config=bootstrap-debug --disable-werror --with-pkgversion='Homebrew gcc49 4.9.3' --with-bugurl=https://github.com/Homebrew/homebrew-versions/issues --enable-plugin --disable-nls --enable-multilib
Thread model: posix
gcc version 4.9.3 (Homebrew gcc49 4.9.3)
이후 다시 실행make release하고 구축이 완료되면 ./Gikou/bin/ 폴더에 release라는 Mac 실행 파일을 생성합니다.

관련 바이너리 가져오기


이어서 실행 기교에 필요한 부속 바이너리 파일 (동작할 때 참조하는 궤적 파일 등) 을 가져옵니다.
  • 먼저github의테크니컬 버전에서 다운로드gikou_win_20160601.zip.
  • 다운로드한 zip 파일을 펼쳐서'gikou'로 보냅니다.exe '파일 이외의 모든 파일을 복사하여 방금 생성한release라는 맥용 실행 파일과 같은 폴더 경로에 붙여넣습니다.

  • 이렇게 기교는 사람처럼 손을 쓸 수 있다.
    ※ 이외에도 이 단계를 건너뛰더라도 기술을 수행할 수 있지만, 가장자리만 튀어나오는 약한 손만 가리킨다.
    (처음에는 이 절차를 생략했기 때문에 정확하게 집행할지 고민입니다.)

    GUI 어플리케이션과 기법을 사용하여 대국


    실제로 기교와 맞서 보세요.이번에 Mac 환경을 사용해도 사용할 수 있다장기 게임 Q.
    1. 일본 장기 사이트 Q는 공식 페이지에서 일본 장기 사이트 Q(for Mac 버전)를 다운로드하고 zip을 펼친다.
    2. 무기QJava for Mac OS X를 실행하기 위해서는 필수이므로 필요에 따라 설치한다.
    3.1.를 참고하십시오.
    4. 메뉴 표시줄의 [설정]->[바둑 엔진 설정] 선택

    5. [추가]를 클릭한다.

    6. 프로젝트 [엔진 파일 경로]의 파일을 선택하고 SbrowserQ.app 파일(의 경로)을 선택한 후 [추가] 버튼을 클릭하여 끝냅니다.

    이렇게 대국할 때 엔진 선택 기교(본 보도라면 Gikou201601)로 하면 맑은 날과 기교를 대국할 수 있다.

    물론 기보도 분석할 수 있다.
    특별 규격이 높지 않은 MBA에서 집행됐지만 정상적으로 집행하면 문제없다.

    인용하다


    Mac로 MPI와 openmp를 혼합하여 사용하는 환경 구축

    좋은 웹페이지 즐겨찾기