tmolteno / necpp

NEC2++ is a C++ rewrite of the Numerical Electromagnetics Code (NEC-2) with many new features like automatic error detection when you specify the structure incorrectly and much faster execution. Nec2++ can analyse radiating as well as scattering properties of structures. The simulation engine in Nec2++ is compiled into a library for easy integration into automatic antenna design systems or GUI tools. Examples are included for using Nec2++ from C/C++, Ruby and Python.
http://elec.otago.ac.nz/w/index.php/Necpp
GNU General Public License v2.0
235 stars 64 forks source link

unable to install in windows 10 error C2039: 'toupper': is not a member of 'std' under pycharm #64

Open pggood opened 3 years ago

pggood commented 3 years ago

pip install is failing on widows 10 with C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DBUILD_PYTHON=1 -Inecpp_src/src/ -Inecpp_src/ -ID:\users\peter\PycharmProjects\Antenna_genetic\venv\include -ID:\Python\Python38-32\include -ID:\Python\Python38-32\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt" /EHsc /Tpnecpp_src/src\misc.cpp /Fobuild\temp.win32-3.8\Release\necpp_src/src\misc.obj misc.cpp necpp_src/src\misc.cpp(110): error C2039: 'toupper': is not a member of 'std' C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include\iostream(14): note: see declaration of 'std' necpp_src/src\misc.cpp(111): error C2039: 'toupper': is not a member of 'std' C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\include\iostream(14): note: see declaration of 'std' error: command 'C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\cl.exe' failed with exit status 2

pggood commented 3 years ago

Changing line 110 and 111 from buff[0] = static_cast(std::toupper(buff[0])); buff[1] = static_cast(std::toupper(buff[1])); to buff[0] = static_cast(_toupper(buff[0])); buff[1] = static_cast(_toupper(buff[1])); Appears it to compile havent tested it though