Notice
Recent Posts
Recent Comments
Link
관리 메뉴

뛰는 놈 위에 나는 공대생

[git blog] jekyll 테마 적용하면서 발생한 에러들 본문

프로그래밍 Programming

[git blog] jekyll 테마 적용하면서 발생한 에러들

보통의공대생 2023. 5. 10. 13:49

이번에 블로그를 git으로 만들어볼까하고 테마 적용을 시도했다가 수많은 에러를 직면한 것을 기록하고자 한다.

 

 

1. 버전 호환성 문제

 

처음에 Ruby를 설치할 당시에 잘 모르고 가장 최신 버전인 3.2.2를 설치했는데 나중에 이런저런 것들을 설치하다가 버전이 호환 안된다는 것을 깨달았다. 

오류를 자세히 보면 Ruby < 3.2 이런 식으로 버전이 문제라고 알려준다. 그리고 구글 검색하다가 Ruby 3.0 이상부터는 무슨 문제가 발생할 수도 있다는 말을 봤다.

안전하게 설치하려면 2.7 정도의 버전이 좋은 것 같다.

 

 

2. 파일 경로 한글 포함 문제

 

내가 지정해놓은 github 로컬 저장소에는 한글이 포함되어있는데 이 때문에 아래와 같은 오류가 났다.

 

Encoding::CompatibilityError: incompatible character encodings: CP949 and UTF-8
An error occurred while installing http_parser.rb (0.6.0), and Bundler cannot
continue.
Make sure that `gem install http_parser.rb -v '0.6.0' --source
'https://rubygems.org/'` succeeds before bundling.

In Gemfile:
  github-pages was resolved to 205, which depends on
    jekyll-avatar was resolved to 0.7.0, which depends on
      jekyll was resolved to 3.8.7, which depends on
        em-websocket was resolved to 0.5.1, which depends on
          http_parser.rb

 

 

위의 오류에서 말한대로

gem install http_parser.rb -v '0.6.0' --source 'https://rubygems.org/'

이렇게 설치해도 별 소용이 없었다. 디렉토리를 영어로만 이루어진 곳에서는 위와 같은 오류가 나지 않는다.

 

 

3. 테마 다운로드 후 덮어쓰기에서 발생할 수 있는 오류

 

대부분 사람들이 Jekyll 테마 적용 시 다른 사람의 깃허브에 들어가 파일을 zip으로 다운받고 이를 github 로컬저장소 자신의 폴더에 덮어쓰기하라고 말하는데 나 역시 그렇게 했다가 아래와 같은 오류를 봤다.

 

bundle exec jekyll serve

다음을 실행하면 아래와 같이 뜬다.

      Generating...
     Build Warning: Layout 'post' requested in _posts/2023-05-09-welcome-to-jekyll.markdown does not exist.
     Build Warning: Layout 'default' requested in 404.html does not exist.
     Build Warning: Layout 'page' requested in about.markdown does not exist.
     Build Warning: Layout 'home' requested in index.markdown does not exist.

 

이런 오류는 다른 사람들의 경우에는 터미널을 실행한 경로 때문이라고 했지만 나는 경로도 제대로 했고, 파일 역시 존재했다. 그래서 무슨 문제인지 한참을 고민하다가 원본 파일을 bundle install - bundle exec jekyll serve를 통해서 잘 작동하는 것을 확인했다.

 

즉, 기본으로 내가 설치했던 파일을 다 지우지 않고 그 위에 덮어씌우다보면 예전에 있던 파일들이 남게 되고 이 부분이 문제를 일으킨 것으로 보였다. 그래서 파일을 싹 다 지우고 (.git 빼고) 다운받은 파일을 옮기니 문제없이 동작하였다.

 

 

 

Comments