1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438
|
======================================
Known problems in GPRBUILD version 2.1
======================================
Copyright (C) 2013-2014, AdaCore
The following is a listing of known problems in releases 2.1.1 and 2.1.2.
Each entry contains a status line stating when the problem was fixed, and on
which release(s). In addition, any wavefront issued subsequent to the date
specified (in ISO format YYYY-MM-DD) also contains the fix. This can be used
to determine if a given release or wavefront has the fix identified in the
entry.
Note that older releases might or might not be affected by the problems listed
in this document.
Known problems fixed in 2.2.1 and above
---------------------------------------
KP-21-NB04-012 aggregate project and illegal source compiled several times
Problem: When gprbuild is invoked with -jnn on a main aggregate project,
and the same illegal source in different projects in different
project trees needs to be compiled, gprbuild may crash.
Status: This was fixed in 2.3 on 2014-11-04
This was fixed in 2.2.1 on 2014-12-11
Workaround: Invoke gprbuild without -jnnn.
KP-21-NA22-018 Aggregate project, -k and compilation errors
Problem: When gprbuild is invoked with -k on a main aggregate project,
the exit code is successful even when there were compilation
errors.
Status: This was fixed in 2.2 on 2014-10-22
Workaround: Do not check exit code for gprbuild -k with a main aggregate
project.
KP-21-NA01-037 GPRslave stall when compilation are interrupted
Problem: When interrupting (ctrl-c) a distributed compilation it may
happen that the gprslave application becomes unresponsive.
The only solution is to restart the gprslave application.
Status: This was fixed in 2.2 on 2014-10-14
Workaround: Avoid interrupting a distributed compilation
KP-21-N922-032 Detect wrong usage of distributed builds
Problem: Compiling using the same build environment (directory) on
the a slave is erroneous and will at some point lock the
slave. This can happen if multiple distributed compilations
are started from the same computer using a project file with
the same name for example.
Status: This was fixed in 2.2 on 2014-09-23
Workaround: Use --slave-env with different names
KP-21-N909-016 Cannot install extended projects
Problem: Sources files and corresponding object and dependency files
from an extended projects are not properly install with
GPRinstall.
Status: This was fixed in 2.2 on 2014-09-10
Workaround: Install the missing files manually
KP-21-N814-013 Assembly languages and dependencies
Problem: Dependencies were not taken into account for the assembly
languages Asm, Asm2 and Asm_Cpp.
Status: This was fixed in 2.2 on 2014-08-20
Workaround: Add a Dependency_Switches declaration in package Compiler of the
project file.
KP-21-N728-003 Resources not properly freed in distributed mode
Problem: In distributed compilation mode the gprslave process was
not releasing the socket file descriptors. This in turn
was raising an exception after some time when some system
limits were reached.
Status: This was fixed in 2.2 on 2014-07-28
Workaround: Restart the gprslave process every day.
KP-21-N707-025 Empty value of 'Target
Problem: When gprbuild is call with --target= and attribute Target
is not declared, the value of project'Target is the empty string.
Status: This was fixed in 2.2 on 2014-09-05
Workaround: Declare attribute Target in the project file.
KP-21-N626-044 Unexpected recompilation in distributed mode
Problem: When building in distributed mode using slaves in a different
time-zone some unexpected recompilation are done.
Status: This was fixed in 2.2 on 2014-06-27
Workaround: Use only compilation slaves in the same time-zone.
KP-21-N623-009 Missing link step in distributed mode
Problem: When building in distributed mode projects with a user's
defined language it may happen that the final link step
is skipped.
Status: This was fixed in 2.2 on 2014-06-30
Workaround: Avoid using the distributed compilation with user's
defined languages.
KP-21-N514-009 Compilation switches -mxxx inhibited
Problem: When gprbuild is invoked without --codepeer, compilation
switches of the form -mxxx are not transmitted to the compiler.
Status: This was fixed in 2.2 on 2014-05-14
Workaround: Use gnatmake instead of gprbuild when using -mxxx switches.
KP-21-N507-022 gprinstall fail to install executable in aggregated projects
Problem: If the aggregated project is not using the default executable
name using a package Binder Executable attribute, gprinstall
will fail.
Status: This was fixed in 2.2 on 2014-05-07
Workaround: Install the aggregated projects separately.
KP-21-N505-036 Aggregate library directories
Problem: In some cases, when an aggregate library project had its
library directory or its library ALI directory the same as the
object directory of library directory of one of its aggregated
projects, gprbuild is unable to build correctly the aggegate
library.
Status: This was fixed in 2.2 on 2014-05-06
Workaround: Avoid the situation described above.
KP-21-N429-037 gprinstall may fail to remove symbolic links
Problem: Uninstalling using gprinstall may leave symbolic links (created
for shared libraries) dangling.
Status: This was fixed in 2.2 on 2014-04-30
Workaround: Remove the file manually.
KP-21-N423-036 Installation of aggregate SAL projects
Problem: gprinstall does not install properly aggregate Stand-Alone
Library projects. In particular, no ALI file is copied to
the library ALI directory.
Status: This was fixed in 2.2 on 2014-04-25
Workaround: Avoid installation of aggregate library projects.
KP-21-N422-033 Library exchange files of aggregate libraries
Problem: gprbuild creates the library exchange file of an aggregate
library project in the project directory, which may be read-only.
Status: This was fixed in 2.2 on 2014-04-25
Workaround: Make sure that the project directory of an aggregate library
project is writable.
KP-21-N422-024 gprinstall fails to properly install shared SAL
Problem: Shared standalone libraries are not properly installed and
cannot be used once install by gprinstall.
Status: This was fixed in 2.2 on 2014-04-22
Workaround: install the library manually.
KP-21-N422-023 gprinstall fails to properly install static SAL
Problem: Static standalone libraries are not properly installed and
cannot be used once install by gprinstall.
Status: This was fixed in 2.2 on 2014-04-22
Workaround: install the library manually.
KP-21-N416-050 Files not properly synchronized in distributed compilation
Problem: Some files are not properly synchronized when using two
directories for the same projects.
Status: This was fixed in 2.2 on 2014-04-17
Workaround: clear the remote slave environment (using gprclean) when
switching from one directory to another.
KP-21-N411-006 Better handle unexpected events in gprslave
Problem: In some cases (using old build master) gprslave could freeze
and become unresponsive.
Status: This was fixed in 2.2 on 2014-04-12
Workaround: do not use an old build master with recent gprslave version
KP-21-N409-006 Truncated files on distributed builds
Problem: If GPRbuild is killed abruptly it can happen that some truncated
sources are left on the slave's side.
Status: This was fixed in 2.2 on 2014-04-09
Workaround: remove all files on the slaves using GPRclean.
KP-21-N407-021 Hard killing a build master makes slaves unresponsive
Problem: Hard killing with ctrl-c a build master while synchronization of
sources is in progress makes the slaves unresponsive.
Status: This was fixed in 2.2 on 2014-05-01
Workaround: restart the remote slaves
KP-21-N407-018 Fail to clean-up remote slave with gpr protocol
Problem: When using the gpr protocol it is not possible to clean-up the
remote slaves with gprclean.
Status: This was fixed in 2.2 on 2014-04-07
Workaround: use the rsync protocol for cleaning-up the remote slaves.
KP-21-N331-007 Fail to compile large sources in distributed mode
Problem: When a project contains large sources or large objects
gprbuild may fail during the compilation phase when using
the gpr protocol.
Status: This was fixed in 2.2 on 2014-04-02
Workaround: use the rsync distributed compilation protocol.
KP-21-N319-020 gprbuild fails with binder switch "-s"
Problem: When gprbuild is invoked with the binder switch "-s". the binding
phase will fail as gnatbind is unable to find the sources.
Status: This was fixed in 2.2 on 2014-03-19
Workaround: Do not use binder switch "-s" when using gprbuild.
KP-21-N318-025 gprinstall does not recognized -d option
Problem: The -d option (short version of --dry-run) is documented
but not recognized by gprinstall.
Status: This was fixed in 2.2 on 2014-03-19
Workaround: Uses --dry-run instead.
KP-21-N313-008 gprinstall fails with spec naming exception
Problem: When gprinstall is invoked to install a library project file
that is not a Stand-Alone Library and there is a spec with
a naming exception, the installation will fail.
Status: This was fixed in 2.2 on 2014-03-13
Workaround: Avoid spec naming exceptions in library project file.
KP-21-N310-027 gprbuild wait indefinitely for some compilation results
Problem: If the Remote package Root_Dir attribute is not properly set
gprbuild may not terminate.
Status: This was fixed in 2.2 on 2014-03-10
Workaround: fix the Root_Dir attribute value.
KP-21-N120-075 gprclean -r and cycles in externally built projects
Problem: When there are several externally built projects in the project
tree and some of them form a cycle, through limited withs,
invoking gprclean with switch -r will result in a crash.
Status: This was fixed in 2.2 on 2014-01-21
Workaround: Avoid circularities in externally built projects or invoke
gprclean without switch -r.
KP-21-N103-018 Failure to link on target powerpc-xcoff-lynxos178
Problem: For target powerpc-xcoff-lynxos178, when there are two many
object files to be linked, because a response file is not used,
the linking phase may fail.
Status: This was fixed in 2.2 on 2014-01-06
Workaround: Add these two lines in package Linker of the main project:
for Response_File_Format use "GCC_GNU";
for Max_Command_Line_Length use "8192";
KP-21-MB30-011 Garbled output from parallel invocations of gnatbind
Problem: When gprbuild is invoked with -jnn and there are several mains,
several invocations of gprbind may be running in parallel and
their displayed gnatbind invocations may be garbled.
Status: This was fixed in 2.2 on 2013-12-01
Workaround: Ignore the problem or invoke gprbuild without -jnn.
KP-21-MB26-007 Dependency builder must be invoked from the object directory
Problem: When gprbuild performs parallel compilations and for some
language a dependency builder is invoked to build a dependency
file, the dependency builder may be invoked from the object
directory of another project and thus may fail if some of its
arguments are relative paths.
Status: This was fixed in 2.2 on 2013-11-27
Workaround: Use absolute paths for the arguments of a dependency builder.
KP-21-MB05-034 gprinstall fails to install projects built with sub-dirs
Problem: gprinstall is not able to install a code which has been
built with gprbuild's --subdirs option.
Status: This was fixed in 2.2 on 2013-11-05
Workaround: Install the code manually.
KP-21-MA31-004 Aggregated libraries and externally built
Problem: gprbuild was not properly dealing with externally built
projects on the dependencies. First it was trying to add the
object code from such libraries and failed to pass the library
on to the linker.
Status: This was fixed in 2.2 on 2013-11-01
Workaround: Remove the externally built projects from the dependencies if
possible and pass the corresponding library to the linker.
KP-21-MA30-041 Aggregated libraries and gprinstall
Problem: gprinstall was not properly handling aggregate libraries. The
installation was failing and/or the generated project was not
usable.
Status: This was fixed in 2.2 on 2013-11-02
Workaround: Install the software using a script.
Known problems fixed in 2.1.2 and above
---------------------------------------
KP-21-N421-002 Failing installing artifacts with gprinstall
Problem: When installing a static and relocatable build of the same
libraries for a library project having some artifacts,
gprinstall complains that the artifacts are already installed.
Status: This was fixed in 2.2 on 2014-04-21
This was fixed in 2.1.2 on 2014-05-14
Workaround: force installation for the second gprinstall call using -f
KP-21-N207-022 Fail to compile sources in distributed mode
Problem: Top level sources (sources found at the project's root
directory) will fail to compile on remote compilation slaves.
Status: This was fixed in 2.1.2 on 2014-02-07
Workaround: do not use the distributed compilation mode
KP-21-N206-041 wrong permissions set by gprinstall for binaries
Problem: On UNIX, a binary installed with gprinstall will have the
executable permission set only for the owner. This will prevent
others to execute this binary. It is a problem when installing
an application in a shared computer for example.
Status: This was fixed in 2.2 on 2014-02-06
This was fixed in 2.1.2 on 2014-05-14
Workaround: change the permissions manually using chmod
Known problems fixed in 2.1.1 and above
---------------------------------------
KP-21-MB06-054 gprinstall and shared library with version on windows
Problem: On Windows, gprinstall fails while installing a shared library
project when the attribute Library_Version is defined.
Status: This was fixed in 2.2 on 2013-11-06
This was fixed in 2.1.1 on 2013-11-27
Workaround: Manually install the library.
KP-21-MB06-015 gprinstall and standalone libraries
Problem: gprinstall does not generate a usable project file for
standalone libraries.
Status: This was fixed in 2.2 on 2013-11-06
This was fixed in 2.1.1 on 2013-11-27
Workaround: Manually adds the Library_Interface and Library_Standalone
attributes.
KP-21-MB05-020 gprconfig does not detect non GNAT gcc C and g++ compilers
Problem: gprconfig does not find all non GNAT gcc C and g++ compilers.
Status: This was fixed in 2.2 on 2013-11-07
This was fixed in 2.1.1 on 2013-12-10
Workaround: Manually edit a configuration project file and use it with
gprbuild.
|