#/* # * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more # * contributor license agreements. See the NOTICE file distributed with # * this work for additional information regarding copyright ownership. # * The OpenAirInterface Software Alliance licenses this file to You under # * the OAI Public License, Version 1.1 (the "License"); you may not use this file # * except in compliance with the License. # * You may obtain a copy of the License at # * # * http://www.openairinterface.org/?page_id=698 # * # * Unless required by applicable law or agreed to in writing, software # * distributed under the License is distributed on an "AS IS" BASIS, # * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # * See the License for the specific language governing permissions and # * limitations under the License. # *------------------------------------------------------------------------------- # * For more information about the OpenAirInterface (OAI) Software Alliance: # * contact@openairinterface.org # */ #--------------------------------------------------------------------- # # Dockerfile for the Open-Air-Interface BUILD service # Valid for Ubuntu 24.04 # #--------------------------------------------------------------------- FROM nvidia/cuda:12.9.1-devel-ubuntu22.04 AS cuda-image FROM ran-base:develop AS ran-tests RUN rm -Rf /oai-ran COPY --from=cuda-image /usr/local/cuda/ /usr/local/cuda/ # Set the LD_LIBRARY_PATH to ensure the system can find the copied libraries. # This is crucial for applications that use CUDA. ENV LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/targets/sbsa-linux/lib ENV PATH=/usr/local/cuda/bin:$PATH ENV C_INCLUDE_PATH=/usr/local/cuda/include WORKDIR /oai-ran COPY . . WORKDIR /oai-ran/build RUN cmake -GNinja -DENABLE_PHYSIM_TESTS=ON -DENABLE_TESTS=ON \ -DSANITIZE_UNDEFINED=OFF -DSANITIZE_ADDRESS=OFF \ -DCMAKE_C_FLAGS=-Werror -DCMAKE_CXX_FLAGS=-Werror \ -DPHYSIM_CHECK_FILES="ThresholdsCuda.cmake" \ -DCUDA_ENABLE=ON \ -DUSE_UNIFIED_MEMORY=ON \ -DUSE_ATS_MEMORY=OFF \ -DCMAKE_RUNTIME_OUTPUT_DIRECTORY=/oai-ran/cmake_targets/ran_build/build \ .. && \ ninja nr_ulsim nr_dlsim