okherozyok opened a new issue, #19820:
URL: https://github.com/apache/nuttx/issues/19820

   ### Description / Steps to reproduce the issue
   
   **1. Follow the instructions in the document: Guides -> C++ Example using 
CMake:** 
     ./tools/configure.sh -l esp32s3-devkit:nsh
     make menuconfig ...
     Executing to "make export"
   
   **2. Creating my cpp project with vscode**
   _main.cpp:_
   #include "versionConfig.h"
   #include <cstdio>
   
   extern "C" int main(int, char*[])
   {
       printf("App Version: %s\n", HELLOCPP_VERSION_STRING);
       return 0;
   }
   _CMakePresets.json:_
   "configurePresets": [
           {
               "name": "nuttx-debug",
               "generator": "Ninja",
               "binaryDir": "${sourceDir}/build",
               "cacheVariables": {
                   "CMAKE_BUILD_TYPE": "Debug",
                   "CMAKE_TOOLCHAIN_FILE": 
"/home/globalz/nuttx-export-13.0.0/scripts/toolchain.cmake"
               }
           }
       ]
   _CMakeLists.txt:_
   cmake_minimum_required(VERSION 3.16)
   
   set(CMAKE_CXX_STANDARD 17)
   set(CMAKE_CXX_STANDARD_REQUIRED ON)
   
   project(Tiger4
           VERSION 0.0.0
   )
   
   configure_file(
       ${CMAKE_SOURCE_DIR}/versionConfig.h.in
       ${CMAKE_BINARY_DIR}/versionConfig.h
       @ONLY
   )
   
   file(GLOB_RECURSE TIGER 
       ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp
   )
   
   set(EXE_NAME "tiger4")
   
   add_executable(${EXE_NAME} ${TIGER})
   
   target_include_directories(${EXE_NAME} PRIVATE ${CMAKE_BINARY_DIR})
   
   add_custom_command(
       TARGET ${EXE_NAME}
       POST_BUILD
       COMMAND ${CMAKE_OBJCOPY} ARGS -S -O binary 
${CMAKE_BINARY_DIR}/${EXE_NAME} ${CMAKE_BINARY_DIR}/${EXE_NAME}.bin
   )
   
   **3. When build stopped, pay attention to the bolded words**
   [main] Building folder: /home/globalz/tiger4/build 
   [main] The folder containing the CMake cache is missing. The cache will be 
regenerated.
   [main] Configuring project: tiger4 
   [proc] Executing command: /usr/bin/cmake -DCMAKE_BUILD_TYPE=Debug 
-DCMAKE_TOOLCHAIN_FILE=/home/globalz/nuttx-export-13.0.0/scripts/toolchain.cmake
 -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -S /home/globalz/tiger4 -B 
/home/globalz/tiger4/build -G Ninja
   [cmake] -- Configuring done (12.6s)
   [cmake] -- Generating done (0.0s)
   [cmake] -- Build files have been written to: /home/globalz/tiger4/build
   [build] Starting build
   [proc] Executing command: /usr/bin/cmake --build /home/globalz/tiger4/build 
--
   [build] [1/2] Building CXX object CMakeFiles/tiger4.dir/src/main.cpp.obj
   [build] [2/2] Linking CXX executable tiger4
   [build] FAILED: tiger4 
   [build] : && /home/globalz/esp/xtensa-esp-elf/bin/xtensa-esp32s3-elf-ld 
-nostdlib --gc-sections --cref -Map=/home/globalz/nuttxspace/nuttx/nuttx.map 
--print-memory-usage --entry=_start 
**-T/home/globalz/nuttx-export-13.0.0/scripts/../scripts/esp32s3_peripherals.ld 
esp32s3_rom_aliases.ld flat_memory.ld esp32s3_sections.ld** 
CMakeFiles/tiger4.dir/src/main.cpp.obj -o tiger4   
-L/home/globalz/nuttx-export-13.0.0/scripts/../libs --start-group -lsched 
-ldrivers -lboards -lc -lmm -larch -lxx -lapps -lfs -lbinfmt -lboard -lboard  
/home/globalz/esp/xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/14.2.0/esp32s3/libgcc.a
 
/home/globalz/esp/xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/lib/esp32s3/libm.a
 
/home/globalz/esp/xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/lib/esp32s3/libsupc++.a
 
/home/globalz/esp/xtensa-esp-elf/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/lib/esp32s3/libstdc++.a
 --end-group && cd /hom
 e/globalz/tiger4/build && xtensa-esp32s3-elf-objcopy -S -O binary 
/home/globalz/tiger4/build/tiger4 /home/globalz/tiger4/build/tiger4.bin
   [build] /home/globalz/esp/xtensa-esp-elf/bin/**xtensa-esp-elf-ld: cannot 
find esp32s3_rom_aliases.ld: No such file or directory**
   [build] /home/globalz/esp/xtensa-esp-elf/bin/**xtensa-esp-elf-ld: cannot 
find flat_memory.ld: No such file or directory**
   [build] /home/globalz/esp/xtensa-esp-elf/bin/**xtensa-esp-elf-ld: cannot 
find esp32s3_sections.ld: No such file or directory**
   [build] ninja: build stopped: subcommand failed.
   [proc] The command: /usr/bin/cmake --build /home/globalz/tiger4/build -- 
exited with code: 1
   [driver] Build completed: 00:00:00.071
   [build] Build finished with exit code 1
   
   **4. I think the problem is in target.cmake or toolchain.cmake when make 
export**
   In target.cmake, there are 4 .lds:
   set(LDNAME              "esp32s3_peripherals.ld esp32s3_rom_aliases.ld 
flat_memory.ld esp32s3_sections.ld")
   
   In toolchain.cmake, only the first .ld has a path:
   set(LINKER_SCRIPT ${NUTTX_PATH}/scripts/${LDNAME})
   set(CMAKE_CXX_LINK_EXECUTABLE
       "<CMAKE_LINKER> ${LDFLAGS} --entry=${ENTRY_NAME} **-T${LINKER_SCRIPT}** 
<OBJECTS> -o <TARGET> <LINK_LIBRARIES> -L${NUTTX_PATH}/libs --start-group 
${LDLIBS} ${EXTRA_LIBS} --end-group"
   )
   
   ### On which OS does this issue occur?
   
   [OS: Linux]
   
   ### What is the version of your OS?
   
   Windows11 using wsl for Ubuntu 24.04.4 LTS
   
   ### NuttX Version
   
   13.0.0 , The same issue as 12.13.0 
   
   ### Issue Architecture
   
   [Arch: xtensa]
   
   ### Issue Area
   
   [Area: Build System]
   
   ### Host information
   
   _No response_
   
   ### Verification
   
   - [x] I have verified before submitting the report.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to