Today Mini Learned :

기록하는 습관 들이기

ACTIVITY/모각코 (2020 여름)

[모각코] 6회차 결과 (200805)

얌챠 2020. 8. 5. 17:58
  • llvm pass로 hello world 출력 (5회차에 이어서) ✔(아래 목표로 전환)
  • pass skeleton을 통해 나만의 pass작성해보기 👉 마무리 글에서 이어서 해 볼것!

  저번 주차에 만든 yampass... 여기 부분을 하면서 막혔다.

gmake가 없어 make명령어로 하려고 했으나 make도 실패ㅠㅠ 오류 화면을 캡쳐해둬야 했는데 아쉽다. 대충 읽어보니 기존에 있던 helloworld 패스와 yampass가 충돌하는지 helloworld가 또 있다며 에러가 나는 내용이었다. 

 

이 문제를 해결하려다 보니 같이 모각코를 하는 친구의 글을 보니 내가 빌드가 덜 된 것 같다는 것을 발견...! 따라서 지금 cmake부터 다시 하는 중이다. 이게 끝나면 우선, make가 잘 되는지 보고, yampass의 충돌 문제를 해결해야 할 것 같다.

 

 

yampass에서 충돌이 발생했던 문제로, https://github.com/sampsyo/llvm-pass-skeleton 를 참고하여 패스를 다시 작성해보기로 했다. 스켈레톤에 주어진 코드는 helloworld랑 크게 다르지 않고, CMakeList와 .cpp파일이 존재했다. 이전과정과 비슷하게 코드를 넣고 실행해보면 될 것 같다! 완전 다른 파일이니까 helloworld랑 충돌이 안 날 것 같긴 한데 아직 build중이어서 해 볼 수가 없었다. 이따가 빌드가 다 된후 한번 다시 마무리지을 예정이다.

 

 

+ 여담으로 cmake를 할 때, 나는 뒤의 target ~~..를 못 보고 그냥 cmake --build . 까지만 했었는데 그거는 그냥 빌드까지만 하는거고, cmake --build . --target install 명령어는 바로 설치까지 해 주는거라 완전 다른 명령어라고 할 수 있었다...! 혹시 llvm_tuto/build/에 아무것도 없었던 이유가 이게 아닐까 싶다...


cmake build까지 완료했다! 그 이후는 다음 글에 이어서 쓰려고 한다.