Go to file
2018-10-11 15:13:53 +02:00
.gitignore Initial Commit 2018-06-30 23:37:25 +02:00
appveyor.yml adsf 2018-10-06 20:29:00 +02:00
CMakeLists.txt Add Thread-Safety-Support 2018-10-11 15:13:53 +02:00
example.cxx File renamed 2018-10-10 23:32:06 +02:00
example.i Add Example for C++-Class and Tests for empty-keyword 2018-10-10 23:31:38 +02:00
LICENSE Initial commit 2018-06-30 23:08:36 +02:00
README.md Update README 2018-10-06 21:08:51 +02:00
test_keywords.php Add Example for C++-Class and Tests for empty-keyword 2018-10-10 23:31:38 +02:00

SWIG CMake PHP Example for Windows

Example on how to build a SWIG/PHP Extension with CMake on Windows.

Couldn't find any working example even without CMake for Windows so i created this one ;) Hope it helps others.

You need Visual Studio installed. For current Version of PHP, you need current Version of VS2017 (Community Edition is okay) To build this Example, build PHP as descriped here: https://github.com/Microsoft/php-sdk-binary-tools

You need SWIG to make this work.

Current SWIG (3.0.12) has a Problem with building Extensions on Windows with Thread-Safe PHP.

So until SWIG 4.0.0 is released, you need to build SWIG, too.

I have a fork of swig in my github account which enables you to build it with cmake: https://github.com/AlexanderGabriel/swig

Build it and change the path SWIG_EXECUTABLE and SWIG_DIR to your environment.

You can stay inside PHP-SDK-Shell if you want or open a new x64/x86 Native Tools Command Prompt for VS 2017. Change directory back to where you checked out this and then execute the following commands.

mkdir build
cd build
cmake ..  -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -Wno-dev -DSWIG_EXECUTABLE=C:\dev\work\swig\swig.exe -DSWIG_DIR=C:\dev\work\swig
cmake --build .

Thats it. To see all commands, have a look into appveyor.yml