건배, 회사의건물 유니버설 바이너리 -
단일 컴파일러 자식 프로세스를 강제로, 우리는 우리의 게임의 포트를 만드는, 우리는 PythonOgre, 파이썬 Ogre3d의 래퍼를 컴파일 할 필요가있다. 엄청난 양의 코드, 특히 생성 된 래퍼 코드입니다. Mac mini에는 1GB RAM이 있습니다.
i386 버전을 구축했습니다. 우리는 단지 1GB의 RAM을 가지고 있기 때문에, 빌드 시스템이 오직 하나의 코어 만 사용하도록했습니다. 동시에 실행되는 두 번째 프로세스는 가상 메모리로 좋은 여행을 떠났습니다.
게시자가 PPC를 지원하기 때문에 유니버설 바이너리를 생성해야합니다. 유니버설 바이너리 빌드를 용이하게하기 위해 우리는 CFLAGS
및 CXXFLAGS
을 수정하여 래퍼 코드를 컴파일 할 때 -arch i386 -arch ppc
을 포함 시켰습니다 (Ogre3d 자체는 이미 유니버설 바이너리로 보입니다).
그러나 Apple은 유니버설 바이너리를 만들 때 두 코어를 모두 사용하기로 결정했기 때문에 시스템이 뒤집어 져서 죽습니다. (어쨌든, 0.9-1.4 %의 CPU 사용량으로 크롤링합니다.) 일반적으로 1GB Mac Mini에서 우리는이 점을 높이 평가할 수 있지만 이것이 개발을 완전히 차단합니다.
새로운 빌드 머신을 얻는 것, PPC 지원을 포기하고 PPC 전용 빌드를 만드는 것 외에도 GCC의 두 번째 동시 프로세스 생성을 막는 것이 유일한 방법입니다.
어떻게 생각 하나?
더 나은 빌드 머신을 얻거나 적어도 메모리를 늘리는 것이 더 저렴 할 것입니다. – Mark
@Mark, Intel Mac Minis 용 RAM의 4GB 키트는 평판 좋은 타사 공급 업체로부터 약 90 달러의 비용이 듭니다. (미국, 그러나 나는 그들이 크로아티아에서 훨씬 더 많은 비용을 들이게 될 것이라고 생각하지 않습니다.) - 확실히 가장 좋은 방법은 IMHO입니다. –
나는 당신들이 "더 싸다"라는 말을 잘 모르겠다. 이것은 한 번 빌드하고 대개 큰 래퍼를 만들지 않을 것이다. :-) 그럼에도 불구하고 이것은 싸구려이기 때문에 내가 제안한 첫 번째 것이 아니지만 빨리 할 수 있기 때문에. –