102_tokyo.png

 

RAD 스튜디오 10.2 도쿄(이하 10.2 도쿄) 버전에서 리눅스 지원을 제공합니다.(현재 델파이 지원, 업데이트에서 C++빌더 지원 예상)

10.2 도쿄 버전에서는 서버 사이드 리눅스 애플리케이션 개발에 집중합니다. 따라서 UI가 없는 프로젝트. 즉, 콘솔과 서버 계열 프로젝트(WebBroker, DataSnap, RAD 서버 등) 프로젝트를 개발할 수 있습니다.

 

이 글에서는 RAD 스튜디오에서 리눅스 개발을 위한 환경설정과 개발 절차를 소개합니다.

리눅스 지원에 대한 자세한 내용은 아래 링크를 통해 확인할 수 있습니다.

 - http://tech.devgear.co.kr/431377

리눅스 개발환경 설정

리눅스 개발환경 설정은 아래 순서로 진행합니다.

1, 리눅스 OS 설치

2, RAD 스튜디오 설치

3, 리눅스 머신에 PAServer 설치 및 실행

4, RAD 스튜디오에서 PAServer 연결 설정

5, RAD 스튜디오에서 리눅스 SDK 설정

6, 테스트 코드 작성 및 실행

 

리눅스 OS 설치

공식 지원 리눅스 버전

RAD 스튜디오가 공식 지원하는 리눅스 버전은 아래와 같습니다.

  • Ubuntu Server(Ubuntu LTS version 16.04) - 우분투 서버
  • RedHat enterprise Linux (version 7) - 레드햇/페도라 계열 리눅스

하지만, 대부분의 배포판에서 작동할 것으로 예상됩니다.

 

리눅스 설치

(이미 위 버전의 리눅스가 준비되어있다면 이 단계를 건너 띄어도 됩니다.)

 

별도의 머신 또는 가상머신에 리눅스 OS를 설치합니다.

  • 우분투 서버 다운로드 : https://www.ubuntu.com/download/server
  • 레드햇/페도라 리눅스 다운로드 : https://getfedora.org/en/server/download/

아마존 EC2를 통해 리눅스 개발환경을 설정할 수 있습니다.(프리티어 12개월 무료)

 

다음 링크에서 무료 가상머신(Virtual Box)과 리눅스 OS 설치 과정을 소개합니다.

 

리눅스 소프트웨어 업데이트 - 우분투

설치가 완료되면 시스템 업데이트를 합니다. 

다음 명령어를 실행합니다.(참고: sudo 명령어를 사용하는 경우 관리자 비밀번호를 1회 입력해야 합니다.)

설치파일 용량이 큰 경우 설치 여부를 묻습니다. 'Y' 입력 후 엔터키를 누릅니다.

sudo apt-get update

sudo apt-get upgrade

sudo apt-get dist-upgrade

 

개발에 필요한 몇가지 패키지를 설치합니다.

sudo apt-get install joe wget p7zip-full curl

sudo apt-get install openssh-server

sudo apt-get install build-essential

sudo apt-get install zlib1g-dev

sudo apt-get install libcurl4-gnutls-dev

 

마지막으로 약간의 정리를 합니다.

sudo apt-get autoremove

sudo apt-get autoclean

 

리눅스 소프트웨어 업데이트 - 레드햇/페도라

시스템 소프트웨어를 .업데이트 합니다.

sudo yum update

 

RAD 스튜디오 설치

설치파일 다운로드

(정식 사용자의 경우)

RAD 스튜디오 10.2 도쿄 버전을 설치합니다.

 

(정식 사용자가 아닌 경우)

리눅스 지원 기술검토가 필요한 경우 트라이얼 버전을 다운로드 받아 설치하시기 바랍니다.

 - RAD 스튜디오 트라이얼 다운로드 : http://devgear.co.kr/products/rad-studio/ (하단 무료 평가판 참조)

 

RAD 스튜디오 설치

