Comments (4)
Ok, it's built.
These steps seem to be required. It would take a few cycles of deleting and rebuilding to prove it, best to assume they are.
vcpkg integrate install #not sure this is necessary
#add the installed shared libraries directory to your PATH environment variable
#something like 'vcpkg/installed/x64-windows/bin/'
When writing instructions, it's usually best to assume the worst in regard to the user's ability to understand them.
I recommend either adding
"these instructions are a template or guide, they have not been tested on all systems."
or the the expensive process of testing them on all systems.
The huge variety of package managers and their details means that very few users will know all of them. I'd never seen vcpkg until this install.
To get x64 working I had to do this:
vcpkg install fontconfig:x64-windows freetype:x64-windows harfbuzz:x64-windows glfw3:x64-windows
I had to do it multiple times due to a spotty network connection (I'm working in the Philippines).
I had to wipe the cache because my first build was x86
vkvg\build>cmake .. -DCMAKE_TOOLCHAIN_FILE=....\vcpkg\scripts\buildsystems\vcpkg.cmake -G "Visual Studio 15 2017 Win64"
You can mark this one closed.
Thanks!
from vkvg.
FREETYPE_LIBRARY must contain the full share library file path, not the directory (../../freetype.dll). The easyest way to get vkvg running on windows is to use vcpkg, double check that you're using the CMAKE_TOOLCHAIN_FILE pointing to %vcpkg_root%\scripts\buildsystems\vcpkg.cmake. Also on windows I've issue the 'vcpkg integrate install' command, I'm not sure it was necessary, but try it if you didn't build with it.
from vkvg.
I'm already using vcpkg, per the instructions.
I'm not very familiar with details of CMake on windows. Are FREETYPE_LIBRARY and CMAKE_TOOLCHAIN_FILE windows environment variables? Or are they defined somewhere in the make files?
I've set FREETYPE_LIBRARY = C:\Program Files (x86)\GnuWin32\lib
Which is the directory which contains all the libs and dlls
I've set the include path to the include directory as well.
But I've set them as environment variables.
Should this be done in a normal command shell or a developer shell?
If it's a developer shell, which version of Visual Studio?
People make lot of assumptions about each of our dev environments being the same. Getting these make and installs correct is really hard. It's often easier just to build fresh make files.
Also, I'm building x64 and the the freetype path implies it's intended for x86.
from vkvg.
FREETYPE_LIBRARY and CMAKE_TOOLCHAIN_FILE are cmake internal options that you may set on the command line with: cmake .. -DCMAKE_TOOLCHAIN_FILE=...
. You can also use cmake-gui command (cmake-gui ..).
FREETYPE_LIBRARY and FREETYPE_INCLUDE_DIRS should be automatically populated by cmake. The easyest way with cmake is the command line:
Note that the installed libraries path must be in your path to be found by cmake, here is a recap of the complete steps:
go to the root of your devel directory
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
bootstrap-vcpkg.bat
vcpkg install fontconfig freetype harfbuzz glfw3
vcpkg integrate install #not sure this is necessary
#add the installed shared libraries directory to your PATH environment variable
#something like 'vcpkg/installed/x64-windows/bin/'
cd .. #go up to your devel dir
git clone https://github.com/jpbruyere/vkvg.git --recursive
cd vkvg
mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=..\..\vcpkg\scripts\buildsystems\vcpkg.cmake
#now you must be able to to build the vcxproj in your build directory.
#if it complaints for missing shaders.h, recheck it from git, it's erased by the rebuildShaders target, but xxd executable is not found on windows, I have to debug that. (git checkout src/shaders.h)
I will try to complete the windows install tutorial with more detailed steps.
the visual studio command shell give you access to compilers with correct environment variables already set, maybe it's preferable.
Also don't forget to install the latest vulkan sdk from lunarg.
from vkvg.
Related Issues (20)
- gradient alpha channel ignored HOT 2
- Segfaults in surface test HOT 1
- Build deb for Debian / Ubuntu HOT 2
- Premult Alpha handling for image load/write
- Special objects with VKVG_STATUS_NO_MEMORY instead of NULL pointer.
- TimeLine semaphore HOT 2
- Issue with getting glyphs info HOT 26
- Implementing Unit Testing with Meson
- Tests crash and other related bugs and Validation errors: HOT 11
- Having trouble using vkh.h HOT 1
- M_PI undeclared HOT 2
- tests/bezier screen not clear on each frame HOT 3
- Cannot build tests on linux with static GLFW HOT 3
- Multi-window support? HOT 3
- crash when i use multithreaded to draw text HOT 5
- i want to remove the font lock HOT 1
- Vulkan validator prints error on fragment compilation (vkCreateShaderModule) HOT 8
- Failed to build on MSYS2 MINGW64 HOT 3
- logicOp not supported on MoltenVK / M2 Mini HOT 3
- vkvg api to query vulkan context creation requirements
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vkvg.