Skip to content
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

Error compiling Ada code when using build-langkit-support option #501

Closed
srb623 opened this issue Apr 29, 2021 · 8 comments
Closed

Error compiling Ada code when using build-langkit-support option #501

srb623 opened this issue Apr 29, 2021 · 8 comments

Comments

@srb623
Copy link

srb623 commented Apr 29, 2021

I have cloned the repository via:
git clone https://github.com/AdaCore/langkit.git
and then followed the instructions to build the code. I typed in:
pip install .
and this worked fine. I then typed in:
python manage.py build-langkit-support --library-types=static,static-pic,relocatable
and the following set of error messages are displayed:

error: "langkit_support-adalog-abstract_relation.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-debug.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-eq_same.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-logic_ref.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-logic_var.ads" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-main_support.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-operations.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-predicates.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-pure_relations.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-relations.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-unify.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-unify_lr.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-unify_one_side.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog.ads" has been modified and must be recompiled
error: "langkit_support-diagnostics-output.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-diagnostics.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-errors.ads" has been modified and must be recompiled
error: "langkit_support-file_readers.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-generic_api-analysis.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-generic_api.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-internal.ads" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-lexical_envs.ads" has been modified and must be recompiled
error: "langkit_support-lexical_envs_impl.adb" must be recompiled ("langkit_support-errors.ads" has been modified)
error: "langkit_support-slocs.adb" must be recompiled ("langkit_support-slocs.ads" has been modified)
error: "langkit_support-symbols-precomputed.adb" must be recompiled ("langkit_support-symbols.ads" has been modified)
error: "langkit_support-symbols.adb" must be recompiled ("langkit_support-symbols.ads" has been modified)
error: "langkit_support-text.adb" must be recompiled ("langkit_support-text.ads" has been modified)
error: "langkit_support-token_data_handlers.adb" must be recompiled ("langkit_support-slocs.ads" has been modified)
gprlib: invocation of /opt/ides/gnat/2020/bin/gnatbind failed
gprbuild: could not build library for project langkit_support
Traceback (most recent call last):
  File "/home/xxx/Programs/Development-Tools/GNAT/langkit/manage.py", line 291, in <module>
    args.func(args, unknown_args)
  File "/home/xxx/Programs/Development-Tools/GNAT/langkit/manage.py", line 87, in wrapper
    fn(args)
  File "/home/xxx/Programs/Development-Tools/GNAT/langkit/manage.py", line 118, in build_langkit_support
    subprocess.check_call(base_argv + [f"-XLIBRARY_TYPE={library_type}"])
  File "/usr/lib/python3.9/subprocess.py", line 373, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['gprbuild', '-P', '/home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support.gpr', '-p', '-j4', '-XBUILD_MODE=dev', '-XLIBRARY_TYPE=relocatable']' returned non-zero exit status 4.

I have tried the command without the --library-types to build only one library type, but the error message is the same. What am I doing wrong ?

pmderodat added a commit to pmderodat/langkit that referenced this issue Apr 29, 2021
@pmderodat
Copy link
Member

Hello,

This is very surprising: gprbind complains about modified sources whereas they are supposed to be compiled in the current project (so gprbuild is supposed to have just compiled them). Unfortunately we cannot reproduce for now: do you have this problem every single time, or just once in a while?

Could you please get changes from #502 and re-run the build-langkit-support command, but this time adding the --gargs=-vl argument, and send the whole output? Hopefully we’ll notice something fishy there.

pmderodat added a commit to pmderodat/langkit that referenced this issue Apr 29, 2021
@srb623
Copy link
Author

srb623 commented Apr 30, 2021

Fetched as requested, and then ran, and still fails with the same error message, but the '-vl' produces a lot of logging which I hope is helpful to you. The problem occurs every time that I run it - even when I remove the entire langkit directory and fetch a fresh version of the code from git - as I have just performed.

