cmod.ify

[LINUX] Programming Language 개발 환경 구축 본문

BASIC/LINUX

[LINUX] Programming Language 개발 환경 구축

modifyC 2026. 1. 15. 18:18
728x90
반응형

1. C Programming (GCC & Make)

리눅스 오픈소스 개발자들이 만든 표준 컴파일러인 GCC를 사용함. 우분투에는 기본적으로 포함되어 있으나, 없을 경우 간단히 설치 가능함.

  • GCC 설치: sudo apt install gcc
  • 소스 코드 작성: vim helloworld.c(주의: 소스 코드 내 mina는 main의 오타이므로 수정 필요함)
    #include <stdio.h>
    int main(){
        printf("Hello World!");
        return 0;
    }
    
  • 컴파일 및 실행: gcc -o helloworld helloworld.c -> ./helloworld

Make 사용하기

실제 애플리케이션은 수많은 파일로 구성되어 일일이 컴파일하기 번거로움. 이를 자동화해주는 도구가 Make임. makefile에 설정된 정보를 읽어 소스 파일을 컴파일하고 링크함.

  • 코드 분할 (one.c / two.c)
    • one.c: two() 함수를 호출하는 메인 로직
    • two.c: 실제 two() 함수의 기능을 구현
  • makefile 작성: vim makefile
    TARGET=one
    OBJECTS=one.o two.o
    ${TARGET} : ${OBJECTS}
            gcc -o ${TARGET} ${OBJECTS}
    one.o : one.c
            gcc -c one.c
    two.o : two.c
            gcc -c two.c
    
  • 실행: make 입력 후 ./one 실행

2. Java Programming

우분투에서 오픈 JDK를 설치하여 자바 개발 환경을 구성함.

  • 설치: sudo apt install openjdk-21-jdk
  • 버전 확인: * 개발(컴파일러): javac -version
    • 실행(런타임): java -version
  • 코드 작성: vim HelloWorld.java
    public class HelloWorld{
        public static void main(String [] args){
            System.out.println("Hello Java\n");
        }
    }
    
  • 컴파일 및 실행: javac HelloWorld.java -> java HelloWorld

3. Python Programming

파이썬은 외부 패키지 관리가 중요하며, 개발자 간 환경 일치를 위해 가상환경(venv)과 requirements.txt 활용이 권장됨.

  • 설치 및 가상환경 준비:
    • sudo apt upgrade python3
    • sudo apt install python3-venv
  • 가상환경 설정 및 실행:
    1. 디렉토리 생성: mkdir pythontest && cd pythontest
    2. 가상환경 생성: python3 -m venv myvenv
    3. 활성화: source myvenv/bin/activate (비활성화는 deactivate)
  • 패키지 관리:
    • 설치된 패키지 내보내기: pip freeze > requirements.txt
    • 중요: 이미지 제작이나 소스 업로드 시 이 파일을 반드시 포함해야 함.

4. Node.js (NVM 활용)

NVM(Node Version Manager)을 사용하면 여러 버전의 노드를 쉽게 관리할 수 있음.

  • NVM 및 Node 설치:
    • 스크립트 다운로드: curl 또는 wget 사용
    • 적용: source ~/.bashrc
    • 최신 LTS 버전 설치: nvm install --lts
  • 프로젝트 생성:
    • npm init -y 수행 시 package.json 생성됨.
    • 주의: node_modules 디렉토리는 용량이 크고 package.json만 있으면 복구 가능하므로 Git 등에 업로드하지 않음.
  • 외부 접근 설정:
    • 포트 개방: sudo ufw allow 3000/tcp
    • 접속 테스트: curl http://[IP주소]:3000

5. Go (Golang)

도커와 쿠버네티스의 모태가 된 언어로, 바이너리 파일을 직접 다운로드하여 설치함.

  • 설치 및 환경 변수 설정:
    1. 압축 파일 다운로드 및 /usr/local에 해제
    2. ~/.profile에 PATH 추가:
      • export PATH=$PATH:/usr/local/go/bin
    3. 설정 적용: source ~/.profile
  • 프로젝트 실행:
    1. 모듈 초기화: go mod init hello-go
    2. 코드 작성 (main.go)
    3. 실행: go run main.go
728x90
반응형