2011-03-11 2 views
1

요약 : Fortran (Fortran 90) 종속성을 해결할 수 있으므로 Scons 또는 Foray (TCBuild)를 사용하는 것이 좋습니다.FinalBuilder를 사용하여 fortran 프로젝트 (F77, F90 및 그 이상)를 매일 빌드 할 수 있습니까?

========================================

A daily build or nightly build is the practice of each day doing a software build of the latest version of a program.

매일 fortran 프로젝트를 빌드하려면 cron, hudson, SCons 또는 Foray(TCBuild)을 사용할 수있는 것으로 보입니다. 그러나 cron의 결과를 분석하는 것은 간단하지 않습니다. hudson 또는 Scons은 fortran을 염두에두고 설계되지 않았습니다. Foray(TCBuild)은 F90을 목표로합니다. (내가 틀렸다면 수정 해주세요.)

한편 FinalBuilder는 Delphi를위한 훌륭한 건물 도구입니다. FinalBuilder를 사용하여 Fortran 프로젝트의 일일 빌드를 자동화 할 수 있는지 궁금합니다. 주요 문제는 의존성을 해결하는 것입니다.

PS : cronhudson는 다음과 같은 유래 페이지에 언급되었습니다
Best Way of Automating Daily Build

Scons는 여기에서 찾을 수 있습니다 :
http://www.scons.org/

Foray(TCBuild) 여기
http://macresearch.org/tcbuild-new-build-tool-fortran
을 소개하고있다 여기에서 가져올 수 있습니다 :
http://code.google.com/p/foraytool/

+1

개인적으로 사용하지는 않지만 scons에 관한 한 많은 포트란 사용자가 (내 오래된 직장 동료 몇 명을 포함하여) 맹세합니다. 내가 아는 한 그것은 포트란과 아주 잘 어울린다. – Rook

+0

@Rook : 개인적인 경험을 대단히 감사합니다! 그러나 Foray (TCBuild)의 저자는 Scons를 Fortran에 사용하는 것에 대한 의견을 구체적으로 표명 했습니까? – SOUser

+1

방금 ​​한 가지 더 생각했습니다. GNU에 fortran 종속 검사가 이미 작성된 make 도구가 있는지 확인해야합니다. –

답변

1

저는 Final Builder를 Delphi 또는 MSBuild 통합 (Visual Studio, C++, C# 등)을 사용하는 것을 좋아합니다.

하지만 fortran 프로젝트의 경우 Hudson (현재 Jenkins?)과 더 잘 어울릴 것이라고 생각합니다. 이는 유물 (결과)을 처리 할 수있는 아주 좋은 방법과 원격으로 체크인 한 사람 코드는 원격으로 빌드를 큐에 넣을 수 있습니다.

나는 최종 작성자도 서버 버전이 있음을 알고 있습니다. 당신은 (여러 고위급 사람들이 체크인하고 QA에 대한 빌드를 필요로 할 경우) 네트워크 기반 솔루션 (예 : Hudson/Jenkins 또는 Final Builder Server)을 고려해야합니다.

두 번째로, 당신이 말하는 도구가 겹치는 것처럼 보이지만 반드시 서로를 배제하지는 않습니다. 예를 들어 Hudson과 SCons 또는 ForayBuild를 사용할 수 있습니다. 하나는 "fortran을위한 make"와 비슷하며, 다른 하나는 빌드 배치 파일을 실행하기위한 웹 인터페이스입니다. 그러면 SCons 또는 다른 것을 시작할 것입니다.

+0

시간 내 주셔서 감사합니다! 그 '허드슨 플러스 Foray' 실제로 참 좋은 생각입니다! – SOUser

2

포트란을 사용하지 않습니다.

FinalBuilder는 현재 Fortran에 대한 동작이 내장되어 있지 않습니다.

FinalBuilder는 명령 프롬프트를 통해 실행할 수있는 모든 것을 실행할 수 있으며 출력을 캡처합니다.

FinalBuilder 6에는 Action 출력 모니터를 만들 수있는 새로운 기능이 추가되었습니다. 이 모니터를 사용하면 다른 동작을 트리거하고 출력에 특정 문자열 을 찾을 수 있습니다.

+0

귀하의 의견에 진심으로 감사드립니다! 'FinalBuilder는 현재 Fortran에 대한 작업을 내장하지 않았습니다. ', 나는 FinalBuilder에 대한 포트란 의존성을 해결하기위한 파서를 발견해야 할 첫 번째 조건이 있다고 생각한다. – SOUser

+0

또한 이러한 모니터는 다른 동작을 트리거하고 출력에서 ​​특정 문자열을 찾도록합니다. '. 출력 메시지를 포트란 소스 코드에 다시 매핑하는 방법을 찾아야한다고 생각합니다. – SOUser

+0

@ Xichen Li : FinalBuilder는 많은 컴파일러를 지원합니다. 그러나 포트란에 대한 어떠한 조치도 보이지 않습니다. 필자는 의존성을 어떻게 해결해야 하는지를 알기 위해 Fortran에 익숙하지 않습니다. –

2

Fortran 프로그램을 컴파일하기 위해 명령 행 또는 배치 파일을 작성할 수있는 경우 FinalBuilder도이를 수행 할 수 있습니다. 필자는 FB의 버전이 D2006을 "기본적으로"지원하고 업그레이드하지 않았기 때문에 명령 줄 액션을 사용하여 Delphi 프로그램을 작성했습니다.

그러나 이제 Ant 스크립트와 허드슨을 사용합니다. 내 델파이, FreePascal 및 C 프로그램에 대한 치료를 작동합니다. 필자는 20 년 넘게 포트란 프로그램을 만들지 않았기 때문에 의존성 문제에 대해 언급 할 수는 없다.

+0

시간 내 주셔서 감사합니다! 이제는 전제 조건 인'명령 행이나 배치 파일을 작성하여 포트란 프로그램을 컴파일 할 수 있다면'FinalBuilder를 설정하는 것보다 더 귀찮은 것 같습니다. : D 나는 의존성 문제를 해결하는 것이 쉽지 않다는 것을 의미합니다. 의존성 탐지와 관련하여 F77과 F90의 차이는 말할 것도 없습니다. 내가 직접해야만한다면 Foray를 사용하는 것이 낫다. – SOUser

2

가장 쉬운 방법은 컴파일 스크립트를 호출하는 최종 빌더 프로젝트와 작성해야 할 모든 작업 (체크 아웃, 테스트 실행 등)을 만드는 것입니다. 매일 사용하며 잘 작동합니다. 완벽하게.

그래서 최종 작성기를 fortran과 함께 사용하는 것은 매우 간단합니다.

+0

의견을 보내 주셔서 감사합니다! FinalBuilder를 dailybuild fortran 프로그램에 사용하는 데있어 가장 골칫거리가되는 문제는 종속성 문제를 해결하는 것입니다. – SOUser

+0

당신은 환영합니다 :) 당신은 의존성에 대해 좋은 점을 가지고 있습니다. –

관련 문제