[cmake-developers] [CMake 0014380]: Eclipse Generator for 64-Bit Mac OS X
Mantis Bug Tracker
mantis at public.kitware.com
Wed Aug 28 16:25:06 EDT 2013
The following issue has been SUBMITTED.
======================================================================
http://public.kitware.com/Bug/view.php?id=14380
======================================================================
Reported By: David Marshall
Assigned To:
======================================================================
Project: CMake
Issue ID: 14380
Category: CMake
Reproducibility: always
Severity: minor
Priority: normal
Status: new
======================================================================
Date Submitted: 2013-08-28 13:25 PDT
Last Modified: 2013-08-28 13:25 PDT
======================================================================
Summary: Eclipse Generator for 64-Bit Mac OS X
Description:
Every time I regenerate my project file (i.e., a CMakeLists.txt file changed)
the binary parser gets set to Mach-O Parser and not the Mach-0 64 Parser. What
results is that eclipse won't run the code via the debugger, I get the error
"Launch failed: Binary not found". To fix it I need to go to the project
properties and change the parser back to the 64-bit parser.
I've tracked down the problem to cmExtraEclipseCDT4Generator.cxx line 724
(version from git). Here's the code:
else if (systemName == "Darwin")
{
fout << "<extension id=\"org.eclipse.cdt.core.MachO\""
" point=\"org.eclipse.cdt.core.BinaryParser\">\n"
"<attribute key=\"c++filt\" value=\"c++filt\"/>\n"
"</extension>\n"
;
}
This is for the old parser that apparently is going to be removed soon (see the
eclipse bug tracker discussion
https://bugs.eclipse.org/bugs/show_bug.cgi?id=270790). Since version 6.0.2 the
64-bit parser has been supported and is the preferred binary parser, I believe.
I don't know the best change to keep versions prior to 6.0.2 supported, but I
think that the following code will set the parser to the more recent one and
stop me from having to manually set the binary parser every time the eclipse
project gets rebuilt:
else if (systemName == "Darwin")
{
fout << "<extension id=\"org.eclipse.cdt.core.MachO64\""
" point=\"org.eclipse.cdt.core.BinaryParser\">\n"
"<attribute key=\"c++filt\" value=\"c++filt\"/>\n"
"</extension>\n"
;
}
Steps to Reproduce:
To reproduce:
* Create an Eclipse project in Debug using CMake on a 64-bit Mac OS X computer
* Build the debug version of project
* Attempt to debug executable
* Error will display
Manual fix:
* Go to project properties
* Select Binary Parser tab
* Pick Mach-O 64 parser
======================================================================
Issue History
Date Modified Username Field Change
======================================================================
2013-08-28 13:25 David Marshall New Issue
======================================================================
More information about the cmake-developers
mailing list