설치 안내에 따라 설치합니다. 플랫폼 선택 시 Delphi Linux 64-bit Enterprise 항목을 선택합니다.

003.png

 

 

만약, 이미 설치했고 Delphi Linux 64-bit Enterprise 항목을 선택하지 않았다면, 

RAD 스튜디오 IDE 메인메뉴에서 "Tools > Manage Platforms..." 항목을 선택 해 항목을 추가선택 후 설치할 수 있습니다.

 

리눅스 머신에 PAServer 설치 및 실행

PAServer(Platform Assistant Server)는 RAD 스튜디오가 생성한 리눅스 실행파일을 리눅스 플랫폼에서 실행하고, 디버깅할 수 있도록 지원하는 소프트웨어입니다. RAD 스튜디오와 PAServer는 원격으로 연결되어 실행파일 전달 및 디버깅 정보를 주고 받아 윈도우 환경의 IDE에서 리눅스 실행파일을 구동하고 디버깅할 수 있도록 지원합니다.

 

리눅스에 PAServer 설치

1) PAServer 설치파일 복사

리눅스 PAServer 설치파일은 RAD 스튜디오 설치경로 하위의 PAServer 디렉토리에 제공합니다.

paserver_dir.png

 

LinuxPAServer19.0.tar.gz 파일을 리눅스 시스템으로 복사합니다.(USB 또는 FTP 등을 이용합니다.)

 

 

2) 압축해제

터미널을 열고, LinuxPAServer19.0.tar파일이 복사된 경로로 이동합니다.

다음 명령어로 압축을 해제합니다.

tar –xvf LinuxPAServer19.0.tar.gz

 

아래와 같이 압축해제 됩니다.

tar_paserver.png

 

 

3) PAServer 실행

PAServer 설치 경로로 이동 후 paserver를 실행합니다.

run_paserver.png

 

비밀번호를 묻습니다. 임의의 비밀번호를 입력 후 엔터를 누릅니다.(RAD 스튜디오에서 연결 시 해당 비밀번호가 필요합니다.)

 

RAD 스튜디오에서 PAServer 연결 설정

PAServer IP/포트번호 확인

RAD 스튜디오와 PAServer 연결하기 위해서는 PAServer의 IP와 포트번호, 비밀번호가 필요합니다.

위에서 실행한 PAServer 대화창에서 "i" 입력 후 엔터키를 눌러 IP 주소를 확인합니다.

(또는 서버의 Public IP를 사용해도 됩니다.)

포트번호는 아래 그림과 같이 표시됩니다. 기본포트번호는 "64211"입니다.

paserver_ip.png

 

 

만약, 아마존 EC2와 같은 외부 리눅스 서버와 연결할 경우 외부 리눅스 서버의 공인 IP(Public IP)를 이용해 다음 단계를 진행하시기 바랍니다.

(PAServer의 "i" 커맨드는 내부 ip 주소를 제공합니다.)

 

RAD 스튜디오에서 PAServer 연결

RAD 서버에서 Connection Profile Manager 옵션을 실행합니다.(Tools > Options > Connection Profile Manager)

connection_profile.png

 

Add 버튼을 누르고, "Profile name" 항목에 접속정보의 명칭을 입력하고 Next >> 버튼을 누릅니다.

 

connection_profile_2.png

 

Remote machine 항목에 PAServer의 IP를 입력합니다.

Port number 항목에 PAServer 포트번호를 입력합니다.

Password 항목에 PAServer 실행 시 입력한 비밀번호를 입력합니다.

"Test Connection" 버튼을 눌러 연결을 확인하고, Finish 버튼을 눌러 완료합니다.

 

만약, 연결되지 않은 경우, PAServer가 설치된 리눅스 시스템과의 네트워크 환경을 검토하기 바랍니다.

 

RAD 스튜디오에서 리눅스 SDK 설정

RAD 스튜디오에서 SDK Manager(Tools > Options > SDK Manager)를 실행합니다.

profile_manager.png

 

