So I was modifying a python executable in a ros package named my_turtlebot2_training. I saved the python file after modifying it. When I run catkin_make under ~/catkin_ws, all I got is:
####
#### Running command: "make cmake_check_build_system" in "/home/afrl/catkin_ws/build"
####
####
#### Running command: "make -j8 -l8" in "/home/afrl/catkin_ws/build"
####
[ 0%] Built target _theconstruct_msgs_generate_messages_check_deps_RLExperimentInfo
[ 14%] Built target theconstruct_msgs_generate_messages_nodejs
[ 42%] Built target theconstruct_msgs_generate_messages_eus
[ 71%] Built target theconstruct_msgs_generate_messages_py
[100%] Built target theconstruct_msgs_generate_messages_lisp
[100%] Built target theconstruct_msgs_generate_messages_cpp
[100%] Built target theconstruct_msgs_generate_messages
Which did not reflect any changes to my python file. I even tried modifying it to output an error, like adding import sdfsdfasddgfk
, but catkin_make still does not output an error.
catkin_make
doesn't do any effect to python files. You must make your Python file executable by making chmod +x your_python_file.py
Then you can run rosrun my_turtlebot2_training your_python_file.py
Simply, since Python is an interpreted language, catkin
does not compile Python files.