-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Long INCLUDE_MARKER paths confuses ktrans.exe (old versions only?) #14
Comments
I'm trying to replicate this, but I'm running into other errors trying to build |
Since I was interested in exploring what your build chain did under the hood, I ran things manually, using only ktransw and gpp. I explicitly built each source file, adding in include directories as needed. I only built the minimum set of required source files, which does not include I did need to make slight tweaks to |
Reproduced it. Interesting. This seems to be related to an overall (so both in Karel itself, but also in I've not done any work with system versions older than Thanks for reporting. I'll probably try and see whether I can add some work-around. |
hm. I've used I'll see if I can find that cell again. Edit: at least according to |
Fanuc manuals agree. Karel Reference manual for |
I've looked into this and it's not completely clear to me whether we can actually implement anything that would really resolve this - instead of working around it, as it seems this is a limitation of What should improve the situation already is if I'd introduce a newline between the (Really) long paths would still trigger the error, but for moderate length paths it could be enough. |
I haven't dug into Alternatively, you could just list the filename itself (no path) as the INCLUDE marker. Karel files should have unique filenames, so the path is not strictly required. This might require some subdirectory-scanning to locate the true absolute path, depending on how you're using this include marker. A 3rd solution would be to add a flag to prevent writing of INCLUDE_MARKER to the file. It appears as though this is a nicety added by gpp to facilitate consistent line numbering. In my experience, the line numbers of error messages generated from ktransw-processed code are not helpful anyway, since they reference lines in the include-expanded file (not the original source file). Removing these markers may not significantly affect the code output for many cases. |
this -- renumbering error output based on the markers -- is exactly what they are for :) I just haven't had a chance to implement the renumbering in That's the reason why I'd like to keep them around. |
No longer necessarily true. |
Running ktransw.py automatically embeds header files into the karel source file, along with an "INCLUDE_MARKER", referencing the original include line. This Include Marker includes the full path to the include file. For long paths, this seems to exceed a maximum line length for ktrans.exe, which causes a compile error.
Here's a sample INCLUDE_MARKER line from
fanuc_driver_exp/ros_traj.kl
:And the resulting ktrans build error:
I'm using
/ver V7.30-1
, to target the appropriate controller version. When I run with a current version (V8.30-1), there are no errors.Feel free to close this issue as "WONTFIX". I just wanted to highlight a potential bug, even if it is for a fairly old controller version.
The text was updated successfully, but these errors were encountered: