0. 준비
가. ubuntu 18.04
나. ros melodic
1. roslaunch 실행시 알 수없는 경고 현상
가. roslaunch 실행시에 아래와 같은 경고가 나타남
/opt/ros/melodic/lib/python2.7/dist-packages/roslib/packages.py:470: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
if resource_name in files:
나. 어떠한 파일에서 경고가 나오는지는 확인할 수 없었음
다. $HOME/.ros/log/lastest의 로그에서 상세한 로그가 있는지 확인하려 했으나 확인할 수 없었음
라. 아래와 같은 방식으로 경고가 없어지는지 하나씩 확인함
1) launch 파일에서 다양한 노드를 실행하고 있었으므로 노드를 하나씩만 실행하여 어떠한 노드가 실행할 때 에러가 발생하는 지 확인, 특정한 노드를 실행할 때 경고가 나타나는 것을 확인함
2) 경고가 발생한 패키지의 소스코드를 삭제하고 main에 printf하나만 입력하였으나 그래도 경고발생
3) 해당 패키지의 src에 시험용 소스코드를 여러개 포함하고 있었으므로 이를 이상하다고 여겨, 시험용 디렉토리를 삭제해봄, 경고가 나타나지 않음
2. 경고현상 파악 및 해결
가. src에 시험용 소스코드를 포함한 디렉토리를 삭제함으로 경고현상이 해결됨
나. 시험용 소스코드가 2개의 디렉토리에 있었는데, 1개의 디렉토리를 삭제하면 경고가 없어졌고, 다른 1개의 디렉토리를 삭제하면 경고가 없어지지 않았음.
다. 2개의 디렉토리가 가진 다른 점을 확인하였음
라. 실행권한이 다른 것이 있는 파일 및 한글파일명의 존재유무임
마. 실행권한은 상관없었음
바. 한글파일명으로 인한 경고임
1) 경고에도 unicode가 포함된 것으로 보아 한글 파일명을 영어로 변경
사. 실행시 이상없음
3. ros에서 실행파일과 상관없이 src에 한글파일명이 있는 파일이 존재할 경우 경고가 나타남