CentOS7에 wxHaskell 설치

CentOS 7에 wxHaskell을 설치했습니다.
설치시에 설치 방법을 Google에서 여러가지 검색했습니다만, 별로 참고가 되는 기사가 없었기 때문에 작성했습니다.

wxHaskell이란?



wxHaskell은 Haskell을 위한 이식가능한 네이티브 GUI 라이브러리입니다. 이 프로젝트의 목적은 Haskell에 산업용 강도 GUI 라이브러리를 제공하는 것입니다.

따라서 wxHaskell은 wxWidgets 위에 구축됩니다. 이것은 모든 주요 GUI 플랫폼간에 이식 가능한 포괄적인 C++ 라이브러리입니다. GTK, Windows, X11 및 MacOS X를 포함합니다. 게다가 네이티브 룩앤필을 갖춘 광범위한 위젯을 지원하는 성숙한 라이브러리(1992년 이후 개발 중)입니다.

wxHaskell의 현재 버전은 wxWidgets 2.9 및 3.0을 지원합니다. wxWidgets 3.0에서는 Windows 사용자가 wxInstall 패키지를 사용하여 wxHaskell과 함께 wxWidgets를 쉽게 설치할 수 있습니다.

공식 사이트 자동 번역보다

설치한 PC 환경



OS: CentOS 7 64bit
Cabal: 2.2.0.1

공식 사이트



htps : // 우우키. 는 s 켈. rg / Wx는 s

설치



먼저 소스를 다운로드하지만 여기에서는 다운로드 폴더를 만들고 실행합니다.
mkdir tmp
cd tmp
mkdir wxHaskell
cd wxHaskell

소스 다운로드
cabal unpack wx wxcore wxdirect wxc

실행하면 다음 폴더가 생성됩니다.
[apo@localhost wxHaskell]$ ls -la
drwxrwxr-x. 3 apo apo 69  1月 28 08:36 wx-0.92.3.0
drwxrwxr-x. 3 apo apo 65  1月 28 08:36 wxc-0.92.3.0
drwxrwxr-x. 3 apo apo 68  1月 28 08:36 wxcore-0.92.3.0
drwxrwxr-x. 3 apo apo 70  1月 28 08:36 wxdirect-0.92.3.0
[apo@localhost wxHaskell]$

각 폴더에 들어가서 cabal install을 실행합니다.
공식 사이트에서는 아래 순서로 되어 있습니다.
  • wxdirect
  • wxc
  • wxcore
  • wx

  • wxdirect 설치
    cd wxdirect-0.92.3.0
    cabal install
    

    다음은 wxc를 설치하는 것입니다. 그 전에 wxGTK3을 설치합니다.
    sudo yum --enablerepo=epel install wxGTK3-devel
    

    PATH를 설정합니다.
    "~/.bash_profile"파일에 다음 경로를 추가합니다.
    PATH=/usr/libexec/wxGTK3:$PATH
    

    추가한 PATH를 활성화합니다.
    source ~/.bash_profile
    

    wxc를 설치합니다.
    cd ..
    cd wxc-0.92.3.0
    cabal install
    

    wxcore를 설치합니다.
    cd ..
    cd wxcore-0.92.3.0
    cabal install
    

    wx를 설치합니다.
    cd ..
    cd wx-0.92.3.0
    cabal install
    

    설치는 이상입니다.

    HelloWorld



    wxHaskell을 사용하여 HelloWorld를 사용해보십시오.
    샘플이 공식 사이트Git 저장소에 포함되어 있으므로 저장소를 복제합니다.
    샘플을 다운로드할 폴더를 만들고 다운로드합니다.

    위에서 만든 tmp 폴더로 이동합니다.
    mkdir wxHaskell_sample
    cd wxHaskell_sample
    git clone https://github.com/wxHaskell/wxHaskell.git
    

    wxHaskell_sample 폴더 아래에 wxHaskell 폴더가 생성됩니다.
    또한 그 안의 samples/wx라는 폴더에 샘플 파일이 들어 있습니다.
    cd wxHaskell
    cd samples
    cd wx
    ls -la
    [apo@localhost wx]$ ls -la
    合計 152
    drwxrwxr-x. 3 apo apo  4096  1月 28 10:16 .
    drwxrwxr-x. 6 apo apo    57  1月 28 10:02 ..
    -rw-rw-r--. 1 apo apo  2809  1月 28 10:02 BouncingBalls.hs
    -rw-rw-r--. 1 apo apo  1515  1月 28 10:02 ByeDemo.hs
    -rw-rw-r--. 1 apo apo    90  1月 28 10:02 ChangeLog.md
    -rw-rw-r--. 1 apo apo  5198  1月 28 10:02 Controls.hs
    -rw-rw-r--. 1 apo apo  2188  1月 28 10:02 CustomControl.hs
    -rw-rw-r--. 1 apo apo  9342  1月 28 10:02 FileBrowse.hs
    -rw-rw-r--. 1 apo apo  3504  1月 28 10:02 Grid.hs
    -rw-rw-r--. 1 apo apo  1972  1月 28 10:06 HelloWorld.hi
    -rw-rw-r--. 1 apo apo  1001  1月 28 10:02 HelloWorld.hs
    -rw-rw-r--. 1 apo apo 16864  1月 28 10:06 HelloWorld.o
    -rw-rw-r--. 1 apo apo  4728  1月 28 10:02 ImageViewer.hs
    -rw-rw-r--. 1 apo apo  1485  1月 28 10:02 LICENSE.txt
    -rw-rw-r--. 1 apo apo  1156  1月 28 10:02 Layout.hs
    -rw-rw-r--. 1 apo apo  2905  1月 28 10:02 ListCtrl.hs
    -rw-rw-r--. 1 apo apo   614  1月 28 10:02 ListView.hs
    -rw-rw-r--. 1 apo apo   153  1月 28 10:02 Minimal.hs
    -rw-rw-r--. 1 apo apo  1116  1月 28 10:02 Paint.hs
    -rw-rw-r--. 1 apo apo  2148  1月 28 10:02 Print.hs
    -rw-rw-r--. 1 apo apo  2164  1月 28 10:02 Process.hs
    -rw-rw-r--. 1 apo apo  3025  1月 28 10:02 PropertyGrid.hs
    -rw-rw-r--. 1 apo apo  1403  1月 28 10:02 TestTaskBarIcon.hs
    -rw-rw-r--. 1 apo apo  5333  1月 28 10:02 TimeFlows.hs
    -rw-rw-r--. 1 apo apo  9514  1月 28 10:02 TimeFlowsEx.hs
    drwxrwxr-x. 2 apo apo   187  1月 28 10:02 bitmaps
    -rw-rw-r--. 1 apo apo   563  1月 28 10:02 makefile
    -rw-rw-r--. 1 apo apo  4857  1月 28 10:02 samplesWx.cabal
    

    HelloWorld.hs를 컴파일하고 실행해보십시오.
    ghc HelloWorld.hs 
    

    HelloWorld라는 실행 파일이 있으므로 실행합니다.
    ./HelloWorld
    

    아래 화면이 나타납니다.


    이상입니다.

    좋은 웹페이지 즐겨찾기