Using CMake with Qt + brew OSX - macos

I am using a homebrew installed version of Qt(4.8.5) with CMake. The detection process in producing a strange QT_INCLUDE_DIR value of
/usr/local/Cellar/qt/4.8.5/include/usr/local/Cellar/qt/4.8.5/lib/QtCore.framework
This location does not exist and QT headers are not found by Xcode. Is this an issue with brew CMake recipes ? What would be a logical fix in the CMakeLists for the project.

Related

Qt Creator on MacOS: pkg-config dependencies can't be found

I already tried all the solutions here, but I continue to get the following error when I issue the command "Run qmake" on my project from Qt Creator on Qt 5.6.1:
Project ERROR: grpc++ development package not found
... Yet, on the console, qmake && make clean && make successfully builds the project with no errors.
which qmake returns /usr/local/bin/qmake and qmake --version returns
QMake version 3.0
Using Qt version 5.6.1 in /usr/local/Cellar/qt5/5.6.1-1/lib
Here is my environment:
macOS Sierra
Qt SDK 5.7 (to get the latest version of Qt Creator)
Homebrew installed Qt 5.6.1 (I need 5.6.x specifically for ABI compatibility)
Dependencies grpc++, libsndfile, protobuf all installed via Homebrew in /usr/local and the .pc files are in /usr/local/lib/pkgconfig
When I open up a new terminal and type pkg-config --cflags --libs grpc++, I get the correct result back with no error message.
I'm trying to build this software, of which I am the primary author/maintainer: https://github.com/allquixotic/kynnaugh-cc
See the .pro file for details of how I'm telling it to use pkg-config.
I've tried the launchd.conf hack from here (and rebooted the Mac after updating it).
I've tried the /etc/paths.d/local hack from the same question, to no avail.
My .pro file has QT_CONFIG -= no-pkg-config.
I tried setting the env var PKG_CONFIG_PATH=/usr/local/lib/pkgconfig explicitly in the "Manage Kits" GUI of Qt Creator for the Qt 5.6.1 toolchain that I'm using, but it didn't change the errant behaviour.
Are there any other ways I can attempt to diagnose the problem, or can you spot an error in my .pro file, or is there a better solution to this problem than what I've attempted thus far?
I'm asking this as a new question because the solutions in that other question don't work, so I may very well be having a completely different problem despite extremely similar symptoms.
Turns out the PATH variable in Qt Creator wasn't picking up /usr/local/bin. Adding it manually to the project config fixed my issue.

How to minimize install of Qt for using PyQt on MacOS?