object directory "/home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev" created for project Langkit_Support
library directory "/home/xxx/Programs/Development-Tools/GNAT/langkit/support/lib/relocatable/dev" created for project Langkit_Support
Changing to object directory of "Langkit_Support": "/home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/"
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-tree_traversal_iterator.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000005.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-file_readers.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000006.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-eq_same.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-array_utils.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-unify.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-cheap_sets.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-unify_one_side.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000006.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-operations.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-logic_var.ads
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-bump_ptr.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-debug.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-errors.ads
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-text.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-images.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-token_data_handlers.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000005.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-main_support.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-relative_get.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-symbols.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000006.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog.ads
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000006.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-diagnostics-output.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000006.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-predicates.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000006.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-unify_lr.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-lexical_envs_impl.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000006.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-lexical_envs.ads
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-iterators.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-pure_relations.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-relations.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-packrat.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-slocs.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support.ads
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-generic_api.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000005.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-internal.ads
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-vectors.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-symbols-precomputed.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-abstract_relation.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-hashes.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-types.ads
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000005.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-generic_api-analysis.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000004.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-adalog-logic_ref.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-boxes.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000006.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-diagnostics.adb
/opt/ides/gnat/2020/bin/gcc -c -x ada -gnatA -fPIC -gnatwa -gnatyg -fPIC -g -O0 -gnatwe -gnata -gnatec=/tmp/GNAT-TEMP-000003.TMP -gnatem=/tmp/GNAT-TEMP-000007.TMP /home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support-bump_ptr-vectors.adb
/opt/ides/gnat/2020/libexec/gprbuild/gprlib langkit_support.lexch
/opt/ides/gnat/2020/bin/gnatbind -n -o b__langkit_support.adb -Llangkit_support -a /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-abstract_relation.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-debug.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-eq_same.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-logic_ref.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-logic_var.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-main_support.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-operations.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-predicates.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-pure_relations.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-relations.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-unify.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-unify_lr.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-unify_one_side.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-array_utils.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-boxes.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-bump_ptr-vectors.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-bump_ptr.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-cheap_sets.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-diagnostics-output.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-diagnostics.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-errors.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-file_readers.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-generic_api-analysis.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-generic_api.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-hashes.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-images.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-internal.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-iterators.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-lexical_envs.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-lexical_envs_impl.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-packrat.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-relative_get.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-slocs.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-symbols-precomputed.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-symbols.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-text.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-token_data_handlers.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-tree_traversal_iterator.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-types.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-vectors.ali /home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support.ali -F=/tmp/GNAT-TEMP-000008.TMP
error: "langkit_support-adalog-abstract_relation.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-debug.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-eq_same.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-logic_ref.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-logic_var.ads" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-main_support.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-operations.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-predicates.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-pure_relations.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-relations.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-unify.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-unify_lr.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog-unify_one_side.adb" must be recompiled ("langkit_support-adalog.ads" has been modified)
error: "langkit_support-adalog.ads" has been modified and must be recompiled
error: "langkit_support-diagnostics-output.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-diagnostics.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-errors.ads" has been modified and must be recompiled
error: "langkit_support-file_readers.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-generic_api-analysis.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-generic_api.adb" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-internal.ads" must be recompiled ("langkit_support-diagnostics.ads" has been modified)
error: "langkit_support-lexical_envs.ads" has been modified and must be recompiled
error: "langkit_support-lexical_envs_impl.adb" must be recompiled ("langkit_support-errors.ads" has been modified)
error: "langkit_support-slocs.adb" must be recompiled ("langkit_support-slocs.ads" has been modified)
error: "langkit_support-symbols-precomputed.adb" must be recompiled ("langkit_support-symbols.ads" has been modified)
error: "langkit_support-symbols.adb" must be recompiled ("langkit_support-symbols.ads" has been modified)
error: "langkit_support-text.adb" must be recompiled ("langkit_support-text.ads" has been modified)
error: "langkit_support-token_data_handlers.adb" must be recompiled ("langkit_support-slocs.ads" has been modified)
gprlib: invocation of /opt/ides/gnat/2020/bin/gnatbind failed
gprbuild: could not build library for project langkit_support
Traceback (most recent call last):
  File "/home/xxx/Programs/Development-Tools/GNAT/langkit/manage.py", line 296, in <module>
    args.func(args, unknown_args)
  File "/home/xxx/Programs/Development-Tools/GNAT/langkit/manage.py", line 87, in wrapper
    fn(args)
  File "/home/xxx/Programs/Development-Tools/GNAT/langkit/manage.py", line 119, in build_langkit_support
    subprocess.check_call(base_argv + [f"-XLIBRARY_TYPE={library_type}"])
  File "/usr/lib/python3.9/subprocess.py", line 373, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['gprbuild', '-P', '/home/xxx/Programs/Development-Tools/GNAT/langkit/support/langkit_support.gpr', '-p', '-j4', '-XBUILD_MODE=dev', '-vl', '-XLIBRARY_TYPE=relocatable']' returned non-zero exit status 4.

pmderodat added a commit that referenced this issue May 3, 2021
@pmderodat
Copy link
Member

That’s puzzling. Langkit_Support is a pure Ada project and its sources are not generated, so it must be a toolchain issue, but for now I have no idea how this can be possible.

@pmderodat
Copy link
Member

Hello again,

Just to check that the problem does not come from the manage.py script, could you run the following command from a clean Langkit checkout?

gprbuild -P support/langkit_support.gpr -p -j4 -XBUILD_MODE=dev -vl -XLIBRARY_TYPE=relocatable

@pmderodat
Copy link
Member

Also, if it still fails, could you send as attachments the following files?

/home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog-abstract_relation.ali
/home/xxx/Programs/Development-Tools/GNAT/langkit/support/obj/dev/langkit_support-adalog.ali

@srb623
Copy link
Author

srb623 commented May 7, 2021

As requested, I fetched a clean version of langkit and then ran the gprbuild command that you provided and all worked perfectly - compiled with no errors and ran to completion. I have tried it for the static and static-pic library types and these also compile fine and to completion.

Roldak pushed a commit to Roldak/langkit that referenced this issue May 7, 2021
@pmderodat
Copy link
Member

Ok, thank you for the experiment. The manage.py wrapper is only supposed to remove all files matching support/obj/dev/*.lexch before each call to gprbuild, and most importantly, it’s supposed to build for relocatable first, then static-pic and finally static. The log you sent earlier showed that the failured happened during the first step (relocatable) after a fresh clone, i.e. when the object directory (support/obj/dev) and thus the *.lexch file didn’t even exist yet. It’s really unclear what’s going on.

Could you re-try running the manage.py script and send the *.ali files mentionned above? Hopefully we’ll be able to find more information in their dependency tracking data (the very ones that gnatbind reads before raising the error discussed here).

@srb623
Copy link
Author

srb623 commented May 8, 2021

Now I am totally confused as I re-ran the manage.py script as requested and this time, without any changes to my Debian Linux/Testing system that I think would have an impact, and without any changes to the toolchain, the script now runs to completion and builds the three library types. I can then run the installer and that works perfectly as well. So, I apologise if I have wasted your time, but for the life of me, I cannot work out what has changed at my end to make things work now, but could have caused the failures that I had been experiencing before.

@srb623 srb623 closed this as completed May 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants