The project Generator, also known as PG, is a utility tool to facilitate the creation of new openFrameworks projects, in multiple platforms.
- the commandLine projectGenerator (pure openFrameworks)
- the projectGenerator GUI app (electron) distributed in releases
The content in this page is primarily target at developers willing to contribute to the code base. If you are working with openFrameworks and would like to use the Project Generator, check the instructions in Create in a new project.
You can download packaged macOS and Windows builds here ( note Linux needs to be built per platform ):
- https://github.com/openframeworks/projectGenerator/releases/download/nightly/projectGenerator-osx.zip
- https://github.com/openframeworks/projectGenerator/releases/download/nightly/projectGenerator-vs-gui.zip
- https://github.com/openframeworks/projectGenerator/releases/download/nightly/projectGenerator-vs.zip (commmandLine)
In the projectGenerator scripts folder run the scripts in order to setup environment and build
projectGenerator\scripts\vs\setup_environment.sh (first time)
projectGenerator\scripts\vs\build_cmdline.sh
- (build projectGenerator commandLine requires openFrameworks in directories above / or run from correct sub-module location)
projectGenerator\scripts\vs\build_frontend.sh
(Builds Electron App GUI Project Generator)
- requires commandLine.exe in folder.
- If cannot build commandLine.exe download from releases and run just this
projectGenerator\scripts\vs\build_dev_frontend.sh
- (Builds Electron App GUI Project Generator in DEBUG mode / Verbose and will autorun the test build)
projectGenerator\scripts\osx\setup_environment.sh (first time)
projectGenerator\scripts\vs\build_cmdline.sh
- (build projectGenerator commandLine requires openFrameworks in directories above / or run from correct sub-module location)
projectGenerator\scripts\vs\build_frontend.sh
(Builds Electron App GUI Project Generator)
- requires commandLine.exe in folder.
- If cannot build commandLine.exe download from releases and run just this
projectGenerator\scripts\linux\setup_environment.sh
(first time)
projectGenerator\scripts\linux\build_cmdline.sh
projectGenerator\scripts\linux\build_frontend.sh
The project generator is available in two flavors:
-
A command line utility tool. This option is the most versatile and provides all features. See more information here.
-
A user-interface, which works for the most typical scenarios. See more information in the front-end folder.
git clone [email protected]:openframeworks/openFrameworks.git --depth=1
cd openFrameworks
git submodule init
git submodule update
./scripts/osx/download_libs.sh
cd apps/projectGenerator/commandLine/
# for linux do:
make Release
cp bin/projectGenerator ../frontend/app/
# for windows do:
msbuild commandLine.vcxproj /p:configuration=release /p:platform=${{ matrix.platform }} /p:PlatformToolset=v143
cp commandLine.exe ../frontend/app/projectGenerator.exe
# for macos
xcodebuild -configuration Release -target commandLine CODE_SIGN_IDENTITY="" -project commandLine.xcodeproj
cp bin/projectGenerator ../frontend/app/
On macOS, if you get this error:
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
It's probably because your Command Line Tools were installed via Home Brew or some other mechanism. You need to re-select the whole Xcode install by executing:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
Note: see the more detailed guide include node install in the frontend ReadMe
cd ../frontend
npm install
npm update
# to run the app without packaging it
npm start
# to package the pg app as a standalone
npm run build:macos