I was trying to install PyQt on my MacOS. With SIP installed, an error occurred when python3 PyQt-gpl-5.4/configure.py inputted:
Error: Use the --qmake argument to explicitly specify a working Qt qmake.
It seems that Qt should be installed before PyQt. There're many optional components in the installation of Qt:
-Qt 5.4
--clang 64-bit
--source components
---Add-Ons
---Essentials
--.....
Which components should I choose for installing qmake??
qmake is the executable that is included with any version of the qt libraries; and there is a different version of qmake for each compiler the Qt Libraries are built with/against. On a mac, and for building projects that run on OSX, you will probably want clang x64. And you will find qmake under ~/Qt/5.x/clang_64/bin It will also install qt creator (I don't think you can uncheck it), but you don't need all the extras besides that.
Building with qmake often needs XCode installed and the Command Line Tools (CLT) to use its included compiler. With Python, you probably won't need the compiler, unless you need to build some of its libraries.
Hope that helps.

How can I prevent homebrew from upgrading VTK dependency for PCL?

I would like to install the pcl formula through homebrew, which is documented here:
http://www.pointclouds.org/documentation/tutorials/installing_homebrew.php
Unfortunately, homebrew decides it needs to upgrade my VTK installation to the latest release (6.0) even though I have a perfectly working version (5.10.1) installed already. I would like to compile against and link with this existing version. (The minimum VTK version for pcl is listed as 5.6.1, so everything should work fine. I actually manually build pcl and tried to link it against VTK 6.0, which doesn't even work, yet.)
Therefore, my question is, why does homebrew try to upgrade VTK (to an incompatible version) and how can I prevent it from doing this?
All I am calling is: brew install pcl, which triggers this:
==> Installing pcl dependency: vtk
==> Downloading http://www.vtk.org/files/release/6.0/vtk-6.0.0.tar.gz
Already downloaded: /Library/Caches/Homebrew/vtk-6.0.0.tar.gz
This eventually leads to an error, as vtk 6.0 does not compile under Mac OS X 10.9 through homebrew (https://github.com/Homebrew/homebrew-science/issues/401).
To be clear, even if VTK 6.0 would compile fine, I do not want to upgrade, so does anyone know how to prevent homebrew from upgrading a dependent formula?
You can trick Homebrew to think it has Vtk 6.0 installed. For that you have to run this command in a terminal
ln -s /usr/local/Cellar/vtk/5.10.1 /usr/local/Cellar/vtk/6.0.0
When the time comes for you to really want to update vtk, just eliminate that symlink with
rm /usr/local/Cellar/vtk/6.0.0
and let Homebrew do its job.
Homebrew actually has a formula for vtk5 separately now, so this should now be the correct way to install it (currently it's 5.10.1).
brew install vtk5 --with-qt
You also need eigen, flann, qhull and boost. Also useful, but optional is getting sphinx via pip install sphinx if you want docs. If you want to build simulations (see below option) then you need to get glew too (although it wouldn't find the header).
I can verify that this works on 10.8 and will check 10.9 tonight. I've had problems installing 1.7.1 from the archive, but cloning the github repository worked for me.
$ git clone https://github.com/PointCloudLibrary/pcl pcl-trunk
$ cd pcl_trunk
$ mkdir build; cd build
$ cmake .. -DBUILD_global_tests=ON -DBUILD_examples=ON -DBUILD_simulations=ON
$ ./configure; make; make install
Without VTK you can get to a few % before the PCL install fails. Installing VTK with X11 seems to be a recipe for a disaster here, I had to manually install libX11, libXt and others because VTK was trying to include the incorrect headers. The problems continued with OpenGL and I couldn't compile past around 42%. I reinstalled vtk5 without --with-x11 and it compiled fully.
There is a PCL formula for Homebrew knocking around, but it's rarely updated and I didn't have much luck editing it (not familiar enough with Brew's syntax). I tried to update it and submit a pull request, but when it came to testing the actual 'stable' build fails at the moment so there's no point.
EDIT: To be clear, installing the 1.7.1 tarball fails due to some problem with Eigen (around 12% in when compiling pcl_search).
Proposed pull request, it's a HEAD only fix at the moment.
https://github.com/ros/homebrew-hydro/pull/7
Just downgrade to previous version.
1) cd /usr/local/Library/Taps/homebrew-science/
2) brew versions vtk
3) git checkout 27a4327 vtk.rb
4) brew uninstall vtk && brew install vtk

How to install openCV library on Mac OS X 10.6.8

I am new to openCV. How do I install this library on Mac OS X 10.6.8 and how do I include it in Xcode?
Start with one thing at a time:
Install OpenCV
Setup an XCode project
The easiest way is to install OpenCV is via MacPorts.
Make sure you've installed XCode's Command Line Tools first!
sudo port install opencv
note that you can also use ports variants (to add extra features e.g. python and QT support)
sudo port install opencv +qt4 +python27
As of very recently there should also be OpenNI support in MacPorts.
The other option is to build from source using Terminal. You'd also need CMake on top of XCode Command Line Tools
Regarding using OpenCV in XCode, it's a matter of making a c++ project and setting up the header and library search paths for the projects. If you use Macports those would be /opt/local/include/ and /opt/local/lib

Installing openCV on Lion OS 10.7.4 Xcode 4.3.2

I'm trying to install openCV on university's iMac,
but the problem is our university's network is so strict.
and I couldn't install openCV using MacPorts.
I tried google to look for a way to install but it all failed
i guess because it is kind of old ways and because my network is so strict.
So if anybody knows a way that I can download a ready framework with how to use it inside
Xcode. or at least a framework with how to install it to work with Xcode.
or a way to download from the source and compile it then install it in Xcode
please.
Because I tried the cmake way and I still have no luck to get it work.
thanks in advance.
sources I used:
http://salemsayed.me/?p=240
http://opencv.willowgarage.com/wiki/InstallGuide
http://opencv.willowgarage.com/wiki/Mac_OS_X_OpenCV_Port
http://www.ient.rwth-aachen.de/cms/software/opencv/
I'm using Lion + Xcode 4.x branch, with OpenCV svn trunk. Everything works fine. You have to install cmake first, then get the code from the svn following the instructions at http://code.opencv.org . The compilation process worked fine for me for all the core modules + the Qt module + the GPU module + TBB acceleration.
The instructions are the same as the Linux platform.
After setting up cmake configuration in a terminal (using ccmake for a more interactive tool),
I set the architecture to x86_64 (on my MBP Core 2 Duo), the target directory to /usr/local/(the default), and I have Intel TBB installed in /usr/local/.
Cmake generates the makefiles for you, so you just have to type make -j2 to compile, then sudo make install. If you're working on a workstation, then you have more CPU power, and you can replace the value 2 by more, e.g. 8.

Resources