Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#38610 - [gcc-ada] gnatmake cannot build a library

Attached to Project: Arch Linux
Opened by Sylvain Laperche (grim7reaper) - Wednesday, 22 January 2014, 01:53 GMT
Last edited by Allan McRae (Allan) - Saturday, 08 February 2014, 12:07 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To Allan McRae (Allan)
Architecture x86_64
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:
When I try to build a library using gnatmake with a .gpr file, it always ends with the following error:
> End of compilation
> Exception name: SYSTEM.ASSERTIONS.ASSERT_FAILURE
> Message: namet.adb:655
>
> gnatmake: INTERNAL ERROR. Please report

This does not seems to be an upstream bug (see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59853).

Additional info:
* package version(s)
gcc-multilib 4.8.2-7
gcc-ada-multilib 4.8.2-7

I got the same problem with gcc-ada 4.8.2-7.


* config and/or log files etc.
# Command line

% gnatmake -v -Phello

Parsing project file "hello".
8 lines: No errors

Parsing of project file "hello" is finished.
Adding source directory "/home/grim7reaper/Documents/Developpements/Ada/simple_lib/src/".
Adding object directory "/home/grim7reaper/Documents/Developpements/Ada/simple_lib/obj/".
Adding "hello.adb" as if on the command line

GNATMAKE 4.8.2 20131219 (prerelease)
Copyright (C) 1995-2013, Free Software Foundation, Inc.
Changing to object directory of "Hello": "/home/grim7reaper/Documents/Developpements/Ada/simple_lib/obj/"
Library file does not exist for project "hello"
Main source file: "hello.adb".
Created configuration file "/home/grim7reaper/Documents/Developpements/Ada/simple_lib/obj/GNAT-TEMP-000001.TMP"
"hello.ali" being checked ...
-> "hello.ali" missing.
gcc -c -I- -gnatA /home/grim7reaper/Documents/Developpements/Ada/simple_lib/src/hello.adb
End of compilation
Exception name: SYSTEM.ASSERTIONS.ASSERT_FAILURE
Message: namet.adb:655

gnatmake: INTERNAL ERROR. Please report.


Steps to reproduce:
Please find in attachments a minimal set of source files for reproducing the bug:
- unpack the archive
- cd simple_lib
- gnatmake -Phello
This task depends upon

Closed by  Allan McRae (Allan)
Saturday, 08 February 2014, 12:07 GMT
Reason for closing:  Fixed
Additional comments about closing:  gcc-4.8.2-8 in [testing]
Comment by Allan McRae (Allan) - Wednesday, 22 January 2014, 04:56 GMT
Responded in upstream bug. This is because we removed static libraries, so linking static is going to fail. Interestingly, making a dynamic library also fails...
Comment by Sylvain Laperche (grim7reaper) - Wednesday, 22 January 2014, 05:09 GMT
Thank you for your reply.

Ok, so it is logical that the static one fails.

I have provided an example with a static library, but, as you noticed, a dynamic library fails in the same way (I forgot to mention this detail in my previous message).
Comment by Allan McRae (Allan) - Wednesday, 22 January 2014, 10:52 GMT
Turns out gnatmake expects the static library to be their even when it is doing dynamic linking... BAH!

I will fix this with the glibc-2.19 update on the 31st.
Comment by Sylvain Laperche (grim7reaper) - Wednesday, 22 January 2014, 11:56 GMT
Ok. That is a bit weird indeed.

Thank you for fixing it.

Loading...