Add 버튼을 누릅니다.

Select a platform 항목에서 "64-bit Linux"를 선택합니다.

Select a profile to connect 항목에서 위에서 추가한 연결을 선택합니다.

Select an SDK version 항목 확인 후 "OK" 버튼을 누릅니다.

 

아래와 같이 리눅스의 SDK를 로컬로 복사하는 작업이 진행됩니다.(몇분 정도 소요)

006.png

 

완료되면 Close 버튼을 눌러 완료합니다.

 

테스트 코드 작성 및 실행

프로젝트 생성

콘솔 애플리케이션 프로젝트를 생성합니다.(File > New > Other > Delphi Projects > Console Application)

 

make_console.png

 

테스트 코드 작성

program Project1;

 

{$APPTYPE CONSOLE}

 

{$R *.res}

 

uses

  System.SysUtils;

 

begin

  try

    { TODO -oUser -cConsole Main : Insert code here }

 

    WriteLn('Hello Linux');

    ReadLn;

  except

    on E: Exception do

      Writeln(E.ClassName, ': ', E.Message);

  end;

end.

 

타겟 플랫폼 선택

프로젝트 매니저에서 64-bit Linux 플랫폼을 추가합니다.(프로젝트 매니저 > Target Platforms > 오른쪽 클릭 > Add Platform > 64-bit Linux > OK)

002.png

 

 

빌드 및 실행

Run 버튼을 눌러 실행하면, Event Log에 아래와 같이 "Hello Linux" 메시지가 표시됩니다.

output.png

 

 

참고 링크


번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 14353
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13021
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 15529
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 21047
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 22296
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 17929
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 38218
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 173732
723 IBLite 라이브러리 및 라이선스 배포하기 file 험프리 2017.03.24 734
722 [10.2 도쿄] 디버거 기능 김원경 2017.03.23 443
721 [10.2 도쿄] VCL: 고 해상도(DPI) 지원. 김원경 2017.03.23 610
720 [10.2 도쿄] 개발환경 개선사항 file 김원경 2017.03.23 727
719 [10.2 도쿄] FireDAC과 데이터베이스 개선 file 김원경 2017.03.23 1186
718 [10.2 도쿄] 파이어몽키의 새로운 기능들 file 김원경 2017.03.23 1161
717 [10.2 도쿄] 리눅스 지원을 제공합니다. file 김원경 2017.03.23 1047
716 [발표자료] VCL 애플리케이션 확장하기 with RAD 서버 관리자 2017.03.16 465
715 RAD Studio 10.2 도쿄! 곧 출시됩니다. 관리자 2017.03.16 463
714 델파이로 개발된 '3D Train Studio'가 BizWireTV의 'Startup Standout' 분야에 선정되었습니다. file 관리자 2017.03.14 316
713 [고객 사례- 3D, 시뮬레이션, 델파이] 3D Train Studio 관리자 2017.03.02 674
712 리팩토링 3-메소드 추출 file 김원경 2017.02.24 719
711 이 달의 기술자료 - 2017년 03월 file 험프리 2017.02.24 525
710 리팩토링 2-수퍼 클래스(인터페이스) 추출하기 file 김원경 2017.02.23 546
709 리펙토링 1-클래스, 정적메소드, 속성, 필드 이동하기 file 김원경 2017.02.23 633
» [10.2 도쿄] 델파이/C++빌더 리눅스 개발환경 설정하기 [1] file 험프리 2017.02.21 6101
707 [발표자료] 개발 생산성 극대화하기 with 10.1.2 베를린 file 험프리 2017.02.16 612
706 [오픈소스] 델파이 컴포넌트, 프레임워크, 라이브러리, 리소스 등등 관리자 2017.02.15 2021
705 [FireDAC] FireDAC에 대한 궁금증을 FAQ를 통해 해결해 보세요. file 험프리 2017.02.14 499
704 [마이그레이션] 64비트 적용 시 검토할 사항들 file 험프리 2017.02.08 3324