'"gdstk.h No such file or directory"
Answered below! Thanks @drescherjm
I am having some trouble generating the initial red rectangle in gdstk. I have copy-pasted source code below into a "Hello World" default Project in Eclipse but am getting the above error. I assume its because I need to "point" or include the referenced header file or somewhere include it in list of things to look [in binaries for (much like and <stdio.h> live)]. I have looked in Eclipse's help menu on how to add to the pile of ".h" file headers, but seems help menu is broken there too.
Adding in that I did eventually get it loaded in as a project (I think) from Git perspective tool within Eclipse but now when "building" I get the following error "No Toolchain". Original error has been surpassed by this one hahah.**
[No Toolchain found][3]
Tried some suggestions below *"change directory to the folder containing the CMakeLists.txt. Then type mkdir build and press enter then type cmake -S. -B build and press enter. This should build a C++ static library in the build folder
After that I got the following error:
(base) C:\Users\me>cd C:\Users\me\git\gdstk
(base) C:\Users\me\git\gdstk>mkdir build
A subdirectory or file build already exists.
(base) C:\Users\me\git\gdstk>cmake -S . -B build
-- Building for: NMake Makefiles
CMake Error at CMakeLists.txt:7 (project):
Running
'nmake' '-?'
failed with:
The system cannot find the file specified
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
See also "C:/Users/me/git/gdstk/build/CMakeFiles/CMakeOutput.log".
I tried some more stuff and am now stuck here:**
(base) C:\Users\me>conda config --env --add channels conda-forge
(base) C:\Users\me>conda config --env --set channel_priority strict
(base) C:\Users\me># Install gdstk
'#' is not recognized as an internal or external command,
operable program or batch file.
(base) C:\Users\me>conda config --env --add channels conda-forge
Warning: 'conda-forge' already in 'channels' list, moving to the top
(base) C:\Users\me>conda config --env --set channel_priority strict
(base) C:\Users\me>conda install gdstk
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: done
## Package Plan ##
environment location: C:\Users\me\Anaconda3
added / updated specs:
- gdstk
The following packages will be downloaded:
package | build
---------------------------|-----------------
gdstk-0.5.0 | py39h5ff6c76_0 489 KB conda-forge
libblas-3.9.0 |1_h8933c1f_netlib 193 KB conda-forge
liblapack-3.9.0 |5_hd5c7e75_netlib 2.7 MB conda-forge
libsodium-1.0.18 | h62dcd97_0 477 KB
zeromq-4.3.4 | hd77b12b_0 4.2 MB
------------------------------------------------------------
Total: 8.1 MB
The following NEW packages will be INSTALLED:
gdstk conda-forge/win-64::gdstk-0.5.0-py39h5ff6c76_0
libblas conda-forge/win-64::libblas-3.9.0-1_h8933c1f_netlib
liblapack conda-forge/win-64::liblapack-3.9.0-5_hd5c7e75_netlib
The following packages will be SUPERSEDED by a higher-priority channel:
conda conda-forge::conda-4.12.0-py39hcbf530~ --> pkgs/main::conda-4.12.0-py39haa95532_0
libsodium conda-forge::libsodium-1.0.18-h8d1472~ --> pkgs/main::libsodium-1.0.18-h62dcd97_0
zeromq conda-forge::zeromq-4.3.4-h0e60522_1 --> pkgs/main::zeromq-4.3.4-hd77b12b_0
Proceed ([y]/n)? y
Downloading and Extracting Packages
zeromq-4.3.4 | 4.2 MB | ############################################################################ | 100%
gdstk-0.5.0 | 489 KB | ############################################################################ | 100%
libblas-3.9.0 | 193 KB | ############################################################################ | 100%
liblapack-3.9.0 | 2.7 MB | ############################################################################ | 100%
libsodium-1.0.18 | 477 KB | ############################################################################ | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
(base) C:\Users\me>cd C:\Users\me\git\gdstk
(base) C:\Users\me\git\gdstk>mkdir build
A subdirectory or file build already exists.
(base) C:\Users\me\git\gdstk>python setup.py install
running install
running bdist_egg
running egg_info
writing gdstk.egg-info\PKG-INFO
writing dependency_links to gdstk.egg-info\dependency_links.txt
writing requirements to gdstk.egg-info\requires.txt
writing top-level names to gdstk.egg-info\top_level.txt
reading manifest file 'gdstk.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'gdstk.egg-info\SOURCES.txt'
installing library code to build\bdist.win-amd64\egg
running install_lib
running build_ext
cmake -S C:\Users\me\git\gdstk -B C:\Users\me\git\gdstk\build\temp.win-amd64-3.9\Release\cmake_build -DCMAKE_INSTALL_PREFIX=C:\Users\me\git\gdstk\build\temp.win-amd64-3.9\Release\cmake_build\install -DCMAKE_BUILD_TYPE=Release
CMake Error at CMakeLists.txt:7 (project):
Running
'nmake' '-?'
failed with:
The system cannot find the file specified
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
See also "C:/Users/me/git/gdstk/build/temp.win-amd64-3.9/Release/cmake_build/CMakeFiles/CMakeOutput.log".
error: command 'C:\\Program Files\\CMake\\bin\\cmake.exe' failed with exit code 1
(base) C:\Users\me\git\gdstk>cmake -S . -B build
CMake Error at CMakeLists.txt:7 (project):
Running
'nmake' '-?'
failed with:
The system cannot find the file specified
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
See also "C:/Users/me/git/gdstk/build/CMakeFiles/CMakeOutput.log".
(base) C:\Users\me\git\gdstk>
EDIT I tried the first answer given below and am running into the following issue when configuring/generating cmake:
me@l-ul71kght6q MINGW64 ~/projects/gdstk
$ cmake -S . -B build -G"MSYS Makefiles"
CMake Error: Could not create named generator MSYS Makefiles
Generators
* Unix Makefiles = Generates standard UNIX makefiles.
Ninja = Generates build.ninja files.
Ninja Multi-Config = Generates build-<Config>.ninja files.
CodeBlocks - Ninja = Generates CodeBlocks project files.
CodeBlocks - Unix Makefiles = Generates CodeBlocks project files.
CodeLite - Ninja = Generates CodeLite project files.
CodeLite - Unix Makefiles = Generates CodeLite project files.
Eclipse CDT4 - Ninja = Generates Eclipse CDT 4.0 project files.
Eclipse CDT4 - Unix Makefiles= Generates Eclipse CDT 4.0 project files.
Kate - Ninja = Generates Kate project files.
Kate - Unix Makefiles = Generates Kate project files.
Sublime Text 2 - Ninja = Generates Sublime Text 2 project files.
Sublime Text 2 - Unix Makefiles
= Generates Sublime Text 2 project files.
Solution 1:[1]
Prerequisites: Install MinGW using MSYS2: How to install MinGW-w64 and MSYS2?
To build gdstk I opened the C:\msys64 folder in the windows 10 file explorer and double clicked on mingw64.exe to open a terminal with mingw64 setup.
Make sure you have cmake installed in msys2:
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~
# pacman -S cmake
warning: cmake-3.22.1-2 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Packages (1) cmake-3.22.1-2
Total Installed Size: 35.63 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring [#####################] 100%
(1/1) checking package integrity [#####################] 100%
(1/1) loading package files [#####################] 100%
(1/1) checking for file conflicts [#####################] 100%
(1/1) checking available disk space [#####################] 100%
:: Processing package changes...
(1/1) reinstalling cmake [#####################] 100%
I then typed the following to create and change directory to a projects folder:
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~
# mkdir projects
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~
# cd projects/
Then clone the repository:
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~/projects
# git clone https://github.com/heitzmann/gdstk.git
Cloning into 'gdstk'...
remote: Enumerating objects: 3789, done.
remote: Counting objects: 100% (618/618), done.
remote: Compressing objects: 100% (121/121), done.
remote: Total 3789 (delta 524), reused 497 (delta 497), pack-reused 3171
Receiving objects: 100% (3789/3789), 4.83 MiB | 13.37 MiB/s, done.
Resolving deltas: 100% (2982/2982), done.
Then change directory to the gdsdk folder and create a build folder:
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~/projects
# cd gdstk/
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~/projects/gdstk
# mkdir build
Then configure and generate in cmake.
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~/projects/gdstk
# cmake -S . -B build -G"MSYS Makefiles"
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/msys64/mingw64/bin/gcc.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/msys64/mingw64/bin/g++.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found ZLIB: C:/msys64/mingw64/lib/libz.dll.a (found suitable version "1.2.12", minimum required is "1.2.9")
-- Configuring done
-- Generating done
-- Build files have been written to: C:/msys64/home/dresc/projects/gdstk/build
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~/projects/gdstk
#
Then build and install:
JMDLAPTOP1+dresc@JMDLAPTOP1 MINGW64 ~/projects/gdstk
# cmake --build build --target install
[ 2%] Building CXX object CMakeFiles/gdstk.dir/src/cell.cpp.obj
[ 5%] Building CXX object CMakeFiles/gdstk.dir/src/clipper_tools.cpp.obj
[ 8%] Building CXX object CMakeFiles/gdstk.dir/src/curve.cpp.obj
[ 11%] Building CXX object CMakeFiles/gdstk.dir/src/flexpath.cpp.obj
[ 14%] Building CXX object CMakeFiles/gdstk.dir/src/gdsii.cpp.obj
[ 17%] Building CXX object CMakeFiles/gdstk.dir/src/label.cpp.obj
[ 20%] Building CXX object CMakeFiles/gdstk.dir/src/library.cpp.obj
[ 22%] Building CXX object CMakeFiles/gdstk.dir/src/oasis.cpp.obj
[ 25%] Building CXX object CMakeFiles/gdstk.dir/src/polygon.cpp.obj
[ 28%] Building CXX object CMakeFiles/gdstk.dir/src/property.cpp.obj
[ 31%] Building CXX object CMakeFiles/gdstk.dir/src/rawcell.cpp.obj
[ 34%] Building CXX object CMakeFiles/gdstk.dir/src/reference.cpp.obj
[ 37%] Building CXX object CMakeFiles/gdstk.dir/src/repetition.cpp.obj
[ 40%] Building CXX object CMakeFiles/gdstk.dir/src/robustpath.cpp.obj
[ 42%] Building CXX object CMakeFiles/gdstk.dir/src/style.cpp.obj
[ 45%] Building CXX object CMakeFiles/gdstk.dir/src/utils.cpp.obj
[ 48%] Building CXX object CMakeFiles/gdstk.dir/src/clipperlib/clipper.cpp.obj
[ 51%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/global_r.c.obj
[ 54%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/stat_r.c.obj
[ 57%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/geom2_r.c.obj
[ 60%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/poly2_r.c.obj
[ 62%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/merge_r.c.obj
[ 65%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/libqhull_r.c.obj
[ 68%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/geom_r.c.obj
[ 71%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/poly_r.c.obj
[ 74%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/qset_r.c.obj
[ 77%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/mem_r.c.obj
[ 80%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/random_r.c.obj
[ 82%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/usermem_r.c.obj
[ 85%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/userprintf_r.c.obj
[ 88%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/io_r.c.obj
[ 91%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/user_r.c.obj
[ 94%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/rboxlib_r.c.obj
[ 97%] Building C object CMakeFiles/gdstk.dir/src/libqhull_r/userprintf_rbox_r.c.obj
[100%] Linking CXX static library libgdstk.a
[100%] Built target gdstk
Install the project...
-- Install configuration: "Release"
-- Installing: C:/Program Files (x86)/gdstk/lib/libgdstk.a
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/allocator.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/array.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/cell.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/clipper_tools.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/curve.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/flexpath.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/font.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/gdsii.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/gdswriter.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/label.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/library.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/map.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/oasis.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/pathcommon.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/polygon.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/property.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/rawcell.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/reference.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/repetition.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/robustpath.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/set.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/sort.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/style.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/utils.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk/vec.h
-- Installing: C:/Program Files (x86)/gdstk/include/gdstk.h
-- Installing: C:/Program Files (x86)/gdstk/lib/pkgconfig/gdstk.pc
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 |


