- Install Qt 5.4 https://www.qt.io/download-open-source/
- Install libusb:
brew install --build-from-source libusb - Get qt in your path:
export PATH="${HOME}/Qt/5.4/clang_64/bin:${PATH}"
git clone --recursive https://github.com/analogdevicesinc/pixelpulse2- Modify
pixelpulse2.pro, movingPKGCONFIG += libudevtounix:!osx. mkdir pixelpulse2/build && cd pixelpulse2/buildqmake ..(this throws an error for me, but can proceed with other steps OK. See Gotchas, below)makemacdeployqt pixelpulse2.app -dmg -always-overwrite -verbose=2 -qmldir=../pixelpulse2/qml(assumes that Qt tools are in your path)
- Note that
-qmldirmust be manually specified. Without including the QML, the app will open but no window appears.
When the build directory is a subdirectory of the Pixelpulse2 source dir, qmake generates the following error, and the icon is not bundled properly:
WARNING: Could not resolve Info.plist: '../../Qt/5.4/clang_64/mkspecs/macx-clang/Info.plist.app'. Check if QMAKE_INFO_PLIST points to a valid file.
With the caveat that I know next to nothing about Qt's build process, discussions which reference this problem seem to imply that the build directory must be at the same level as the source, or qmake gets confused:
- http://stackoverflow.com/questions/20895398/cant-deploy-qt-5-2-quick-app-to-mac-osx
- http://permalink.gmane.org/gmane.comp.lib.qt.user/15220
- https://bugreports.qt.io/browse/QTBUG-21267
- https://bugreports.qt.io/browse/QTBUG-35431
I was able to move the build dir outside of the pixelpulse2 source directory, with a minor change to the pixelpulse.pro project file which makes the version sniffing more robust:
-DEFINES += GIT_VERSION='"\\\"$(shell git describe --always --tags --abbrev)\\\""'
+DEFINES += GIT_VERSION='"\\\"$(shell git -C $$PWD describe --always --tags --abbrev)\\\""'
I spent several hours using Pixelpulse (
0.8.0-bd1b982) built this way, and it seemed to be stable.( Love the product - as a beginner, it's a fantastic tool for exploration. Spent the evening exploring JFET source follower stability - learned so much because of the immediate feedback.)