llnl / llnl/camp

Missing entry point

Open
#124 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
107
Forks
26
Avg merge
8d 11h
Merged PRs (30d)
2

Description

MSVC seems to require entry points for some of your tests.
I'm using the following build script:
```
@echo off
setlocal
cd /d %~dp0
reg Query "HKLM\Hardware\Description\System\CentralProcessor\0" | find /i "x86" > NUL && set arch_command_length=32 || set arch_command_length=64
echo "%PROCESSOR_ARCHITECTURE%" | find /i "arm" > NUL && goto ARM || goto AMD

:ARM
IF %arch_command_length% == 32 (
set arch_string=x86_arm
set arch_command_length_string=x86
) ELSE (
set arch_string=amd64_arm64
set arch_command_length_string=x64
)
goto VC_VARC_INIT
:AMD
IF %arch_command_length% == 32 (
set arch_string=x86
set arch_command_length_string=x86
) ELSE (
set arch_string=amd64
set arch_command_length_string=x64
)
goto VC_VARC_INIT
:VC_VARC_INIT
call vcvarsall.bat %arch_string% -vcvars_ver=
call D:\My_Programs\Fortran\setvars.bat
set compiler_path=%VCToolsInstallDir%\bin\Host%arch_command_length_string%\%arch_command_length_string%\cl.exe
set linker_path=%VCToolsInstallDir%\bin\Host%arch_command_length_string%\%arch_command_length_string%\link.exe
set archiver_path=%VCToolsInstallDir%\bin\Host%arch_command_length_string%\%arch_command_length_string%\lib.exe
call "%DevEnvDir%\COMMONEXTENSIONS\MICROSOFT\CMAKE\CMake\bin\cmake.exe" -G "Ninja" -DBUILD_SHARED_LIBS=ON -DBLT_CXX_STD=c++17 -DENABLE_MPI=ON -DENABLE_CUDA=ON -DENABLE_OPENMP=ON -DCMAKE_AR:FILEPATH="%archiver_path%" -DCMAKE_LINKER:FILEPATH="%linker_path%" -DCMAKE_INSTALL_PREFIX:PATH="%CD%\out\install" -DCMAKE_CXX_COMPILER:FILEPATH="%compiler_path%" -DCMAKE_C_COMPILER:FILEPATH="%compiler_path%" -DCMAKE_BUILD_TYPE="Release" -DCMAKE_MAKE_PROGRAM="%DevEnvDir%\COMMONEXTENSIONS\MICROSOFT\CMAKE\Ninja\ninja.exe" "D:\Destranix\Documents\00Uni\Simulation\camp\"
call "%DevEnvDir%\COMMONEXTENSIONS\MICROSOFT\CMAKE\CMake\bin\cmake.exe" --build . --config Release
```

Maybe though I'm missing a required compile option? I'm also getting warnings like "field of class type without a DLL interface used in a class with a DLL interface" after I manually added entry points.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the Windows build script and the MSVC/Ninja test build it invokes, then identify which test targets lack entry points and which compile or link settings affect them. Rebuild the tests after the relevant configuration is understood; done means the tests link without manually added entry points or the reported DLL-interface warnings.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.