Skip to content

openframeworks/projectGenerator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

openFrameworks projectGenerator

build-linux build-vs build-macos

Project Generator

Builds the cmdline and GUI project generators for openFrameworks

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.


Download instructions

You can download packaged macOS and Windows builds here ( note Linux needs to be built per platform ):


Build instructions with Bash Scripts

In the projectGenerator scripts folder run the scripts in order to setup environment and build

Visual Studio 2022

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)

macOS / osx

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

Linux

projectGenerator\scripts\linux\setup_environment.sh (first time) projectGenerator\scripts\linux\build_cmdline.sh projectGenerator\scripts\linux\build_frontend.sh

Contributing

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.
    project generator front-end

LEGAGY BUILD INSTRUCTIONS ----- (more detail)


Clone OF ( skip if already cloned )

git clone git@github.com:openframeworks/openFrameworks.git --depth=1 

Init / update submodules

cd openFrameworks git submodule init git submodule update 

Install libs ( replace with platform )

./scripts/osx/download_libs.sh

Build the projectGenerator ( can also use project file )

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 

Build the frontend electron app

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 

About

repo for centralizing work on a tool to generate OF projects

Resources

Stars

Watchers

Forks

Packages

No packages published