Project

General

Profile

Actions

Support Request #8334

closed

Race condition when installing osg libraries

Added by hidden over 4 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Customer:
AUDI
Department:
EF
Requester's Priority:
Normal
Support Level:
3rd Level
Resolution:
Product Issue Opened
Affected Products:
Platform:
Ubuntu 16.04 64bit, Windows 10 64bit
Topic:
DisplayTB::Common
FAQ Links:

Description

Supportanfrage

when building the examples the install target of each mixin will try copy the osg library to the bin folder.

This may lead to the error message:
"file INSTALL cannot duplicate symlink"

Ganesh implemented a workaround in ADTF_DISPLAY_TOOLBOXMacros.cmake. Here we create a list of installation folders. If the folder is already in the list it won't be added again:

function(disptb_install_osg OUTPUT_PATH)
set(GLOBAL_OSG_DEST $ENV{GLOBAL_OSG_DEST})
list(FIND GLOBAL_OSG_DEST ${OUTPUT_PATH} INDEX)
if(INDEX EQUAL -1)
list(APPEND GLOBAL_OSG_DEST ${OUTPUT_PATH})
set(ENV{GLOBAL_OSG_DEST} "${GLOBAL_OSG_DEST}")
else()
message(STATUS "Skipping installation of OSG libraries to ${OUTPUT_PATH}. Installation already scheduled in ${GLOBAL_OSG_DEST}")
return()
endif()

disptb_find_osg()

Note: This solution works well if we build all targets at once. If someone is only installing a single target it may happen that the osg libraries are not installed because their installation is configured for another target.

Lösung

Ticket ADISTB-1014 im Produkt angelegt

Actions

Also available in: Atom PDF