-
Notifications
You must be signed in to change notification settings - Fork 91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compile and Run Problems - OSX 10.10 #37
Comments
Hi s-fiebig! Thank you for the effort you gave to build medusa on OS X. Regarding the first issue: Please make sure all modules have the correct extension (should be .dylib on OS X), and they must be located in the current directory (i.e. "." is the default module directory). About the issue on qt, well I know OS X uses a specific graphic environment, where qt relies on X11. It's hard to tell for sure where the root cause comes from. But if you manage to find a workaround, I would gladly integrate it in the source code. Now regarding the dev branch, if you cloned recursively the repository, by typing mkdir build && cd build && cmake .. it should be able to compile medusa (but neither qMedusa nor emul_llvm will be built). Usually, it's easier to dedicate a specific folder to build source, so calling cmake from the root directory should be avoid. IIRC this behavior is enforced by OGDF which explicitly check for this case. Concerning python, I have the same issue on Windows, cmake selects the 32-bit version of python which leads to build error. Like you did, I have to specify python path manually too. Keep up the good work! :) |
On OS X, Qt uses Cocoa actually. Most likely the problem is that cmake isn't looking in |
Thanks for your answers! I greatly appreciate any help. Regarding my first issue:
Regarding the compilation of the dev version:
I don't know ap_int (arbitrary precision int?), so any hint is welcome how to replace this. |
Hi s-fiebig,
Please, could you confirm me that you see these following lines (or something similar) on the log widget when you open an executable:
You're right, ap_int stands for arbitrary-precision integer, this feature is provided by boost.multiprecision. |
I managed to compile the dev version of medusa and it works too :-).
Something like this works:
Nevertheless the compiler threw further errors. So thankfully I noticed that c++11 settings were missing ( I close this issue. Is there any interest to write the info from above and the c++11 setting into a wiki/paragraph of your readme.md? |
@wisk Are you interested that I write the infos about compiling on OSX 10.10 in a wiki page or in a paragraph for your readme? |
Hi s-fiebig, Sure! I'd gladly update the README.rst to add compile instruction for OSX. :)
|
It looks correct and works if changed a bit. The problem is that my CMAKE_CXX_COMPILER is |
That's interesting! |
Sorry for the delay, I found a way to enable C++11 without any check on the compiler name (CMAKE_CXX_STANDARD), but it requires cmake 3.1 (see 33594b7) |
I assume it's fixed now, feel free to re-open if not. Thanks. |
Compiling medusa on OSX 10.10 Yosemite took me a bit more of my time than expected. Now, I face two more problems:
In the following a description how I compiled medusa:
Compiling Dev version
First, compiling the dev branch didn't work at all.
Deleting the CMakeFiles Directory is meaningless, as it gets created again. Removing the causing part from CMakeLists
"# Check for polluted source tree.
if(EXISTS ${CMAKE_SOURCE_DIR}/CMakeCache.txt OR
...
"
leads to the next error. I didn't spend further time here. If somebody can help me out here, I will try out the dev version on OSX 10.10.
Compiling 4.3
Second, compiling the last pre-release version 4.3.
I used homebrew and clang (the default usr/bin/g++ is clang) with libc++ compiler flag. OGDF suggests using libstdc++ on OSX, but this means you need to get other libraries compiled with this setting as well. Missing to do so will lead to: "Undefined symbols for architecture x86_64" Linking to libraries with different runtimes would otherwise lead to crashes.
Homebrew
OGDF
Download the current OGDF version from http://www.ogdf.net/doku.php/tech:download and extract it.
Patch gtest because this is the only code part that isn't compatible with libc++: #20 or https://gist.github.com/pgriess/7046324
You just need to make sure that tr1/tuple is not used. For the current version 2015.5 of OGDF you can change gtest.h as follows:
In makeMakefile.conf add c++11 support
Now just:
Medusa
Download medusa 4.3 and compile it:
For "unknown" reasons cmake does not use the python libraries from homebrew. So with the current version of python and qt5 we get:
I'm open for any ideas.
The text was updated successfully, but these errors were encountered: