Cannot Compile scip with IPOPT=true - scip

I have downloaded ipopt and compiled it(I dont have libipopt.a, but I have libipopt.so and libipopt.la). When I try to compile scip with IPOPT=true, I get the error message:
fatal error: IpoptConfig.h: No such file or directory
I have already added the soft links. I don't know if it has anything to do with me not having libipopt.a?

After doing make install in Ipopt, you should have a directory include in the Ipopt build directory (or in the "prefix"-directory if you used --prefix) which should contain a file coin/IpoptConfig.h. Please check.

I had a similar issue. For me the problem was that in an older version of SCIP ipopt should be linked at scip/lib and in the newer version it is scip/lib/static.

Related

Compiling project that depend on LLVM using CMake on Windows

I'm a *nix user, installing LLVM is easy for me, just download the precompiled file, set LLVM_DIR, and you're done. But I'm having a lot of problems with Windows ...
I downloaded LLVM-<version>-win64.exe from the GitHub release, but I can't find LLVMConfig.cmake file. Then I tried to compile LLVM from the source following this documentation.
When I started compiling my own project, I got this error:
'C:/<...>/Debug/libLLVMSupport.lib', needed by '<...>.exe', missing and no known rule to make it
I guess maybe I'm missing some compile options. but I can't find the documentation for LLVM_ENABLE_PROJECTS or BUILD_SHARED_LIBS, not even a list of component names.
I tried to add -DBUILD_SHARED_LIBS=ON but CMake told me BUILD_SHARED_LIBS option is not supported on Windows.

Cmake Openssl not found

Want to cross-compile a C application that uses Azure IoT SDK, which unfortunately requires Cmake. Cmake refuses to build my toolchain because it claims that it cannot find Openssl that I've compiled for my target architecture.
I've tried adding OPENSSL_ROOT_DIR to the folder it's in.
SET(OPENSSL_ROOT_DIR /path/to/openssl)
I continually get the error:
Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the
system variable OPENSSL_ROOT_DIR (missing: OPENSSL_LIBRARIES) (found
version "1.0.2g")
I also tried setting system variables to these folder as the error suggests, but it seemingly ignores them and prompts the same error. I've tried adding it to the same folder as my C compiler also to no avail.
I've run out of things to try and this point and I do not understand why it doesn't work. Any suggestions?
In Linux, I didn't have any problem setting OpenSSL.
In Windows, I solved as explained below.
Try removing CMakeCache.txt file and then do again. The cache Cmake is the main problem.
For instance, I did cmake . -DOPENSSL_ROOT_DIR=C:\openssl-1.0.2 -DOPENSSL_INCLUDE_DIR=C:\openssl-1.0.2\include -DOPENSSL_CRYPTO_LIBRARY=C:\openssl-1.0.2\crypto and everything got solved. The logic is same.
For MacOs I encounter the same error while installing ton'slite client (cmake ~/lite-client)
Solved as follows: I have open the "CMakeCache.txt" file in "liteclient-build" directory, find the line
OPENSSL_INCLUDE_DIR:PATH=OPENSSL_INCLUDE_DIR-NOTFOUND
and change it to with my openssl location
OPENSSL_INCLUDE_DIR:PATH=/usr/local/opt/openssl/include

CMake Error with Eigen 3.3.4

I am trying to compile dolfin on openSUSE Leap 42.3. I get an error with CMake when it tries to find Eigen3. I have Eigen3.3.4 installed on my machine and the error is
CMake Error at cmake/modules/FindEigen3.cmake:42 (file):
file failed to open for reading (No such file or directory):
/usr//usr/include/eigen3/Eigen/src/Core/util/Macros.h
I don't know why the extra /usr/ is popping up at the beginning. Can anyone help me? I can't find a solution online.
Okay, this was an...interesting, but perhaps silly error. Forgive me...I'm new to openSUSE. I originally installed eigen3 through YaST. This did not come with a CMakeList.txt file, so naturally I was confused by the answer in c++ - Unable to find Eigen3 with CMake. Moreover I was confused because Eigen is just header files, so naturally I assumed there would be nothing to make.
Long story short, there are MakeList's for Eigen. You just have to download the tarball from eigen.tuxfamily.org, then build them with cmake.
dolfin? I want to know are you in the CFD area.
I also have Eigen installed in my leap 42.3. But i installed it from the official website of Eigen. I think you may have a try and then specify the folder of the Eigne in Cmake-gui.
Good luck to you.

Unable to reference to uhd(USRP)

There is some linker issue while compiling a cpp program
I use g++ and ubuntu 12.04
Installed uhd from repo.
libuhd.so file is located in /usr/lib
Now my question is
1.For linking uhd I used -luhd,but that gives me an error
undefined reference to `uhd::set_thread_priority_safe(float, bool)'
Should I add library path of libuhd to LD_LIBRARY_PATH?
I did that by the command
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/libuhd.so
After this I tried compiling again but same error?
It would be great if you could help me
Thanks
Is uhd::set_thread_priority_safe the only UHD function you are calling in your entire program? It is strange that that is the only undefined reference you are seeing from your program. If it is the only function in there, then it simply isn't finding the library. If it isn't, it sounds like the UHD version you have is strange.
Have you tried doing a:
$ sudo ldconfig
...after adding the library path to /etc/ld.so.conf?
When you say you installed it from the repo, what repo are you referring to? What distro are you running?

can't compile wxwidgets through mingw, following install.txt that came with the zip file

I am trying to compile wxwidgets. I am compiling with mingw32 and am following the install.txt that came with the zip file, but when ever I compile it, it gives me these errors.
if not exist gcc_mswd mkdir gcc_mswd
process_begin: CreateProcess(NULL, -c "if not exist gcc_mswd mkdir gcc_mswd", ...) failed.
make (e=2): The system cannot find the file specified.
mingw32-make: [gcc_mswd] Error 2 (ignored)
if not exist ..\..\lib\gcc_lib mkdir ..\..\lib\gcc_lib
process_begin: CreateProcess(NULL, -c "if not exist ..\..\lib\gcc_lib mkdir ..\..\lib\gcc_lib", ...) failed.
make (e=2): The system cannot find the file specified.
mingw32-make: *** [..\..\lib\gcc_lib] Error 2
Any help is appreciated.
PS: I am using mingw32-make if that makes a difference.
According to the guide on the wxWiki it looks like the error is caused because you have MSYS in your PATH environment variable and that confuses everything. It suggests either compiling with MSYS or removing it from PATH and ensuring that your mingw installation path is in PATH.
what i also found was that other stuff in my PATH ended with /BIN. so mingw could not find it's components. what i did was removed everything else from my PATH ( and broke lots of stuff i will fix later - i have my PATH backed up :) ). solves that problem.
what you could also try is to place mingw path first in your PATH, so it doesn't look any further - i haven't tried it though.
Do you also have MSYS installed? If so, try the MSYS version of make; mingw32-make is known to be flawed in some respects. (This is just a suggestion; I don't know if it will actually solve this particular problem.)
I had mksnt (another *nix-like shell) on my PATH and observed the same trouble. Removed it from PATH and MinGW is building wxWidgets 2.8.12 now.
Thanks for the previous answers. I had the same problem that was caused by having Git-Bash in PATH variable: C:\Program Files (x86)\Git\bin;
After removing it from the PATH everything worked