CMake cannot find libcurl-config.cmake - c++

I'm trying to compile code with cmake. The code was imported from Windows onto a Raspberry Pi with Debian OS. The code works fine when compiling on Windows. Here is the error when I try to compile:
CMake Error at CMakeLists.txt:6 (FIND_PACKAGE):
By not providing "Findlibcurl.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "libcurl", but
CMake did not find one.
Could not find a package configuration file provided by "libcurl" with any
of the following names:
libcurlConfig.cmake
libcurl-config.cmake
Add the installation prefix of "libcurl" to CMAKE_PREFIX_PATH or set
"libcurl_DIR" to a directory containing one of the above files. If
"libcurl" provides a separate development package or SDK, be sure it has
been installed.
Here is a list of the installed packages regarding libcurl:
ii libcurl3:armhf 7.26.0-1+whe armhf easy-to-use client-side URL trans
ii libcurl3-gnutl 7.26.0-1+whe armhf easy-to-use client-side URL trans
ii libcurl4-opens 7.26.0-1+whe armhf development files and documentati
Could this mean the packages are installed incorrectly or I have the wrong one?

I did not touched arduino yet, but if you can access arduino's debian - try to do something like:
sudo apt-get install libcurl-dev --reinstall
and then:
make clean
make
P.S. You may have libcurl but CMake requires dev-information of it too.

Related

Cannot find Qt6 installation?

Trying to follow the install instructions from a GitHub page: https://github.com/TASEmulators/fceux
I went through with installing Qt6 and when I do the following this happens:
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr -DQT6=1 -DCMAKE_BUILD_TYPE=Debug ..
-- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19042.
-- GUI Frontend: Qt6
CMake Error at src/CMakeLists.txt:22 (find_package):
By not providing "FindQt6.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Qt6", but
CMake did not find one.
Could not find a package configuration file provided by "Qt6" with any of
the following names:
Qt6Config.cmake
qt6-config.cmake
Add the installation prefix of "Qt6" to CMAKE_PREFIX_PATH or set "Qt6_DIR"
to a directory containing one of the above files. If "Qt6" provides a
separate development package or SDK, be sure it has been installed.
-- Configuring incomplete, errors occurred!
As the error message says, you need up set the environment value Qt6_DIR to the location you installed qt6 to. This should be a part of the instructions in installing qt6.
You should link the instructions you used for installing qt6. They may contain instructions to set the environment variable QT_DIR instead of the Qt6_DIR which is required by what you're building. If this is the case just follow the instructions for setting QT_DIR to also set Qt6_DIR.

Adding binaries to other peoples conan recipes

I'm using given conan packages
gtest/1.8.0#bincrafters/stable
boost/1.66.0#conan/stable
log4cplus/2.0.2#bincrafters/stable`
and clang (version at least 6.0).
While first two packages has binaries for clang 6.0, log4cplus doesn't (last is clang 3.9). I don't like the idea that on each workstation I would need to build this package by hand.
How can I upload localy build binary with clang 6.0?
conan upload looks promising, however it suggest that it will be NEW package. Second question - wouldn't I interfere with package author in any way?
I do recommend open an issue for Bincrafters, requesting clang 3.9 support: https://github.com/bincrafters/community/issues/
Include a new package configuration is just one line in the Travis recipe.
How can I upload localy build binary with clang 6.0?
You could use JFrog Artifactory, there is a Community Edition with Conan support. Also, you could create a "mirror" for your packages locally with Artifactory, instead to download from Bintray:
https://docs.conan.io/en/latest/uploading_packages/artifactory_ce.html
However, Conan respects your remote list by it order, if your Conan client finds log4cplus first in Bincrafters' remote but the correct binary is only available in your local repository, Conan will ignore your local remote and will show a message error about missed binary package for log4cplus. Thus, in your case, you will need to copy ALL binaries to your local repository.
Regards!
You will find the conan packages installed on your Linux system at .conan/data/package_name/version/repo_name/tag. There will be a package folder inside it. If you want to manually add binaries to existing packages then you can add the binary in /bin folder in packages.
Or else you can look into the conan recipe in exports folder and look for the package, that from where it is getting its binaries from and add that binary in that path.

Cross-Compiling QT5 for windows on ubuntu host

I'm trying to compile this wallet on Ubuntu 14.04 machine. I already compiled it for Linux using the docs:
mkdir build && cd build && cmake .. && make
But, unfortunately, I don't have a windows machine to compile it.
I tried installing mingw32 and compile using those toolchains, and then by using this answer but it didn't work and thrown an error:
CMake Error at CMakeLists.txt:19 (find_package):
By not providing "FindQt5Gui.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Qt5Gui", but
CMake did not find one.
Could not find a package configuration file provided by "Qt5Gui" with any
of the following names:
Qt5GuiConfig.cmake
qt5gui-config.cmake
Add the installation prefix of "Qt5Gui" to CMAKE_PREFIX_PATH or set
"Qt5Gui_DIR" to a directory containing one of the above files. If "Qt5Gui"
provides a separate development package or SDK, be sure it has been
installed.
PS: I already installed QT5 using apt-get install qt5-default.

RedHawk building from source --- locate the code installing uhd3.5.3

I am trying to build from source for RedHawk installation and trying to replace uhd3.5.3 with a higher version of uhd for USRP_UHD module. I saw USRP_UHD source code, but found nowhere for uhd3.5.3 source code. I am guessing it might simply use "yum install ..." to download and install uhd host code and suporting libraries. Does anybody know where this code is located in redhawk_src_2.0 package? Or is there an efficient way in linux to search for this among all the files in redhawk_src_2.0 package?
Thanks in advance!
UHD is the USRP Harware driver softwware from Ettus Research. The UHD is distributed from:
http://files.ettus.com/binaries/uhd_stable/
Version 3.5.3 is here:
http://files.ettus.com/binaries/uhd_stable/uhd_003.005.003-release/
The current release is 3.9.2:
http://files.ettus.com/binaries/uhd_stable/uhd_003.009.002-release/
Hopefully this helps. I wasn't 100% sure what you are asking for.
First, clone the uhd library:
git clone git://github.com/EttusResearch/uhd.git
Then checkout the 3.9.2 tag:
git checkout release_003_009_002
Using the instructions from Ettus (http://files.ettus.com/manual/page_build_guide.html), install the dependencies listed under the Fedora section:
sudo yum -y install boost-devel libusb1-devel python-mako doxygen python-docutils cmake make gcc gcc-c++
Next, generate the Makefiles with CMake:
cd <uhd-repo-path>/host
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/uhd ../
I recommend using an alternate install prefix at first to preserve the 3.5.3 version, just in case, but if you don't want to, just run:
cmake ../
instead of the longer command with the -DCMAKE_INSTALL_PREFIX flag. (Note: I couldn't get cmake to find the installed boost version, so you may have to do some other research on that since it is probably a whole different stackoverflow post in and of itself)
Now build and install the uhd library:
make
make test
sudo make install
Now that the library is installed, you should edit the USRP_UHD/cpp/configure.ac so that the PKG_CONFIG_PATH points to your install prefix (either the one specified in the flag above, or if you did the default, just leave it, as it should already be pointing to /usr/local/lib/pkgconfig). Also in the configure.ac file, make sure to change the uhd version number to 3.9.2.
Now you should be able to rebuild the USRP_UHD Device:
./reconf && ./configure && make install
I don't guarantee that the Device will build against the new version of the uhd library, that will depend on what (if anything) has been deprecated an removed from the library between the supported version and the newest one.
Finally, if you get through all of those steps successfully and if you specified a non-standard install prefix, you will have to add this prefix to either the LD_LIBRARY_PATH or an /etc/ld.so.conf.d/ script in order for the Device to correctly execute.
Clarification - you can follow the Redhawk manual appendix B for building Redhawk from source AFTER installing UHD v3.9.3 from source as per pwolframs instructions. The UHD v3.5.3 is not packaged with the Redhawk source code, only the Redhawk RPM, disregard all those RPMs when building UHD and Redhawk from source.

CMake Cant Find Some Image Libs

Im Trying To Compile Blender 2.7
I was Trying to Generate The Visual Studio 12 ( 2013 ) Project Files
using CMake But The Problem is That I Get An Error
Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
Could NOT find PNG (missing: PNG_LIBRARY PNG_PNG_INCLUDE_DIR)
CMake Warning at CMakeLists.txt:1089 (message):
Using HARDCODED libpng locations
Could NOT find JPEG (missing: JPEG_LIBRARY JPEG_INCLUDE_DIR)
Found Freetype: C:/Users/Alfrek/Desktop/Blender 2.7/blender-2.71/../lib/win64_vc12/freetype/lib/freetype2ST.lib
Could NOT find OpenEXR (missing: _openexr_LIBRARIES OPENEXR_INCLUDE_DIR)
CMake Warning at CMakeLists.txt:1172 (message):
Using HARDCODED OpenEXR locations
Could NOT find TIFF (missing: TIFF_LIBRARY TIFF_INCLUDE_DIR)
CMake Warning at CMakeLists.txt:1191 (message):
Using HARDCODED libtiff locations
Could NOT find Boost
CMake Warning at CMakeLists.txt:1230 (message):
USING HARDCODED boost locations
Could NOT find OpenImageIO (missing: OPENIMAGEIO_LIBRARY OPENIMAGEIO_INCLUDE_DIR)
CMake Error at CMakeLists.txt:1928 (message):
Apple and Windows require pre-compiled libs at:
'C:/Users/Alfrek/Desktop/Blender 2.7/blender-2.71/../lib/win64_vc12'
I got No idea what am I suppose to do
I Have a Windows 7 64 Bit Computer
and Im Using Visual Studio Professional 2013
You downloaded the source files but forgot its dependencies. For each platform blender provides its dependencies in its SVN repo.
This is what you need to do:
Outside of the blender directory create the folder structure "lib/win64_vc12"
cd inside that directory, open your command prompt (assuming you have SVN installed) and type
svn checkout https://svn.blender.org/svnroot/bf-blender/trunk/lib/win64_vc12
bear in mind its a huge repo of about 6.5Gb.
When that is done run configure again in cmake and it should work.
It sounds like you are missing a step before trying to run make full...
You will need to run the install_deps.sh script or print the list of all main dependencies needed to build Blender (--show-deps option) and install them manually.
Please see the official blender wiki for updated development environment requirements --> https://wiki.blender.org/wiki/Building_Blender/Linux/Ubuntu
Automatic dependencies installation The preferred way to install dependencies under Linux is now to use the install_deps.sh script
featured with Blender sources. It currently supports Debian (and
derived), Fedora, Suse and Arch distributions. When using the
install_deps.sh script, you are only required to install the following
dependencies:
git, build-essential
Then, get the sources and run install_deps.sh
cd ~/blender-git
./blender/build_files/build_environment/install_deps.sh