Warning cleanup of hash-iness

Well... it looks like Krzysztof found us a nice, tricky problem in regards to the whole hash_map/unordered_list mess. What he has been tripped up by is one of those ugly problems with no simple solutions.
First, we have legacy code that is using a gcc extension. Not so good. Next the replacement has problems on many systems. So we don't have a tidy solution.
General questions for any thing with warnings, etc.
* Are the warnings critical? That is, do they indicate some immediate risk/failure? If so, then we should address them sooner
* Do we need to be using it? That is, are there any alternatives to the code creating warnings? Things such as vector instead of list, map instead of hash_map, etc.
* Can we encapsulate it? That is, do we need to leave things in .h files that other things include, or can they be moved inside specific files?
* Is there a clean way to fix at least some of the warnings? For some, this may be as simple as using an explicit variable instead of a temporary. In this case there appears not to be
* Is it cross-platform? Remember, we need to keep Inkscape compatible with multiple platforms, including MS Windows, Linux, OS X, BSD, Solaris, etc.
I'll try to follow up on a few of these points.

On Jan 14, 2010, at 8:36 PM, Jon Cruz wrote:
- Can we encapsulate it? That is, do we need to leave things in .h files that other things include, or can they be moved inside specific files?
For an example I started seeing warnings from the soon-to-be-removed hash_map in control-point-selection.h
I did a quick grep, and found it referenced in several files under ui/tools/*, which is as expected, but also in widgets/toolbox.cpp, desktop.cpp and verbs.cpp. Those last two, and especially verbs.cpp seem to be not where one might expect the problem to show up.
Looking into this for an eye on removing spaghetti dependencies, I saw and commented out control-point-selection.h and multi-path-manipulator.h. Then... BOOM!!! verbs.cpp fails. Things first break with SP_VERB_EDIT_SELECT_ALL, right after the successful SP_VERB_EDIT_CLEAR_ALL.
So the problem is that more of the other actions use verbs.cpp to just dispatch to their functionality, while the newer selection ones are implementing the functionality directly in verbs.cpp. A bit of find/grep magic on the other functions shows that corresponding things are behind the facade of selection-chemistry.h/cpp
So in this case of moving things from verbs.cpp to selection-chemistry.cpp I don't think the warning count decreases However, the encapsulation is much better as the cohesion goes up while the coupling goes down. The function of verbs.cpp returns to that of just dispatching commands, while all the selection magic goes over into selection-chemistry.cpp.

2010/1/15 Jon Cruz <jon@...18...>:
- Do we need to be using it? That is, are there any alternatives to the code creating warnings?
Things such as vector instead of list, map instead of hash_map, etc.
Using a list will result in completely unacceptable performance. Most actions will be O(n^2) where n is the number of selected nodes, because most actions that work on selected nodes check whether each one is selected. Using a sorted set instead of a hash set / hash map is slightly better - O(n log n), but this structure is also inadequate. The correct alternative is fixing Apple's broken and outdated headers and using a hash set, then we get O(n) on average.
- Can we encapsulate it? That is, do we need to leave things in .h files that other things include, or can they be moved inside specific files?
The hash set is a member of ControlPointSelection, so it has to be in the header.
- Is it cross-platform? Remember, we need to keep Inkscape compatible with multiple platforms, including MS Windows, Linux, OS X, BSD, Solaris, etc.
The current workaround is as cross platform as GCC. The correct solution (tr1/unordered_map) is more cross platform, because it is not a GCC extension, but doesn't work with Apple's GCC 4.0.0. It works with non-Apple GCC 4.0.2 and later and was fixed over 4 years ago. See http://mohri-lt.cs.nyu.edu/twiki/bin/view/FST/CompilingOnMacOSX (thanks to ~suv for finding this).
Once ~suv confirms that using a non-broken version of the compiler works, I'll go back to the non-deprecated headers and add configure code that detects the broken unordered_set. Is this acceptable?
So in this case of moving things from verbs.cpp to selection-chemistry.cpp I don't think the warning count decreases However, the encapsulation is much better as the cohesion goes up while the coupling goes down. The function of verbs.cpp returns to that of just dispatching commands, while all the selection magic goes over into selection-chemistry.cpp.
The problem is not that verbs.cpp uses control-point-selection.h. The problem is that selection-chemistry.cpp is an old pile of magic stuff that should be put in better places, and that verbs.cpp is a God-file. Another offender in this category is widgets/toolbox.cpp.
Regards, Krzysztof

On Jan 15, 2010, at 3:06 AM, Krzysztof Kosiński wrote:
2010/1/15 Jon Cruz <jon@...18...>:
- Can we encapsulate it? That is, do we need to leave things in .h files that other things include, or can they be moved inside specific files?
The hash set is a member of ControlPointSelection, so it has to be in the header.
No, it doesn't.
That is a key point. At the moment there are several different approaches that *could* be used.
One common approach is to use a "pimpl". And there are others.
And keep in mind that one of the applications of STL is to be able to feed a specialized implementation of a given type to code that takes the more generic. Code that operates on a list will operate on any list, code that operates on a set will work with any set, etc. That aspect can be leveraged to encapsulate the concrete implementation used.
Once ~suv confirms that using a non-broken version of the compiler works, I'll go back to the non-deprecated headers and add configure code that detects the broken unordered_set. Is this acceptable?
It probably depends on API and behavior differences. We definitely would benefit from having such differences encapsulated and constrained to as few modules as possible.
So in this case of moving things from verbs.cpp to selection-chemistry.cpp I don't think the warning count decreases However, the encapsulation is much better as the cohesion goes up while the coupling goes down. The function of verbs.cpp returns to that of just dispatching commands, while all the selection magic goes over into selection-chemistry.cpp.
The problem is not that verbs.cpp uses control-point-selection.h. The problem is that selection-chemistry.cpp is an old pile of magic stuff that should be put in better places, and that verbs.cpp is a God-file. Another offender in this category is widgets/toolbox.cpp.
Yes... it was a problem to add control-point-selection.h there. Prior to this, even though you may not have liked the selection-chemistry.cpp file, it was a central place to go for the implementation of selection magic. That is, it had very strong cohesion in that regards. So verbs.cpp does dispatching, and selection-chemistry.cpp does selection manipulation. http://en.wikipedia.org/wiki/Cohesion_%28computer_science%29
Once viewed as just "a dispatcher", the intent of verbs.cpp is a bit more clear. It also can be playing the role of mediator.
http://en.wikipedia.org/wiki/Mediator_pattern
We also probably want to include the facade pattern to assist in modularity.

W dniu 15 stycznia 2010 17:41 użytkownik Jon Cruz <jon@...18...> napisał:
One common approach is to use a "pimpl". And there are others.
My experience with the clipboard suggests that pimpl is bad idea if the class has any private methods. Where do I put them - in the interface or in the pimpl? If I put them in the interface, they can't take the necessary parameters (for example iterators to the "hidden" sets). It leads to every class being split into one class that has pure virtual public methods and a second one that has the the implementation of public and private methods.
It probably depends on API and behavior differences. We definitely would benefit from having such differences encapsulated and constrained to as few modules as possible.
The only difference between __gnu_cxx::hash_set and tr1::unordered_set is that custom hash functions go into a different namespace.
Yes... it was a problem to add control-point-selection.h there. Prior to this, even though you may not have liked the selection-chemistry.cpp file, it was a central place to go for the implementation of selection magic. That is, it had very strong cohesion in that regards.
It's not very coherent, because "selection magic" is not a coherent category. Some of the functions do something to clones, some change z-order, some move the objects between different layers...
So verbs.cpp does dispatching, and selection-chemistry.cpp does selection manipulation.
During tools refactoring I will probably make it private and add some virtual methods to EventContext, so that the node tool won't have to be explicitly referenced in verbs.cpp. For now, adding an extra layer of redirection will only obfuscate things.
We need to see a bit of the actual numbers involved. Among other things, CPU look-ahead and caching can significantly affect performance... I've seen simple arrays and array walking outperform hash tables/maps contrary to Big-O predictions. (If interested, I think MSDN has a decent article on this).
No, it's the other way around. I do not need to empirically justify the use of a hash set, because among the available structures it has the best theoretical performance. You need to demonstrate that other, theoretically slower structures are faster in this specific use case. In ControlPointSelection, the most common operation is checking whether a query point is in the set of selected points. This use pattern suggests a hash set. Other data structures might lead to better performance in some cases, but in absence of concrete data suggesting this, the "natural" data structure should be used.
In other words, if I want to travel as fast as possible from one city to another, an airplane is the best "default" choice. Using a bus will almost always take much longer, unless I know that the two cities are close enough to each other that boarding an airplane will take longer than the bus trip.
Anticipating your reply: ideally we should benchmark everything, but it's not realistic and not very productive.
Regards, Krzysztof

On Jan 15, 2010, at 9:51 AM, Krzysztof Kosiński wrote:
During tools refactoring I will probably make it private and add some virtual methods to EventContext, so that the node tool won't have to be explicitly referenced in verbs.cpp. For now, adding an extra layer of redirection will only obfuscate things.
The other points are good to keep in mind for long term refactoring, like you mention.
However... that verbs.cpp is a mediator and doesn't implement things itself is not really obfuscating things.
You *REALLY* need to start hanging out in the chat room now and then so that you can get a feel for such things. You've got a lot of the rest down, but a little growth in the higher-architecture area is always a good thing.

On Jan 15, 2010, at 3:06 AM, Krzysztof Kosiński wrote:
Using a list will result in completely unacceptable performance. Most actions will be O(n^2) where n is the number of selected nodes, because most actions that work on selected nodes check whether each one is selected. Using a sorted set instead of a hash set / hash map is slightly better - O(n log n), but this structure is also inadequate. The correct alternative is fixing Apple's broken and outdated headers and using a hash set, then we get O(n) on average.
BTW, I did expect the type of list to be a factor here... but you did not cite the important information.
Logically in an abstract world, what statements you've made here are perhaps sufficient. Unfortunately such abstractions can lead to spherical cows
http://en.wikipedia.org/wiki/Spherical_cow
We need to see a bit of the actual numbers involved. Among other things, CPU look-ahead and caching can significantly affect performance... I've seen simple arrays and array walking outperform hash tables/maps contrary to Big-O predictions. (If interested, I think MSDN has a decent article on this).
So the statement "will result" is really more of "may result, in the abstract". The number of items that we might encounter in use probably is a large factor. So we really need to see some rough numbers for min, max and median counts, along with a bit of performance smoke-testing comparing hash-set to some others. Of course, this needs to be in the context of the whole program compiled with the final optimization levels used for release (I generally have my debug builds set to compile with no optimizations, so as to allow for debugging)
You also only seemed to compare one set implementation to another... but there are other data structures that might be employed. So at the abstract level the information there is missing. Now, we do know that the one hashing algorithm used is merely the pointer cast to an int, so we might have a clue as to the shape of the data and the performance of the hashing itself. However, the size of sets involved and the types of operations performed need to be listed too are factors.
(Again, I'm *guessing* that hashed set will help Inkscape's performance. However, without any details we are just guessing... and that is not software engineering)

Fri, 15 Jan 2010 08:55:39 -0800 Jon Cruz <jon@...18...> kirjoitti:
We need to see a bit of the actual numbers involved. Among other things, CPU look-ahead and caching can significantly affect performance... I've seen simple arrays and array walking outperform hash tables/maps contrary to Big-O predictions. (If interested, I think MSDN has a decent article on this).
Sorry to be pedantic here, but there's a misunderstanding of Big-O notation here I'd like to correct.
For example, for some certain amount of stored values, array walk can outperform hash map when searching for a key. However, this is _not_ contrary to Big-O predictions! The fact that linear search of an array is O(n) and searching hash map for a key is O(1) tells that hash map will be faster for any _large enough_ amount of stored values. Also, for small amounts of values the time taken will usually be small either way, so the difference is likely to be irrelevant.

On Jan 18, 2010, at 11:17 PM, Niko Kiirala wrote:
For example, for some certain amount of stored values, array walk can outperform hash map when searching for a key. However, this is _not_ contrary to Big-O predictions! The fact that linear search of an array is O(n) and searching hash map for a key is O(1) tells that hash map will be faster for any _large enough_ amount of stored values. Also, for small amounts of values the time taken will usually be small either way, so the difference is likely to be irrelevant.
Well... I was actually talking about something slightly different.
That being how modern CPU's and their complex behavior can take what seems like a straightforward application of abstract analysis and turn it into something completely different. So a naive application of computer science can be broken by actually application of computer engineering.
Of course, if one does a breakdown of the complexities of cache behavior and such (treating the internals of the CPU as just more software, etc), I would expect things would be seen to match the science predictions.
To clarify things, we can consider that in this case "Big-O predictions" to refer to "Programmers trying to predict performance of actual code based on a simplistic model of their algorithms, while forgetting to factor in items such as the fact that CPU's are themselves running their own software also, etc." (and not really "a fatal flaw in computer science principals")

On 15/1/10 12:06, Krzysztof Kosiński wrote:
2010/1/15 Jon Cruz <jon@...18...>:
- Is it cross-platform? Remember, we need to keep Inkscape
compatible with multiple platforms, including MS Windows, Linux, OS X, BSD, Solaris, etc.
The current workaround is as cross platform as GCC. The correct solution (tr1/unordered_map) is more cross platform, because it is not a GCC extension, but doesn't work with Apple's GCC 4.0.0. It works with non-Apple GCC 4.0.2 and later and was fixed over 4 years ago. See http://mohri-lt.cs.nyu.edu/twiki/bin/view/FST/CompilingOnMacOSX (thanks to ~suv for finding this).
Once ~suv confirms that using a non-broken version of the compiler works, I'll go back to the non-deprecated headers and add configure code that detects the broken unordered_set. Is this acceptable?
Reporting back about what I tried today:
1) from the release notes of gcc 4.0:
Runtime Library (libstdc++)
A large subset of the features in Technical Report 1 (TR1 for short) is *experimentally* delivered (i.e., no guarantees about the implementation are provided. In particular it is not promised that the library will remain link-compatible when code using TR1 is used):
* General utilities such as reference_wrapper and shared_ptr. * Function objects, i.e., result_of, mem_fn, bind, function. * Support for metaprogramming. * New containers such as tuple, array, unordered_set, unordered_map, unordered_multiset, unordered_multimap.
http://gcc.gnu.org/gcc-4.0/changes.html
2) libstdc++ on OS X 10.5.8 Leopard
Apple only installed libstdc++-v3 from gcc-4.0, but not the one from gcc 4.2 as well. I don't know the reason - it might be because gcc 4.0 is the official complier installed and used by current Xcode versions on OS X 10.5.
References: i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5493) http://www.opensource.apple.com/source/gcc/gcc-5493/ChangeLog.apple http://www.opensource.apple.com/source/gcc/gcc-5493/libstdc++-v3/ChangeLog
i686-apple-darwin9-g++-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5577) http://www.opensource.apple.com/source/gcc_42/gcc_42-5577/ChangeLog.apple NOTE: does not include libstdc++-v3: http://www.opensource.apple.com/source/gcc_42/gcc_42-5577/REMOVED
3) revision log for gcc-4_0-branch - libstdc++ - hashtable
http://gcc.gnu.org/viewcvs/branches/gcc-4_0-branch/ http://gcc.gnu.org/viewcvs/branches/gcc-4_0-branch/libstdc%2B%2B-v3/include/tr1/hashtable?view=log
I decided to used the 'hashtable' file from gcc 4.0.4 after comparing the error messages I had (from compiling Inkscape and the test sources for unsorted lists) with previously mentioned websites and related bug reports for gcc. The version from gcc 4.0.4 fixes these four bugs:
GCC Bugzilla Bug 23053 Const-correctness issue in TR1 hashtable http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23053
GCC Bugzilla Bug 23465 Assignment fails on TR1 unordered containers http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23465
GCC Bugzilla Bug 24054 std::tr1::unordered_map's erase does not seem to return a value http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24054
GCC Bugzilla Bug 24064 tr1::unordered_map seems to seg-fault when caching hash values http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24064
4) patching the system gcc/libstdc++-v3 TR1 header file 'hashtable'
I renamed the installed version and copied the one from the gcc 4.0.4 tarball into '/usr/include/c++/4.0.0/tr1/'
5) building Inkscape r8979
to rebuild Inkscape I did: 1) bzr revert -r 8979 2) re-apply local patches 3) touch configure.ac (to re-run configure) 4) make
The build went through without fatal errors, see attached build log file.
An alternative to patching the installed gcc-4.0 version could be to install a recent gcc version through MacPorts (gcc 4.3 or gcc 4.4 I guess), but I haven't tried that yet (still intimidates me somewhat ;)
Please tell me if you need any additional information. I'll update to the current version again later tonight, hoping the changed header files won't have any undesirable side effects.
hth, ~suv
LeWitt:hashtable suv$ ll gcc-4.0.4/libstdc++-v3/include/tr1/hashtable -rw-r--r--@ 1 suv staff 50798 Oct 4 2005 gcc-4.0.4/libstdc++-v3/include/tr1/hashtable LeWitt:hashtable suv$ ll hashtable-gcc-4_0-branch-r104939 -rw-r--r--@ 1 suv staff 50798 Jan 15 20:34 hashtable-gcc-4_0-branch-r104939 LeWitt:hashtable suv$ diff gcc-4.0.4/libstdc++-v3/include/tr1/hashtable hashtable-gcc-4_0-branch-r104939 LeWitt:hashtable suv$
Last login: Fri Jan 15 20:29:36 on ttys003 FYI: ~/.bashrc sourced. LeWitt:~ suv$ su test Password: bash-3.2$ cd /Volumes/blue/src/Inkscape/dev/mail-list/hashtable/ bash-3.2$ ls -l total 576 -rw-r--r--@ 1 suv staff 286 15 Jan 15:15 CompilingOnMacOSX < FST < TWiki.webloc -rw-r--r--@ 1 suv staff 321 15 Jan 15:15 [gcc] Log of :branches:gcc-4_0-branch:libstdc++-v3:include:tr1:hashtable.webloc -rw-r--r-- 1 suv staff 50163 15 Jan 16:06 hashtable-Apple-gcc-4_0 -rw-r--r-- 1 suv staff 50206 15 Jan 07:59 hashtable-OpenFst.txt -rw-r--r--@ 1 suv staff 50798 15 Jan 15:14 hashtable-gcc-4_0-branch-r104939.txt -rw-r--r--@ 1 suv staff 50163 15 Jan 19:48 hashtable-gcc-4_0-branch-r95538.txt -rw-r--r--@ 1 suv staff 42668 15 Jan 15:17 hashtable-gcc-4_2-branch-r119610.txt -rw-r--r--@ 1 suv staff 3786 15 Jan 16:33 notes-apple-darwin-gcc-4.0.txt -rw-r--r--@ 1 suv staff 458 15 Jan 16:57 notes-apple-darwin-gcc-changelogs.txt -rw-r--r--@ 1 suv staff 8614 15 Jan 15:22 testcase-failure.txt bash-3.2$ diff -u hashtable-Apple-gcc-4_0 hashtable-gcc-4_0-branch-r95538.txt bash-3.2$ ls -al /usr/include/c++/4.0.0/tr1/ total 584 drwxr-xr-x 21 root wheel 714 24 Okt 01:07 . drwxr-xr-x 67 root wheel 2278 24 Okt 01:07 .. -rw-r--r-- 1 root wheel 5812 27 Jun 2008 array -rw-r--r-- 1 root wheel 2826 27 Jun 2008 bind_iterate.h -rw-r--r-- 1 root wheel 8271 27 Jun 2008 bind_repeat.h -rw-r--r-- 1 root wheel 23744 27 Jun 2008 boost_shared_ptr.h -rw-r--r-- 1 root wheel 33559 27 Jun 2008 functional -rw-r--r-- 1 root wheel 28073 27 Jun 2008 functional_iterate.h -rw-r--r-- 1 root wheel 50163 27 Jun 2008 hashtable -rw-r--r-- 1 root wheel 2021 27 Jun 2008 memory -rw-r--r-- 1 root wheel 2249 27 Jun 2008 mu_iterate.h -rw-r--r-- 1 root wheel 1988 27 Jun 2008 ref_fwd.h -rw-r--r-- 1 root wheel 1890 27 Jun 2008 ref_wrap_iterate.h -rw-r--r-- 1 root wheel 41617 27 Jun 2008 repeat.h -rw-r--r-- 1 root wheel 11222 27 Jun 2008 tuple -rw-r--r-- 1 root wheel 4596 27 Jun 2008 tuple_iterate.h -rw-r--r-- 1 root wheel 20345 27 Jun 2008 type_traits -rw-r--r-- 1 root wheel 5301 27 Jun 2008 type_traits_fwd.h -rw-r--r-- 1 root wheel 5820 27 Jun 2008 unordered_map -rw-r--r-- 1 root wheel 5463 27 Jun 2008 unordered_set -rw-r--r-- 1 root wheel 3213 27 Jun 2008 utility bash-3.2$ sudo mv /usr/include/c++/4.0.0/tr1/hashtable /usr/include/c++/4.0.0/tr1/hashtable-orig Password: bash-3.2$ sudo cp /Volumes/blue/src/Inkscape/dev/mail-list/hashtable/gcc-4.0.4/libstdc++-v3/include/tr1/hashtable /usr/include/c++/4.0.0/tr1 bash-3.2$ ls -al /usr/include/c++/4.0.0/tr1/total 688 drwxr-xr-x 22 root wheel 748 15 Jan 21:23 . drwxr-xr-x 67 root wheel 2278 24 Okt 01:07 .. -rw-r--r-- 1 root wheel 5812 27 Jun 2008 array -rw-r--r-- 1 root wheel 2826 27 Jun 2008 bind_iterate.h -rw-r--r-- 1 root wheel 8271 27 Jun 2008 bind_repeat.h -rw-r--r-- 1 root wheel 23744 27 Jun 2008 boost_shared_ptr.h -rw-r--r-- 1 root wheel 33559 27 Jun 2008 functional -rw-r--r-- 1 root wheel 28073 27 Jun 2008 functional_iterate.h -rw-r--r--@ 1 root wheel 50798 15 Jan 21:23 hashtable -rw-r--r-- 1 root wheel 50163 27 Jun 2008 hashtable-orig -rw-r--r-- 1 root wheel 2021 27 Jun 2008 memory -rw-r--r-- 1 root wheel 2249 27 Jun 2008 mu_iterate.h -rw-r--r-- 1 root wheel 1988 27 Jun 2008 ref_fwd.h -rw-r--r-- 1 root wheel 1890 27 Jun 2008 ref_wrap_iterate.h -rw-r--r-- 1 root wheel 41617 27 Jun 2008 repeat.h -rw-r--r-- 1 root wheel 11222 27 Jun 2008 tuple -rw-r--r-- 1 root wheel 4596 27 Jun 2008 tuple_iterate.h -rw-r--r-- 1 root wheel 20345 27 Jun 2008 type_traits -rw-r--r-- 1 root wheel 5301 27 Jun 2008 type_traits_fwd.h -rw-r--r-- 1 root wheel 5820 27 Jun 2008 unordered_map -rw-r--r-- 1 root wheel 5463 27 Jun 2008 unordered_set -rw-r--r-- 1 root wheel 3213 27 Jun 2008 utility bash-3.2$
Last login: Fri Jan 15 20:29:43 on ttys003 FYI: ~/.bashrc sourced. export LANG="en_US.UTF-8" LeWitt:~ suv$ export LANG="en_US.UTF-8" LeWitt:~ suv$ cdblue LeWitt:blue suv$ cd work/test/lists/ LeWitt:lists suv$ ll total 80 -rw-r--r--@ 1 suv staff 547 Jan 14 19:57 bit-sets.cpp -rw-r--r--@ 1 suv staff 3857 Jan 14 22:03 compiler-paths.txt -rw-r--r--@ 1 suv staff 808 Jan 14 19:56 hash-tables.cpp -rwxr-xr-x 1 suv staff 21516 Jan 14 20:50 sorted-lists* -rw-r--r--@ 1 suv staff 543 Jan 14 19:57 sorted-lists.cpp LeWitt:lists suv$ make -n hash-tables g++ hash-tables.cpp -o hash-tables LeWitt:lists suv$ make hash-tables g++ hash-tables.cpp -o hash-tables LeWitt:lists suv$ make bit-sets g++ bit-sets.cpp -o bit-sets bit-sets.cpp: In function ���int main()���: bit-sets.cpp:32: error: no match for ���operator&��� in ���S & T. std::bitset<_Nb>::operator== [with long unsigned int _Nb = 6ul](((const std::bitset<6ul>&)((const std::bitset<6ul>*)(& T))))��� /usr/include/c++/4.0.0/bits/ios_base.h:157: note: candidates are: std::_Ios_Iostate std::operator&(std::_Ios_Iostate, std::_Ios_Iostate) /usr/include/c++/4.0.0/bits/ios_base.h:119: note: std::_Ios_Openmode std::operator&(std::_Ios_Openmode, std::_Ios_Openmode) /usr/include/c++/4.0.0/bits/ios_base.h:79: note: std::_Ios_Fmtflags std::operator&(std::_Ios_Fmtflags, std::_Ios_Fmtflags) make: *** [bit-sets] Error 1 LeWitt:lists suv$ rm sorted-lists LeWitt:lists suv$ make sorted-lists g++ sorted-lists.cpp -o sorted-lists LeWitt:lists suv$ ll total 152 -rw-r--r--@ 1 suv staff 547 Jan 14 19:57 bit-sets.cpp -rw-r--r--@ 1 suv staff 3857 Jan 14 22:03 compiler-paths.txt -rwxr-xr-x 1 suv staff 35320 Jan 15 21:24 hash-tables* -rw-r--r--@ 1 suv staff 808 Jan 14 19:56 hash-tables.cpp -rwxr-xr-x 1 suv staff 21368 Jan 15 21:24 sorted-lists* -rw-r--r--@ 1 suv staff 543 Jan 14 19:57 sorted-lists.cpp LeWitt:lists suv$
LeWitt:inkscape-bzr suv$ bzr status Format <RepositoryFormatKnit4> for file:///Volumes/blue/src/Inkscape/src/inkscape-bzr/.bzr/ is deprecated - please use 'bzr upgrade' to get better performance modified: autogen.sh packaging/macosx/osx-build.sh src/live_effects/effect.cpp src/ui/dialog/align-and-distribute.cpp src/ui/dialog/align-and-distribute.h src/ui/icon-names.h unknown: Build/ autogen.sh.orig packaging/macosx/osx-build.sh.orig packaging/macosx/ScriptExec/build/ src/inkscape-8844 src/inkscape-8853 src/inkscape-8865 src/inkscape-8868 src/inkscape-8869 src/inkscape-8874 src/inkscape-8875 src/inkscape-8876 src/inkscape-8878 src/inkscape-8882 src/inkscape-8888 src/inkscape-8894 src/inkscape-8898 src/inkscape-8905 src/inkscape-8910 src/inkscape-8911 src/inkscape-8918 src/inkscape-8924-p1 src/inkscape-8928-p1 src/inkscape-8930-p2 src/inkscape-8938-p2 src/inkscape-8941-p2 src/inkscape-8950-p2 src/inkscape-8950-p3 src/inkscape-8954-p2 src/inkscape-8954-p3 src/inkscape-8958-p2 src/inkscape-8961-p2 src/inkscape-8962-p2 src/inkscape-8962-p2-snap-typo src/inkscape-8964-p2 src/inkscape-8967-p2 src/inkscape-8968-p2 src/inkscape-8971 src/inkscape-8972 src/inkscape-8975 src/inkscape-8980 src/inkscape-x8860 src/inkscape-x8863-p1 src/live_effects/effect.cpp.orig src/ui/dialog/align-and-distribute.cpp.orig LeWitt:inkscape-bzr suv$ mv src/inkscape src/inkscape-8982-p2 LeWitt:inkscape-bzr suv$ bzr revno Format <RepositoryFormatKnit4> for file:///Volumes/blue/src/Inkscape/src/inkscape-bzr/.bzr/ is deprecated - please use 'bzr upgrade' to get better performance 8982 LeWitt:inkscape-bzr suv$ bzr revert -r 8979 Format <RepositoryFormatKnit4> for file:///Volumes/blue/src/Inkscape/src/inkscape-bzr/.bzr/ is deprecated - please use 'bzr upgrade' to get better performance M autogen.sh M packaging/macosx/osx-build.sh M src/libnrtype/FontFactory.cpp M src/libnrtype/FontInstance.cpp M src/live_effects/effect.cpp M src/live_effects/parameter/path.cpp M src/object-snapper.cpp M src/preferences-skeleton.h M src/selection-chemistry.cpp M src/shape-editor.cpp M src/spray-context.cpp M src/text-context.cpp M src/ui/dialog/align-and-distribute.cpp M src/ui/dialog/align-and-distribute.h M src/ui/icon-names.h M src/ui/tool/control-point-selection.cpp M src/ui/tool/control-point-selection.h M src/ui/tool/control-point.cpp M src/ui/tool/control-point.h M src/ui/tool/curve-drag-point.cpp M src/ui/tool/multi-path-manipulator.cpp M src/ui/tool/node-tool.cpp M src/ui/tool/node.cpp M src/ui/tool/path-manipulator.cpp M src/ui/tool/transform-handle-set.cpp M src/util/hash.h M src/widgets/toolbox.cpp LeWitt:inkscape-bzr suv$ patch -p 0 < ../bazaar/patches/current/patch-autogen.sh.diff patching file autogen.sh LeWitt:inkscape-bzr suv$ patch -p 0 < ../bazaar/patches/current/osx-build-mp.diff patching file packaging/macosx/osx-build.sh LeWitt:inkscape-bzr suv$ patch -p 0 < ../bazaar/patches/current/enable-experimental-lpe.diff patching file src/live_effects/effect.cpp LeWitt:inkscape-bzr suv$ patch -p 0 --dry-run < ../bazaar/patches/current/171944-exchange-positions-3.diff patching file share/icons/icons.svg Reversed (or previously applied) patch detected! Assume -R? [n] n Apply anyway? [n] y Hunk #1 FAILED at 18. Hunk #2 FAILED at 3846. Hunk #3 FAILED at 5035. Hunk #4 FAILED at 5065. Hunk #5 FAILED at 5074. Hunk #6 FAILED at 5083. Hunk #7 FAILED at 5092. Hunk #8 FAILED at 5159. Hunk #9 succeeded at 20211 with fuzz 2 (offset -309 lines). 8 out of 9 hunks FAILED -- saving rejects to file share/icons/icons.svg.rej patching file src/ui/dialog/align-and-distribute.cpp Hunk #1 succeeded at 518 (offset 1 line). Hunk #2 succeeded at 542 (offset 1 line). Hunk #3 succeeded at 633 (offset 1 line). Hunk #4 succeeded at 664 (offset 1 line). Hunk #5 succeeded at 875 (offset 6 lines). Hunk #6 succeeded at 965 (offset 6 lines). Hunk #7 succeeded at 1030 (offset 6 lines). Hunk #8 succeeded at 1041 (offset 6 lines). Hunk #9 succeeded at 1097 (offset 6 lines). Hunk #10 succeeded at 1150 (offset 6 lines). patching file src/ui/dialog/align-and-distribute.h patching file src/ui/icon-names.h LeWitt:inkscape-bzr suv$ bzr revert -r 8979 share/icons/icons.svg Format <RepositoryFormatKnit4> for file:///Volumes/blue/src/Inkscape/src/inkscape-bzr/.bzr/ is deprecated - please use 'bzr upgrade' to get better performance LeWitt:inkscape-bzr suv$
LeWitt:inkscape-bzr suv$ touch configure.ac LeWitt:inkscape-bzr suv$ make CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Volumes/blue/src/Inkscape/src/inkscape-bzr/missing --run aclocal-1.11 cd . && /bin/sh /Volumes/blue/src/Inkscape/src/inkscape-bzr/missing --run automake-1.11 --foreign CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Volumes/blue/src/Inkscape/src/inkscape-bzr/missing --run autoconf /bin/sh ./config.status --recheck running CONFIG_SHELL=/bin/sh /bin/sh ./configure --enable-osxapp --prefix=/Volumes/blue/src/Inkscape/src/inkscape-bzr/packaging/macosx/../../Build/ CXX=ccache g++ CXXFLAGS=-O3 -Wall LDFLAGS=-L/Volumes/blue/mp/lib CPPFLAGS=-I/Volumes/blue/mp/include CC=ccache gcc CFLAGS=-O3 -Wall --no-create --no-recursion checking build system type... i386-apple-darwin9.8.0 checking host system type... i386-apple-darwin9.8.0 checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... ./install-sh -c -d checking for gawk... gawk checking whether make sets $(MAKE)... yes checking how to create a pax tar archive... gnutar checking for style of include used by make... GNU checking for C++ compiler default output file name... a.out checking whether the C++ compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether ccache g++ accepts -g... yes checking dependency style of ccache g++... gcc3 checking for library containing strerror... none required checking whether we are using the GNU C++ compiler... (cached) yes checking whether ccache g++ accepts -g... (cached) yes checking dependency style of ccache g++... (cached) gcc3 checking for gcc... ccache gcc checking whether we are using the GNU C compiler... yes checking whether ccache gcc accepts -g... yes checking for ccache gcc option to accept ISO C89... none needed checking dependency style of ccache gcc... gcc3 checking dependency style of ccache gcc... gcc3 checking for ranlib... ranlib checking whether NLS is requested... yes checking for intltool >= 0.22... 0.40.6 found checking for intltool-update... /Volumes/blue/mp/bin/intltool-update checking for intltool-merge... /Volumes/blue/mp/bin/intltool-merge checking for intltool-extract... /Volumes/blue/mp/bin/intltool-extract checking for xgettext... /Volumes/blue/mp/bin/xgettext checking for msgmerge... /Volumes/blue/mp/bin/msgmerge checking for msgfmt... /Volumes/blue/mp/bin/msgfmt checking for gmsgfmt... /Volumes/blue/mp/bin/msgfmt checking for perl... /Volumes/blue/mp/bin/perl checking for perl >= 5.8.1... 5.8.9 checking for XML::Parser... ok checking how to run the C++ preprocessor... ccache g++ -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for BZR snapshot build... yes checking for gcc... (cached) ccache gcc checking whether we are using the GNU C compiler... (cached) yes checking whether ccache gcc accepts -g... (cached) yes checking for ccache gcc option to accept ISO C89... (cached) none needed checking dependency style of ccache gcc... (cached) gcc3 checking whether ccache gcc and cc understand -c and -o together... yes checking compiler support for -Werror=format-security... no checking compiler support for -Wno-pointer-sign... yes checking linker tolerates -z relro... no checking GNU compiler version... 4.0.1 checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking for LC_MESSAGES... yes checking libintl.h usability... yes checking libintl.h presence... yes checking for libintl.h... yes checking for ngettext in libc... no checking for bindtextdomain in -lintl... yes checking for ngettext in -lintl... yes checking for dgettext in -lintl... yes checking for bind_textdomain_codeset... yes checking for msgfmt... (cached) /Volumes/blue/mp/bin/msgfmt checking for dcgettext... yes checking if msgfmt accepts -c... yes checking for gmsgfmt... (cached) /Volumes/blue/mp/bin/msgfmt checking for xgettext... (cached) /Volumes/blue/mp/bin/xgettext checking for catalogs to be installed... am ar az be bg bn br ca ca@...1971... cs da de dz el en_AU en_CA en_GB en_US@...1443... eo es_MX es et eu fi fr ga gl he hr hu hy id it ja km ko lt mk mn nb ne nl nn pa pl pt_BR pt ro ru rw sk sl sq sr@...1894... sr sv th tr uk vi zh_CN zh_TW checking for pkg-config... /Volumes/blue/mp/bin/pkg-config checking for msgfmt... (cached) /Volumes/blue/mp/bin/msgfmt checking for gmsgfmt... (cached) /Volumes/blue/mp/bin/msgfmt checking for OpenMP flag of C++ compiler... unknown checking for png_read_info in -lpng... yes checking png.h usability... yes checking png.h presence... yes checking for png.h... yes checking for shl_load in -ldld... no checking for dlopen... yes checking gc.h usability... yes checking gc.h presence... yes checking for gc.h... yes checking for GC_init in -lgc... yes checking libgc version 6.4+... 7.1.255 yes checking sys/filio.h usability... yes checking sys/filio.h presence... yes checking for sys/filio.h... yes checking malloc.h usability... no checking malloc.h presence... no checking for malloc.h... no checking for mallinfo... no checking for freetype-config... /Volumes/blue/mp/bin/freetype-config checking for Win32 platform... no checking for Solaris platform... no checking pkg-config is at least version 0.9.0... yes checking for XFT... yes checking for PANGOFT2... yes checking for GNOME_VFS... yes checking whether byte ordering is bigendian... no checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking for Perl development environment... skipped checking for Python development environment... skipped checking for LCMS... yes checking for POPPLER... yes checking for POPPLER_GLIB... yes checking for CAIRO_SVG... yes checking for POPPLER_CAIRO... yes checking for POPPLERNEW... yes checking for LIBWPG... yes checking for IMAGEMAGICK... yes checking for CAIRO_USER_FONTS... yes checking for INKSCAPE... yes checking for Mac OS X Carbon support... yes checking boost/concept_check.hpp usability... yes checking boost/concept_check.hpp presence... yes checking for boost/concept_check.hpp... yes checking for overzealous strict aliasing warnings... yes checking for CAIRO_PDF... yes checking popt.h usability... yes checking popt.h presence... yes checking for popt.h... yes checking for new_aspell_config in -laspell... yes checking aspell.h usability... yes checking aspell.h presence... yes checking for aspell.h... yes checking for bind_textdomain_codeset... (cached) yes checking for gtk_window_set_default_icon_from_file... yes checking for gtk_window_fullscreen... yes checking whether binary relocation support should be enabled... no checking for pow... yes checking for sqrt... yes checking for floor... yes checking for gettimeofday... yes checking for memmove... yes checking for memset... yes checking for mkdir... yes checking for strncasecmp... yes checking for strpbrk... yes checking for strrchr... yes checking for strspn... yes checking for strstr... yes checking for strtoul... yes checking for fpsetmask... no checking for ecvt... yes checking ieeefp.h usability... no checking ieeefp.h presence... no checking for ieeefp.h... no checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for libintl.h... (cached) yes checking stddef.h usability... yes checking stddef.h presence... yes checking for stddef.h... yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking whether lstat dereferences a symlink specified with a trailing slash... no checking whether stat accepts an empty string... no checking for strftime... yes checking for working strtod... yes checking whether stat file-mode macros are broken... no checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for mode_t... yes checking return type of signal handlers... void checking for x86 platform... yes checking compiler support for MMX... no configure: creating ./config.status
Configuration:
Source code location: . Destination path prefix: /Volumes/blue/src/Inkscape/src/inkscape-bzr/packaging/macosx/../../Build Compiler: ccache g++ CPPFLAGS: -Wall -Wformat -Wformat-security -W -D_FORTIFY_SOURCE=2 -I/Volumes/blue/mp/include CXXFLAGS: -Wpointer-arith -Wcast-align -Wsign-compare -Woverloaded-virtual -Wswitch -Wno-unused-parameter -O3 -Wall -Wno-strict-aliasing CFLAGS: -Wno-pointer-sign -O3 -Wall LDFLAGS: -L/Volumes/blue/mp/lib
Use Xft font database: yes Use gnome-vfs: yes Use openoffice files: yes Use MMX optimizations: no Use relocation support: no Internal Python: skipped Internal Perl: skipped Enable LittleCms: yes Enable Poppler-Cairo: yes ImageMagick Magick++: yes Libwpg: yes
/bin/sh ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating src/check-header-compile config.status: creating src/algorithms/makefile config.status: creating src/application/makefile config.status: creating src/bind/makefile config.status: creating src/debug/makefile config.status: creating src/dialogs/makefile config.status: creating src/display/makefile config.status: creating src/dom/makefile config.status: creating src/extension/implementation/makefile config.status: creating src/extension/internal/makefile config.status: creating src/extension/makefile config.status: creating src/extension/script/makefile config.status: creating src/filters/makefile config.status: creating src/helper/makefile config.status: creating src/inkjar/makefile config.status: creating src/io/makefile config.status: creating src/libcroco/makefile config.status: creating src/libgdl/makefile config.status: creating src/libnr/makefile config.status: creating src/libnrtype/makefile config.status: creating src/libavoid/makefile config.status: creating src/livarot/makefile config.status: creating src/live_effects/makefile config.status: creating src/live_effects/parameter/makefile config.status: creating src/pedro/makefile config.status: creating src/jabber_whiteboard/makefile config.status: creating src/removeoverlap/makefile config.status: creating src/svg/makefile config.status: creating src/trace/makefile config.status: creating src/traits/makefile config.status: creating src/ui/cache/makefile config.status: creating src/ui/dialog/makefile config.status: creating src/ui/makefile config.status: creating src/ui/view/makefile config.status: creating src/ui/widget/makefile config.status: creating src/util/makefile config.status: creating src/widgets/makefile config.status: creating src/xml/makefile config.status: creating src/2geom/makefile config.status: creating doc/Makefile config.status: creating po/Makefile.in config.status: creating share/Makefile config.status: creating share/clipart/Makefile config.status: creating share/examples/Makefile config.status: creating share/extensions/Makefile config.status: creating share/extensions/alphabet_soup/Makefile config.status: creating share/extensions/Barcode/Makefile config.status: creating share/extensions/Poly3DObjects/Makefile config.status: creating share/extensions/test/Makefile config.status: creating share/extensions/xaml2svg/Makefile config.status: creating share/filters/Makefile config.status: creating share/fonts/Makefile config.status: creating share/gradients/Makefile config.status: creating share/icons/Makefile config.status: creating share/icons/application/Makefile config.status: creating share/icons/application/16x16/Makefile config.status: creating share/icons/application/22x22/Makefile config.status: creating share/icons/application/24x24/Makefile config.status: creating share/icons/application/32x32/Makefile config.status: creating share/icons/application/48x48/Makefile config.status: creating share/icons/application/256x256/Makefile config.status: creating share/keys/Makefile config.status: creating share/markers/Makefile config.status: creating share/palettes/Makefile config.status: creating share/patterns/Makefile config.status: creating share/screens/Makefile config.status: creating share/templates/Makefile config.status: creating share/tutorials/Makefile config.status: creating share/ui/Makefile config.status: creating packaging/autopackage/default.apspec config.status: creating inkscape.spec config.status: creating Info.plist config.status: creating inkview.1 config.status: creating config.h config.status: config.h is unchanged config.status: executing depfiles commands config.status: executing default-1 commands config.status: executing po/stamp-it commands (CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Volumes/blue/src/Inkscape/src/inkscape-bzr/missing --run autoheader) rm -f stamp-h1 touch config.h.in cd . && /bin/sh ./config.status config.h config.status: creating config.h config.status: config.h is unchanged make all-recursive Making all in src CXX desktop.o CXX event-context.o ui/tool/control-point.h:118: warning: unused parameter ���state��� ui/tool/control-point.h:119: warning: unused parameter ���event��� CXX object-snapper.o object-snapper.cpp:760: warning: unused parameter ���isTarget��� CXX preferences.o CXX selection-chemistry.o selection-chemistry.cpp:1754: warning: unused parameter ���dt��� selection-chemistry.cpp:1754: warning: unused parameter ���clip��� CXX shape-editor.o shape-editor.cpp:131: warning: unused parameter ���saved��� CXX spray-context.o spray-context.cpp:425: warning: unused parameter ���choice��� spray-context.cpp: In function ���bool sp_spray_recursive(SPDesktop*, Inkscape::Selection*, SPItem*, Geom::Point, Geom::Point, gint, double, double, double, double&, double, bool, double, double, double, double, double, gint)���: spray-context.cpp:513: warning: ���unionResult��� may be used uninitialized in this function spray-context.cpp:511: warning: ���father��� may be used uninitialized in this function CXX text-context.o CXX verbs.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� CXX dialogs/clonetiler.o CXX dialogs/text-edit.o dialogs/text-edit.cpp: In function ���void sp_text_edit_dialog_read_selection(GtkWidget*, gboolean, gboolean)���: dialogs/text-edit.cpp:687: warning: unused variable ���notebook��� CXX dialogs/xml-tree.o CXX libnrtype/FontFactory.o libnrtype/FontFactory.cpp: In destructor ���virtual font_factory::~font_factory()���: libnrtype/FontFactory.cpp:334: warning: unused variable ���tmp��� CXX libnrtype/FontInstance.o CXX live_effects/effect.o CXX live_effects/parameter/path.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� live_effects/parameter/path.cpp:198: warning: unused parameter ���item��� CXX widgets/desktop-widget.o /Volumes/blue/mp/include/lcms.h: In function ���void* _cmsMalloc(size_t)���: /Volumes/blue/mp/include/lcms.h:1418: warning: comparison of unsigned expression < 0 is always false CXX widgets/gradient-toolbar.o CXX widgets/paint-selector.o widgets/paint-selector.cpp: In function ���SPPattern* sp_paint_selector_get_pattern(SPPaintSelector*)���: widgets/paint-selector.cpp:1007: warning: ���pat��� may be used uninitialized in this function CXX widgets/select-toolbar.o CXX widgets/stroke-style.o CXX widgets/toolbox.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� widgets/toolbox.cpp:1138: warning: unused parameter ���data��� widgets/toolbox.cpp:1144: warning: unused parameter ���data��� widgets/toolbox.cpp: In function ���void sp_connector_toolbox_prep(SPDesktop*, GtkActionGroup*, GObject*)���: widgets/toolbox.cpp:7624: warning: unused variable ���connection��� CXX ui/dialog/align-and-distribute.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� CXX ui/dialog/dialog-manager.o CXX ui/dialog/fill-and-stroke.o CXX ui/dialog/layers.o CXX ui/dialog/livepatheffect-editor.o CXX ui/dialog/transformation.o CXX ui/tool/control-point.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� ui/tool/control-point.cpp:358: warning: unused parameter ���item��� CXX ui/tool/control-point-selection.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� ui/tool/control-point-selection.cpp:321: warning: unused parameter ���event��� CXX ui/tool/curve-drag-point.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� ui/tool/curve-drag-point.cpp:61: warning: unused parameter ���event��� CXX ui/tool/manipulator.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� CXX ui/tool/multi-path-manipulator.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� CXX ui/tool/node.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� ui/tool/node.cpp:306: warning: unused parameter ���event��� ui/tool/node.cpp:970: warning: unused parameter ���event��� CXX ui/tool/node-tool.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� ui/tool/node-tool.cpp:561: warning: unused parameter ���sel��� CXX ui/tool/path-manipulator.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� CXX ui/tool/selectable-control-point.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� CXX ui/tool/selector.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� CXX ui/tool/transform-handle-set.o ./ui/tool/control-point.h:118: warning: unused parameter ���state��� ./ui/tool/control-point.h:119: warning: unused parameter ���event��� ui/tool/transform-handle-set.cpp:163: warning: unused parameter ���event��� ui/tool/transform-handle-set.cpp:327: warning: unused parameter ���event��� ui/tool/transform-handle-set.cpp:428: warning: unused parameter ���event��� ui/tool/transform-handle-set.cpp:467: warning: unused parameter ���state��� CXX ui/widget/layer-selector.o CXX ui/widget/object-composite-settings.o AR libinkscape.a ranlib: file: libinkscape.a(doxygen-main.o) has no symbols ranlib: file: libinkscape.a(fixes.o) has no symbols ranlib: file: libinkscape.a(ige-mac-menu.o) has no symbols ranlib: file: libinkscape.a(nr-filter-utils.o) has no symbols ranlib: file: libinkscape.a(win32.o) has no symbols ranlib: file: libinkscape.a(emf-win32-print.o) has no symbols ranlib: file: libinkscape.a(emf-win32-inout.o) has no symbols ranlib: file: libinkscape.a(filedialogimpl-win32.o) has no symbols ranlib: file: libinkscape.a(edit.o) has no symbols ranlib: file: libinkscape.a(doxygen-main.o) has no symbols ranlib: file: libinkscape.a(fixes.o) has no symbols ranlib: file: libinkscape.a(ige-mac-menu.o) has no symbols ranlib: file: libinkscape.a(nr-filter-utils.o) has no symbols ranlib: file: libinkscape.a(win32.o) has no symbols ranlib: file: libinkscape.a(emf-win32-print.o) has no symbols ranlib: file: libinkscape.a(emf-win32-inout.o) has no symbols ranlib: file: libinkscape.a(filedialogimpl-win32.o) has no symbols ranlib: file: libinkscape.a(edit.o) has no symbols CXXLD inkscape CXXLD inkview Making all in doc make[2]: Nothing to be done for `all'. Making all in share Making all in clipart make[3]: Nothing to be done for `all'. Making all in examples make[3]: Nothing to be done for `all'. Making all in extensions Making all in alphabet_soup make[4]: Nothing to be done for `all'. Making all in Barcode make[4]: Nothing to be done for `all'. Making all in Poly3DObjects make[4]: Nothing to be done for `all'. Making all in test make[4]: Nothing to be done for `all'. Making all in xaml2svg make[4]: Nothing to be done for `all'. make[4]: Nothing to be done for `all-am'. Making all in filters make[3]: Nothing to be done for `all'. Making all in fonts make[3]: Nothing to be done for `all'. Making all in gradients make[3]: Nothing to be done for `all'. Making all in icons Making all in application Making all in 16x16 make[5]: Nothing to be done for `all'. Making all in 22x22 make[5]: Nothing to be done for `all'. Making all in 24x24 make[5]: Nothing to be done for `all'. Making all in 32x32 make[5]: Nothing to be done for `all'. Making all in 48x48 make[5]: Nothing to be done for `all'. Making all in 256x256 make[5]: Nothing to be done for `all'. make[5]: Nothing to be done for `all-am'. make[4]: Nothing to be done for `all-am'. Making all in keys make[3]: Nothing to be done for `all'. Making all in markers make[3]: Nothing to be done for `all'. Making all in palettes make[3]: Nothing to be done for `all'. Making all in patterns make[3]: Nothing to be done for `all'. Making all in screens make[3]: Nothing to be done for `all'. Making all in templates make[3]: Nothing to be done for `all'. Making all in tutorials make[3]: Nothing to be done for `all'. Making all in ui make[3]: Nothing to be done for `all'. make[3]: Nothing to be done for `all-am'. Making all in po make[2]: Nothing to be done for `all'. LeWitt:inkscape-bzr suv$

W dniu 15 stycznia 2010 22:19 użytkownik ~suv <suv-sf@...58...> napisał:
- patching the system gcc/libstdc++-v3 TR1 header file 'hashtable'
I renamed the installed version and copied the one from the gcc 4.0.4 tarball into '/usr/include/c++/4.0.0/tr1/'
- building Inkscape r8979
to rebuild Inkscape I did:
- bzr revert -r 8979
- re-apply local patches
- touch configure.ac (to re-run configure)
- make
The build went through without fatal errors, see attached build log file.
This looks good. I think that if the instructions on how to fix the broken hashtable header are included in the Mac compilation instructions, and a check is put in configure, we can use the non-deprecated tr1::unordered_set. What others think?
Regards, Krzysztof

On Jan 15, 2010, at 1:53 PM, Krzysztof Kosiński wrote:
This looks good. I think that if the instructions on how to fix the broken hashtable header are included in the Mac compilation instructions, and a check is put in configure, we can use the non-deprecated tr1::unordered_set. What others think?
I think I'd like that in general. I had not had time to chase down all the issues myself, so I stopped at merely encapsulating the Font* abuses (Note that I say "abuse" here, since Inkscape was made to handle fonts in a manner that not is a good way to deal with fonts).
I think all we need to do is
1) get tr1::unordered_set in our matrix of supported features and make sure we know where things cut off.
2) add several CxxTest unit tests to cover things on both unordered_set and hash_set. As long as those are comprehensive, we should be safe.
Thanks, guys, for all the work on this.

On 15/1/10 22:53, Krzysztof Kosiński wrote:
W dniu 15 stycznia 2010 22:19 użytkownik ~suv <suv-sf@...58...> napisał:
- patching the system gcc/libstdc++-v3 TR1 header file 'hashtable'
I renamed the installed version and copied the one from the gcc 4.0.4 tarball into '/usr/include/c++/4.0.0/tr1/'
- building Inkscape r8979
(...)
The build went through without fatal errors, see attached build log file.
This looks good. I think that if the instructions on how to fix the broken hashtable header are included in the Mac compilation instructions, and a check is put in configure, we can use the non-deprecated tr1::unordered_set. What others think?
I'm not sure if all is good...
I updated to revision 8988. Building went without any new errors besides the known warnings.
The new node tool is very unstable and unpredictable for me, and barely usable in LPE effects to adjust effect parameters on-canvas precisely [1] and when snapping is active (doesn't make a difference if snap delay is default or reduced to 0ms). Since I haven't heard about this from others - here, on the bug tracker or in #inkscape - I'm not sure if this due to using gcc-4.0 to build Inkscape.
I'm attaching a crash report (which includes a backtrace [2] for the thread that crashed after throwing an error in libstdc++.6.dylib). IIRC I was 'tabbing' backwards through nodes of a subpath of a regular six-pointed star converted to path and broken apart with the node tool when Inkscape crashed. As soon as I find a set of steps to consistently reproduce the crashes I have in the node editor I'll file a bug report so others can test as well.
console messages:
terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_S_construct NULL not valid
Emergency save activated!
Emergency save document locations: /Users/suv/New document 1.2010_01_16_10_22_38.0.svg Emergency save completed. Inkscape will close now.
I doubt that it is related to my patching/replacing '/usr/include/c++/4.0.0/tr1/hashtable' since I saw similar issues when first testing the node tool with r8980 (built with unpatched c++ headers), though I can't remember having seen errors in libstdc++.
~suv
[1] try to repeat Tav's snowflake example with the VonKoch LPE in both stable 0.47 and with a current build from bzr with the new node tool:
"tutorial to create one side of a Von Koch snowflake" at http://tavmjong.free.fr/INKSCAPE/MANUAL/html/Paths-LivePathEffects-VonKoch.html
[2] information about OS X CrashReports: http://developer.apple.com/mac/library/technotes/tn2004/tn2123.html
gdb is complicated to use with bundled applications on OS X, and while I know how to do it, I never got more detailed results which 'bt' inside gdb than what is in the crash reports. Admittedly I haven't learned about further usage of gdb (yet) - like stepping through certain procedures or setting/using breakpoints.
Process: inkscape-bin [22097] Path: /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/bin/inkscape-bin Identifier: inkscape-bin Version: ??? (???) Code Type: X86 (Native) Parent Process: Inkscape [22096]
Date/Time: 2010-01-16 10:22:40.403 +0100 OS Version: Mac OS X 10.5.8 (9L30) Report Version: 6 Anonymous UUID: 06BF1784-B9BF-4BFA-8A5D-2D66E467AB39
Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Crashed Thread: 0
Thread 0 Crashed: 0 libSystem.B.dylib 0x90136e42 __kill + 10 1 libSystem.B.dylib 0x901a923a raise + 26 2 libSystem.B.dylib 0x901b5622 __abort + 97 3 libSystem.B.dylib 0x901b568a _cproc_fork_child + 0 4 libstdc++.6.dylib 0x96859005 0x96811000 + 294917 5 libstdc++.6.dylib 0x9685710c __gxx_personality_v0 + 1108 6 libstdc++.6.dylib 0x9685714b std::terminate() + 29 7 libstdc++.6.dylib 0x96857261 __cxa_throw + 101 8 libstdc++.6.dylib 0x96817a6a std::__throw_domain_error(char const*) + 0 9 libstdc++.6.dylib 0x9683f366 char* std::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) + 80 10 libstdc++.6.dylib 0x9683f4ac std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) + 66 11 libglibmm-2.4.1.dylib 0x012e7e8f Glib::ustring::ustring(char const*) + 31 12 inkscape-bin 0x005ca313 Inkscape::UI::CurveDragPoint::_getTip(unsigned int) + 275 13 inkscape-bin 0x005bf171 Inkscape::UI::ControlPoint::_updateTip(unsigned int) + 33 14 inkscape-bin 0x005bf776 Inkscape::UI::ControlPoint::_setMouseover(Inkscape::UI::ControlPoint*, unsigned int) + 54 15 inkscape-bin 0x005c0035 Inkscape::UI::ControlPoint::_eventHandler(_GdkEvent*) + 789 16 inkscape-bin 0x005befa8 Inkscape::UI::ControlPoint::_event_handler(SPCanvasItem*, _GdkEvent*, Inkscape::UI::ControlPoint*) + 24 17 inkscape-bin 0x003255ab sp_marshal_BOOLEAN__POINTER + 107 18 libgobject-2.0.0.dylib 0x01d68b29 g_closure_invoke + 313 19 libgobject-2.0.0.dylib 0x01d7939c signal_emit_unlocked_R + 1900 20 libgobject-2.0.0.dylib 0x01d7a4c7 g_signal_emit_valist + 439 21 libgtk-x11-2.0.0.dylib 0x01700d65 gtk_signal_emit + 85 22 inkscape-bin 0x00265a68 emit_event(SPCanvas*, _GdkEvent*) + 488 23 inkscape-bin 0x00265fa1 pick_current_item(SPCanvas*, _GdkEvent*) + 721 24 inkscape-bin 0x00269e69 sp_canvas_motion(_GtkWidget*, _GdkEventMotion*) + 185 25 libgtk-x11-2.0.0.dylib 0x0157c01b _gtk_marshal_BOOLEAN__BOXED + 107 26 libgobject-2.0.0.dylib 0x01d68b29 g_closure_invoke + 313 27 libgobject-2.0.0.dylib 0x01d79525 signal_emit_unlocked_R + 2293 28 libgobject-2.0.0.dylib 0x01d7a4c7 g_signal_emit_valist + 439 29 libgobject-2.0.0.dylib 0x01d7adb9 g_signal_emit + 41 30 libgtk-x11-2.0.0.dylib 0x0169b046 gtk_widget_event_internal + 614 31 libgtk-x11-2.0.0.dylib 0x0157a205 gtk_propagate_event + 213 32 libgtk-x11-2.0.0.dylib 0x0157a79f gtk_main_do_event + 1151 33 libgdk-x11-2.0.0.dylib 0x018d02c5 gdk_event_dispatch + 85 34 libglib-2.0.0.dylib 0x01ddcf0d g_main_context_dispatch + 573 35 libglib-2.0.0.dylib 0x01de07bb g_main_context_iterate + 1179 36 libglib-2.0.0.dylib 0x01de0a97 g_main_loop_run + 439 37 libgtk-x11-2.0.0.dylib 0x01579881 gtk_main + 177 38 libgtkmm-2.4.1.dylib 0x00ec147b Gtk::Main::run() + 27 39 inkscape-bin 0x0000485a sp_main_gui(int, char const**) + 1146 40 inkscape-bin 0x001efae2 Inkscape::NSApplication::Application::run() + 178 41 inkscape-bin 0x000032b2 main + 322 42 inkscape-bin 0x00002ae6 start + 54
Thread 1: 0 libSystem.B.dylib 0x900d046e __semwait_signal + 10 1 libSystem.B.dylib 0x901209f8 pthread_cond_timedwait$UNIX2003 + 72 2 libgthread-2.0.0.dylib 0x01daf63b g_cond_timed_wait_posix_impl + 107 3 libglib-2.0.0.dylib 0x01db70e1 g_async_queue_pop_intern_unlocked + 225 4 libglib-2.0.0.dylib 0x01db73b1 g_async_queue_timed_pop + 65 5 libglib-2.0.0.dylib 0x01e08280 g_thread_pool_thread_proxy + 272 6 libglib-2.0.0.dylib 0x01e063c8 g_thread_create_proxy + 152 7 libSystem.B.dylib 0x900fa155 _pthread_start + 321 8 libSystem.B.dylib 0x900fa012 thread_start + 34
Thread 0 crashed with X86 Thread State (32-bit): eax: 0x00000000 ebx: 0x901b5639 ecx: 0xbfffd45c edx: 0x90136e42 edi: 0xa00195b8 esi: 0x091084ac ebp: 0xbfffd478 esp: 0xbfffd45c ss: 0x0000001f efl: 0x00200286 eip: 0x90136e42 cs: 0x00000007 ds: 0x0000001f es: 0x0000001f fs: 0x00000000 gs: 0x00000037 cr2: 0x00744000
Binary Images: 0x1000 - 0x990fff +inkscape-bin ??? (???) <b30efb8fad774d52cc7caf0acf000320> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/bin/inkscape-bin 0xe6d000 - 0xfb7ff7 +libgtkmm-2.4.1.dylib ??? (???) <a7bf1ea66c8c3e7d81bfc14adc0a5413> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgtkmm-2.4.1.dylib 0x119d000 - 0x11d0ff8 +libgiomm-2.4.1.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgiomm-2.4.1.dylib 0x1209000 - 0x1225ff2 +libgdkmm-2.4.1.dylib ??? (???) <897880610a523cc4e146c33b3b4349e0> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgdkmm-2.4.1.dylib 0x1249000 - 0x126bffb +libatkmm-1.6.1.dylib ??? (???) <f0682cac26700a5b932a3e599ff981b0> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libatkmm-1.6.1.dylib 0x128d000 - 0x129bff7 +libpangomm-1.4.1.dylib ??? (???) <1756775acb16ea5c2f571736989182f6> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpangomm-1.4.1.dylib 0x12b1000 - 0x12beff2 +libcairomm-1.0.1.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libcairomm-1.0.1.dylib 0x12cf000 - 0x12f5ff2 +libglibmm-2.4.1.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libglibmm-2.4.1.dylib 0x131d000 - 0x1349fff +libxslt.1.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libxslt.1.dylib 0x1353000 - 0x1458fef +libxml2.2.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libxml2.2.dylib 0x1486000 - 0x1487ff4 +libsigc-2.0.0.dylib ??? (???) <a81d63a170e609c162881fed29d3a2ab> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libsigc-2.0.0.dylib 0x148c000 - 0x148fffa +libgtkspell.0.dylib ??? (???) <dc9a60010a79016a3d099fbed1f444c7> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgtkspell.0.dylib 0x1494000 - 0x149aff5 +libenchant.1.dylib ??? (???) <4fcb26598a43f4a90a69fc37b90c6d84> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libenchant.1.dylib 0x14a0000 - 0x17d8fef +libgtk-x11-2.0.0.dylib ??? (???) <526e57ffa52b79cf811cc7daf8c36128> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgtk-x11-2.0.0.dylib 0x189b000 - 0x190dfeb +libgdk-x11-2.0.0.dylib ??? (???) <d9c9dcdff030b71bb8bea576ed00d0c0> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgdk-x11-2.0.0.dylib 0x192f000 - 0x1940ff6 +libatk-1.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libatk-1.0.0.dylib 0x194d000 - 0x195efff +libgdk_pixbuf-2.0.0.dylib ??? (???) <67673be2631e120076781f2d4b8f394d> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgdk_pixbuf-2.0.0.dylib 0x1966000 - 0x196cfef +libpangocairo-1.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpangocairo-1.0.0.dylib 0x1973000 - 0x19c5fec +libgio-2.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgio-2.0.0.dylib 0x19e7000 - 0x19e7ff6 +libXinerama.1.dylib ??? (???) <cf34e3fad940ca81800575efaf0dbd2c> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXinerama.1.dylib 0x19eb000 - 0x19f1ff7 +libXi.6.dylib ??? (???) <97ac1cef55306188c9f3eee36e759900> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXi.6.dylib 0x19f5000 - 0x19fafe3 +libXrandr.2.dylib ??? (???) <ab1621784b250d08f798661b110359a3> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXrandr.2.dylib 0x19fe000 - 0x1a03fe5 +libXcursor.1.dylib ??? (???) <6c24c57b3df8f1e3a6c5f358241206f8> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXcursor.1.dylib 0x1a08000 - 0x1a08ff6 +libXcomposite.1.dylib ??? (???) <cebe0d57c78282e3d7e8f21e341341d3> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXcomposite.1.dylib 0x1a0c000 - 0x1a0cff3 +libXdamage.1.dylib ??? (???) <e55c453b0301660e0606be914e50bfd8> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXdamage.1.dylib 0x1a10000 - 0x1a31feb +libpangoft2-1.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpangoft2-1.0.0.dylib 0x1a3b000 - 0x1a45ff2 +libXext.6.dylib ??? (???) <98407ebf5d2945b07861eb6fc09b3af5> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXext.6.dylib 0x1a4b000 - 0x1a4dff9 +libXfixes.3.dylib ??? (???) <9507e689adcdf0dd3d2bd591a098a6e1> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXfixes.3.dylib 0x1a51000 - 0x1ab5feb +libcairo.2.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libcairo.2.dylib 0x1acf000 - 0x1b02fef +libpixman-1.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpixman-1.0.dylib 0x1b0c000 - 0x1b12fff +libXrender.1.dylib ??? (???) <56d83e9612ad300b10ac68e93c5f7f7d> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXrender.1.dylib 0x1b17000 - 0x1c1dfef +libX11.6.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libX11.6.dylib 0x1c3d000 - 0x1c3dffe +libXau.6.dylib ??? (???) <d84951cd5ae46352988571835cf10bde> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXau.6.dylib 0x1c41000 - 0x1c43fef +libXdmcp.6.dylib ??? (???) <ee265efbb0673eb4ae45c473dd41143c> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXdmcp.6.dylib 0x1c47000 - 0x1c7aff7 +libpango-1.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpango-1.0.0.dylib 0x1c8b000 - 0x1cb3fe7 +libfontconfig.1.dylib ??? (???) <f5316ecc78373e21f32e8f859cdca5aa> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libfontconfig.1.dylib 0x1cbd000 - 0x1cd9fe3 +libexpat.1.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libexpat.1.dylib 0x1ce1000 - 0x1d51fe9 +libfreetype.6.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libfreetype.6.dylib 0x1d65000 - 0x1d98ff7 +libgobject-2.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgobject-2.0.0.dylib 0x1da9000 - 0x1daaffd +libgmodule-2.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgmodule-2.0.0.dylib 0x1dae000 - 0x1db0ff1 +libgthread-2.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgthread-2.0.0.dylib 0x1db4000 - 0x1e73fe7 +libglib-2.0.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libglib-2.0.0.dylib 0x1e92000 - 0x1e99ff3 +libintl.8.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libintl.8.dylib 0x1e9e000 - 0x1f96fe0 +libiconv.2.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libiconv.2.dylib 0x1fa3000 - 0x1fc2ffb +libpng12.0.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpng12.0.dylib 0x1fc9000 - 0x1fd9ffd +libz.1.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libz.1.dylib 0x1fde000 - 0x215efe3 +libgsl.0.dylib ??? (???) <43a83368ca1df1ab36b8a1ce6c0cfef3> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgsl.0.dylib 0x21ac000 - 0x21ddff1 +libgslcblas.0.dylib ??? (???) <b3334b158f0b16b09a9e37d3021f6e9e> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgslcblas.0.dylib 0x21e2000 - 0x21e8fff +libpopt.0.dylib ??? (???) <ecf949f6dd3048c260bf5e9834925667> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpopt.0.dylib 0x21ed000 - 0x2281fe7 +libaspell.15.dylib ??? (???) <156eb22ae53310e7b969a37afdfea4a3> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libaspell.15.dylib 0x22ed000 - 0x2330ff7 +libgnomevfs-2.0.dylib ??? (???) <f3059e065f7109106ee67b5f570a46ae> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgnomevfs-2.0.dylib 0x234c000 - 0x236fff7 +libgconf-2.4.dylib ??? (???) <d87862211e9bd1eb3dd6253da8ca0db7> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgconf-2.4.dylib 0x2382000 - 0x23b2fef +libORBit-2.0.dylib ??? (???) <6e387c0c65b6f965184c023f1bd7e963> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libORBit-2.0.dylib 0x23dd000 - 0x240dfff +libdbus-1.3.dylib ??? (???) <291d59e35e95ead830deadc06474bd23> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libdbus-1.3.dylib 0x241e000 - 0x243afff +libwpg-0.1.1.dylib ??? (???) <b9d158436138135a46d4758755baf10d> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libwpg-0.1.1.dylib 0x2447000 - 0x244fff0 +libwpg-stream-0.1.1.dylib ??? (???) <ecbb3b324160971fc0311bb1fae55157> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libwpg-stream-0.1.1.dylib 0x2456000 - 0x24a0fe7 +libwpd-0.8.8.dylib ??? (???) <a3b0f1369a70f4c9165e30254d58eba6> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libwpd-0.8.8.dylib 0x24dc000 - 0x250bff2 +libMagick++.2.dylib ??? (???) <d180bb5bf1128cd9591385038ba27927> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libMagick++.2.dylib 0x253b000 - 0x26effe7 +libMagickCore.2.dylib ??? (???) <5b43f7231f0de754c10d4123ed6e13ca> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libMagickCore.2.dylib 0x2778000 - 0x278ffff +libgc.1.dylib ??? (???) <44cc0b4f45ebbe5ef1cfaf7ebf4aa7cb> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libgc.1.dylib 0x27ba000 - 0x27e2fef +liblcms.1.dylib ??? (???) <be01b1b742ea0bb2d80695790864e2b4> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/liblcms.1.dylib 0x27ee000 - 0x2917fe2 +libpoppler.5.dylib ??? (???) <db0126b0c7eeb810b999ab7857480db0> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpoppler.5.dylib 0x2987000 - 0x29a2fff +libpoppler-glib.4.dylib ??? (???) <cdf6c6fd65d30d2e965302710cacd623> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libpoppler-glib.4.dylib 0x29b6000 - 0x29caff4 +libdbus-glib-1.2.dylib ??? (???) <cbed27b4d77356f6d57c5c41d26ed44d> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libdbus-glib-1.2.dylib 0x29d5000 - 0x2a0dfeb +libssl.0.9.8.dylib ??? (???) <9fb8f5bf9950c1d33555cecc85288592> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libssl.0.9.8.dylib 0x2a21000 - 0x2b23fe7 +libcrypto.0.9.8.dylib ??? (???) <878fc8a1ed70539be2a972d85b79acf3> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libcrypto.0.9.8.dylib 0x2b81000 - 0x2c8afff +libMagickWand.2.dylib ??? (???) <c14558642bb944b60f5ef3473d21f096> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libMagickWand.2.dylib 0x2ca8000 - 0x2cf4fef +libtiff.3.dylib ??? (???) <9b3402197bfe7c82879f02eceec423ea> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libtiff.3.dylib 0x2cff000 - 0x2d1bff0 +libjpeg.62.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libjpeg.62.dylib 0x2d22000 - 0x2ea3ff3 +libfftw3.3.dylib ??? (???) <934f17a37d1812f3921452473b244af4> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libfftw3.3.dylib 0x2eca000 - 0x2f0bff8 +libXt.6.dylib ??? (???) <e8d87c9bbc9bd551d50a678ae91dac63> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libXt.6.dylib 0x2f1e000 - 0x2f2cfff +libbz2.1.0.dylib ??? (???) <019dbd2c9f5abd0099cdf1cf264439dd> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libbz2.1.0.dylib 0x2f31000 - 0x2f36fe7 +libltdl.7.dylib ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libltdl.7.dylib 0x2f3b000 - 0x2f40ffc +libSM.6.dylib ??? (???) <40a9ee8589bf017e47c9a316d69f9fa6> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libSM.6.dylib 0x2f45000 - 0x2f55ff7 +libICE.6.dylib ??? (???) <ff12d680f0201b82b8ddb236d0cbc150> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libICE.6.dylib 0x2f5d000 - 0x2f74fe7 +libopenjpeg-2.1.3.0.dylib ??? (???) <f557fe510e0e740ad3b3e327429ad615> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/libopenjpeg-2.1.3.0.dylib 0x2ff3000 - 0x2ff9ff4 +libpixmap.so ??? (???) <fb4b3f0be6c4e6d2a3bb2055d4aa3c30> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/gtk-2.0/2.10.0/engines/libpixmap.so 0x3200000 - 0x3212fff +libclearlooks.so ??? (???) <86ff56bb5ecf940f8ddab4d77b85e98b> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/gtk-2.0/2.10.0/engines/libclearlooks.so 0x59e3000 - 0x59e5ff0 +libpixbufloader-png.so ??? (???) <87cf4af25160e874c8b35f64b79b5191> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-png.so 0x5c4e000 - 0x5c4efe3 +pango-basic-fc.so ??? (???) /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/pango/1.6.0/modules/pango-basic-fc.so 0x5d80000 - 0x5d84ff8 +libpixbufloader-xpm.so ??? (???) <d4fba757f17132681611c3b1d2fac6f4> /Volumes/blue/src/Inkscape/Inkscape-BZR/Inkscape.app/Contents/Resources/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-xpm.so 0x8fe00000 - 0x8fe2db43 dyld 97.1 (???) <458eed38a009e5658a79579e7bc26603> /usr/lib/dyld 0x9007e000 - 0x90084fff com.apple.print.framework.Print 218.0.3 (220.2) <5b7f4ef7c2df36aff9605377775781e4> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print 0x90085000 - 0x900c7fef com.apple.NavigationServices 3.5.2 (163) <72cdc9d21f6690837870923e7b8ca358> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/NavigationServices.framework/Versions/A/NavigationServices 0x900c8000 - 0x9022fff3 libSystem.B.dylib ??? (???) <ae47ca9b1686b065f8ac4d2de09cc432> /usr/lib/libSystem.B.dylib 0x91225000 - 0x91305fff libobjc.A.dylib ??? (???) <400e943f9e8a678eea22a1d1205490ee> /usr/lib/libobjc.A.dylib 0x9130b000 - 0x9130bffd com.apple.Accelerate 1.4.2 (Accelerate 1.4.2) /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate 0x9135b000 - 0x9135cffc libffi.dylib ??? (???) <eaf10b99a3fbc4920b175809407466c0> /usr/lib/libffi.dylib 0x913a2000 - 0x913f3ff7 com.apple.HIServices 1.7.1 (???) <ba7fd0ede540a0da08db027f87efbd60> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices 0x913f4000 - 0x916ceff3 com.apple.CoreServices.CarbonCore 786.11 (786.14) <d5cceb2fe9551d345d40dd1ecf409ec2> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore 0x916cf000 - 0x916d9feb com.apple.audio.SoundManager 3.9.2 (3.9.2) <df077a8048afc3075c6f2d9e7780e78e> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound 0x916ff000 - 0x9170cfe7 com.apple.opengl 1.5.10 (1.5.10) <5a2813f80c9441170cc1ab8a3dac5038> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL 0x9195a000 - 0x9195afff com.apple.Carbon 136 (136) <4177916bbf70e0ddc446f94001d54c95> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon 0x9195b000 - 0x91962fe9 libgcc_s.1.dylib ??? (???) <e280ddf3f5fb3049e674edcb109f389a> /usr/lib/libgcc_s.1.dylib 0x91a77000 - 0x91f48fbe libGLProgrammability.dylib ??? (???) <7f18294a7bd0b6afe4319f29187fc70d> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLProgrammability.dylib 0x91f49000 - 0x92010ff2 com.apple.vImage 3.0 (3.0) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage 0x92017000 - 0x9231ffe7 com.apple.HIToolbox 1.5.6 (???) <eece3cb8aa0a4e6843fcc1500aca61c5> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox 0x92338000 - 0x923c5ff7 com.apple.framework.IOKit 1.5.2 (???) <7a3cc24f78f93931731203854ae0d891> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit 0x923c6000 - 0x923c9fff com.apple.help 1.1 (36) <1a25a8fbb49a830efb31d5c0a52939cd> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help 0x923ca000 - 0x923d6ffe libGL.dylib ??? (???) /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib 0x92423000 - 0x9244cfff libcups.2.dylib ??? (???) <ee771753dd1111b656a2daa234a9e971> /usr/lib/libcups.2.dylib 0x9244d000 - 0x92454ffe libbsm.dylib ??? (???) <fa7ae5f1a621d9b69e7e18747c9405fb> /usr/lib/libbsm.dylib 0x92455000 - 0x92865fef libBLAS.dylib ??? (???) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib 0x92866000 - 0x92916fff edu.mit.Kerberos 6.0.13 (6.0.13) <804bd1b3f08fb57396781f012006367c> /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos 0x92917000 - 0x92917ffb com.apple.installserver.framework 1.0 (8) /System/Library/PrivateFrameworks/InstallServer.framework/Versions/A/InstallServer 0x92918000 - 0x929a2fe3 com.apple.DesktopServices 1.4.8 (1.4.8) <a6edef2d49ffdee3b01010b7e6edac1f> /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv 0x92bac000 - 0x92baefff com.apple.securityhi 3.0 (30817) <40562b85d99118354c974e76c32fa6fb> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI 0x934d5000 - 0x934e5ffc com.apple.LangAnalysis 1.6.5 (1.6.5) <d057feb38163121ffd871c564c692804> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis 0x93667000 - 0x937afff7 com.apple.ImageIO.framework 2.0.6 (2.0.6) <7f73ef328c8e8566f3f204b5a540a7f0> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO 0x937e3000 - 0x9383fff7 com.apple.htmlrendering 68 (1.1.3) <1c5c0c417891b920dfe139385fc6c155> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HTMLRendering.framework/Versions/A/HTMLRendering 0x939fb000 - 0x93a0bfff com.apple.speech.synthesis.framework 3.7.1 (3.7.1) <273d96ff861dc68be659c07ef56f599a> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis 0x93a0c000 - 0x93a55fef com.apple.Metadata 10.5.8 (398.26) <e4d268ea45379200f03cdc7c8bedae6f> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata 0x93a56000 - 0x93a85fe3 com.apple.AE 402.3 (402.3) <b13bfda0ad9314922ee37c0d018d7de9> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE 0x93ad2000 - 0x93c0bff7 libicucore.A.dylib ??? (???) <f2819243b278259b9a622ea111ea5fd6> /usr/lib/libicucore.A.dylib 0x93c0c000 - 0x93fa9fef com.apple.QuartzCore 1.5.8 (1.5.8) <a28fa54346a9f9d5b3bef076a1ee0fcf> /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore 0x94188000 - 0x941a0ff7 com.apple.CoreVideo 1.6.0 (20.0) <587c9c8966070a7d50276db35e1c76aa> /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo 0x94259000 - 0x94300feb com.apple.QD 3.11.57 (???) <35f058678972d42b88ebdf652df79956> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD 0x94333000 - 0x94335ff5 libRadiance.dylib ??? (???) <aefd52482869bb5010672679d151167e> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib 0x94336000 - 0x949d6feb com.apple.CoreGraphics 1.409.5 (???) <a40644ccdbdc76e3a0ab4d468b2f9bdd> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics 0x949d7000 - 0x949dcfff com.apple.CommonPanels 1.2.4 (85) <c135f02edd6b2e2864311e0b9d08a98d> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels 0x949dd000 - 0x94a97fe3 com.apple.CoreServices.OSServices 228 (228) <bc83e97f6888673c33f86652677c09cb> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices 0x94f72000 - 0x95330fea libLAPACK.dylib ??? (???) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib 0x95331000 - 0x95331ff8 com.apple.ApplicationServices 34 (34) <ee7bdf593da050bb30c7a1fc446eb8a6> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices 0x95332000 - 0x953acff8 com.apple.print.framework.PrintCore 5.5.4 (245.6) <03d0585059c20cb0bde5e000438c49e1> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore 0x953ad000 - 0x953c3fff com.apple.DictionaryServices 1.0.0 (1.0.0) <7d20b8d1fb238c3e71d0fa6fda18c4f7> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices 0x953c4000 - 0x95403fef libTIFF.dylib ??? (???) <801873cbd85ba7bdfe7646fe97a54ca3> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib 0x95477000 - 0x9547bfff libGIF.dylib ??? (???) <3c7100e80b7f7ca8809cf9512c1a6004> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib 0x954e1000 - 0x954f9fff com.apple.openscripting 1.2.8 (???) <0129d2f750f5ddcb92f4acf8a3541952> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting 0x9552a000 - 0x955f5fef com.apple.ColorSync 4.5.3 (4.5.3) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync 0x9560a000 - 0x95637feb libvDSP.dylib ??? (???) <4daafed78a471133ec30b3ae634b6d3e> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib 0x95638000 - 0x956b5fef libvMisc.dylib ??? (???) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib 0x956f1000 - 0x9572bfe7 com.apple.coreui 1.2 (62) /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI 0x9572c000 - 0x95748ff3 libPng.dylib ??? (???) <271373dd41f56369a3dfca0ed2be579a> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib 0x95759000 - 0x959d5fe7 com.apple.Foundation 6.5.9 (677.26) <c68b3cff7864959becfc7fd1a384f925> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation 0x962dc000 - 0x9638effb libcrypto.0.9.7.dylib ??? (???) <9d714c92872a93dd127ea8556b2c8945> /usr/lib/libcrypto.0.9.7.dylib 0x9638f000 - 0x963adfff libresolv.9.dylib ??? (???) <9ed809256ce8913cddc3269c2e364654> /usr/lib/libresolv.9.dylib 0x963ae000 - 0x963b2fff libmathCommon.A.dylib ??? (???) /usr/lib/system/libmathCommon.A.dylib 0x963e6000 - 0x9648dfec com.apple.CFNetwork 438.14 (438.14) <5f9ee0430b5f6319f18d9b23e777e0d2> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CFNetwork.framework/Versions/A/CFNetwork 0x9648e000 - 0x9651bff7 com.apple.LaunchServices 292 (292) <a41286c7c1eb20ffd5cc796f791070f0> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices 0x966d9000 - 0x966e1fff com.apple.DiskArbitration 2.2.1 (2.2.1) <2664eeb3a4d0c95a21c089892a0ae8d0> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration 0x966e2000 - 0x96761ff5 com.apple.SearchKit 1.2.2 (1.2.2) <3b5f3ab6a363a4d8a2bbbf74213ab0e5> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit 0x96762000 - 0x96781ffa libJPEG.dylib ??? (???) <50b881dd5a5795d38405c9c88c2806fa> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib 0x96783000 - 0x9680aff7 libsqlite3.0.dylib ??? (???) <3334ea5af7a911637413334154bb4100> /usr/lib/libsqlite3.0.dylib 0x96811000 - 0x9686effb libstdc++.6.dylib ??? (???) <f75e5133d72769de5ce6c06153fc65f6> /usr/lib/libstdc++.6.dylib 0x9686f000 - 0x968c8ff7 libGLU.dylib ??? (???) <a3b9be30100a25a6cd3ad109892f52b7> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib 0x96900000 - 0x96993ff3 com.apple.ApplicationServices.ATS 3.8 (???) <eda9db16110de6b7fd9436cd0daa787d> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS 0x96acd000 - 0x96af8fe7 libauto.dylib ??? (???) <2e44c523b851e8e25f05d13a48070a58> /usr/lib/libauto.dylib 0x96d48000 - 0x96d51fff com.apple.speech.recognition.framework 3.7.24 (3.7.24) <da2d8411921a3fd8bc898dc753b7f3ee> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition 0x96dac000 - 0x96f7dff3 com.apple.security 5.0.5 (36371) <c7f5d1b89c9891d332c81d1c5fe925e3> /System/Library/Frameworks/Security.framework/Versions/A/Security 0x96f83000 - 0x96fbafff com.apple.SystemConfiguration 1.9.2 (1.9.2) <eab546255ac099b9616df999c9359d0e> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration 0x96fbb000 - 0x9704efff com.apple.ink.framework 101.3 (86) <d4c85b5cafa8027fff042b84a8be71dc> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink 0x97320000 - 0x97453fe7 com.apple.CoreFoundation 6.5.7 (476.19) <a332c8f45529ee26d2e9c36d0c723bad> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation 0x97463000 - 0x97463ffa com.apple.CoreServices 32 (32) <373d6a888f9204641f313bc6070ae065> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0x97464000 - 0x97479ffb com.apple.ImageCapture 5.0.2 (5.0.2) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture 0x9747a000 - 0x974f7feb com.apple.audio.CoreAudio 3.1.2 (3.1.2) <782a08c44be4698597f4bbd79cac21c6> /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio 0x974f8000 - 0x97536fff libGLImage.dylib ??? (???) <a6425aeb77f4da13212ac75df57b056d> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib 0x97537000 - 0x97591ff7 com.apple.CoreText 2.0.4 (???) <f0b6c1d4f40bd21505097f0255abfead> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreText.framework/Versions/A/CoreText 0x97592000 - 0x97592ffd com.apple.Accelerate.vecLib 3.4.2 (vecLib 3.4.2) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib 0xfffe8000 - 0xfffebfff libobjc.A.dylib ??? (???) /usr/lib/libobjc.A.dylib 0xffff0000 - 0xffff1780 libSystem.B.dylib ??? (???) /usr/lib/libSystem.B.dylib

W dniu 16 stycznia 2010 11:18 użytkownik ~suv <suv-sf@...58...> napisał:
I'm not sure if all is good...
I updated to revision 8988. Building went without any new errors besides the known warnings.
The new node tool is very unstable and unpredictable for me, and barely usable in LPE effects to adjust effect parameters on-canvas precisely [1] and when snapping is active (doesn't make a difference if snap delay is default or reduced to 0ms). Since I haven't heard about this from others - here, on the bug tracker or in #inkscape - I'm not sure if this due to using gcc-4.0 to build Inkscape.
Try revision 8989, there was a very stupid bug in CurveDragPoint (it could try to construct a Glib::ustring from NULL under certain circumstances). It is not related to using __gnu_cxx or unordered_set.
Regards, Krzysztof

On 15/1/10 22:53, Krzysztof Kosiński wrote:
W dniu 15 stycznia 2010 22:19 użytkownik ~suv <suv-sf@...58...> napisał:
- patching the system gcc/libstdc++-v3 TR1 header file 'hashtable'
I renamed the installed version and copied the one from the gcc 4.0.4 tarball into '/usr/include/c++/4.0.0/tr1/'
- building Inkscape r8979
to rebuild Inkscape I did:
- bzr revert -r 8979
- re-apply local patches
- touch configure.ac (to re-run configure)
- make
The build went through without fatal errors, see attached build log file.
This looks good. I think that if the instructions on how to fix the broken hashtable header are included in the Mac compilation instructions, and a check is put in configure, we can use the non-deprecated tr1::unordered_set. What others think?
Proposal: "instructions on how to fix the hashtable header"
------------------------------------------------------------------------
Q: Inkscape 0.47+devel fails to build on Mac OS X 10.5.8 Leopard (Xcode 3.1.4) with an error in '/usr/include/c++/4.0.0/tr1/hashtable' [3].
A: Apple's default compiler (GNU Compiler Collection 4.0.1) [1] and libstdc++ library (GNU Standard C++ Library v3) have never been fully updated to the last released version of the GCC 4_0 [1] release series. To build Inkscape 0.47+devel on OS X 10.5.8. it is necessary to either patch the installed 'tr1/hashtable' header file of libstdc++-v3 or install a newer version of GCC via MacPorts.
Steps to replace the header file:
1) Download SVN revision 104939 of 'tr1/hashtable' from http://gcc.gnu.org/viewcvs/branches/gcc-4_0-branch/libstdc++-v3/include/tr1/hashtable?view=log
2) Overwrite Apple's version with the downloaded file from SVN revision 104939 and restore file permissions and ownership:
Replace file (assuming the new file is located in ~/Downloads): $ sudo mv /usr/include/c++/4.0.0/tr1/hashtable /usr/include/c++/4.0.0/tr1/hashtable-orig $ sudo cp ~/Downloads/hashtable /usr/include/c++/4.0.0/tr1
Check permissions/ownership: $ ls -l /usr/include/c++/4.0.0/tr1/hashtable Change if needed: $ sudo chmod 644 /usr/include/c++/4.0.0/tr1/hashtable $ sudo chown root:wheel /usr/include/c++/4.0.0/tr1/hashtable
Footnotes:
[1] GCC Links GCC 4.0 Release Series - GNU Project - Free Software Foundation (FSF): http://gcc.gnu.org/gcc-4.0/ Standard C++ Library v3 - GNU Project - Free Software Foundation (FSF): http://gcc.gnu.org/libstdc++/
[2] Apple's gcc/g++ versions known to have this issue: i686-apple-darwin9-g++-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5493) i686-apple-darwin9-g++-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5577)
[3] Full error message:
CXX ui/tool/multi-path-manipulator.o ./ui/tool/control-point.h:118: warning: unused parameter ‘state’ ./ui/tool/control-point.h:119: warning: unused parameter ‘event’ /usr/include/c++/4.0.0/tr1/hashtable: In member function ‘typename std::tr1::hashtable<Key, Value, Allocator, ExtractKey, Equal, H1, H2, H, RehashPolicy, cache_hash_code, mutable_iterators, unique_keys>::size_type std::tr1::hashtable<Key, Value, Allocator, ExtractKey, Equal, H1, H2, H, RehashPolicy, cache_hash_code, mutable_iterators, unique_keys>::erase(const Key&) [with Key = Inkscape::UI::NodeIteratorInkscape::UI::Node, Value = Inkscape::UI::NodeIteratorInkscape::UI::Node, Allocator = std::allocator<Inkscape::UI::NodeIteratorInkscape::UI::Node >, ExtractKey = Internal::identity<Inkscape::UI::NodeIteratorInkscape::UI::Node >, Equal = std::equal_to<Inkscape::UI::NodeIteratorInkscape::UI::Node >, H1 = std::tr1::hash<Inkscape::UI::NodeIteratorInkscape::UI::Node >, H2 = Internal::mod_range_hashing, H = Internal::default_ranged_hash, RehashPolicy = Internal::prime_rehash_policy, bool cache_hash_code = false, bool mutable_iterators = false, bool unique_keys = true
]’:
ui/tool/multi-path-manipulator.cpp:72: instantiated from here /usr/include/c++/4.0.0/tr1/hashtable:1363: warning: no return statement in function returning non-void /usr/include/c++/4.0.0/tr1/hashtable:1363: warning: control reaches end of non-void function CXX ui/tool/node.o ./ui/tool/control-point.h:118: warning: unused parameter ‘state’ ./ui/tool/control-point.h:119: warning: unused parameter ‘event’ ui/tool/node.cpp:306: warning: unused parameter ‘event’ ui/tool/node.cpp:970: warning: unused parameter ‘event’ /usr/include/c++/4.0.0/tr1/hashtable: In copy constructor ‘std::tr1::hashtable<Key, Value, Allocator, ExtractKey, Equal, H1, H2, H, RehashPolicy, cache_hash_code, mutable_iterators, unique_keys>::hashtable(const std::tr1::hashtable<Key, Value, Allocator, ExtractKey, Equal, H1, H2, H, RehashPolicy, cache_hash_code, mutable_iterators, unique_keys>&) [with Key = Inkscape::UI::SelectableControlPoint*, Value = Inkscape::UI::SelectableControlPoint*, Allocator = std::allocatorInkscape::UI::SelectableControlPoint*, ExtractKey = Internal::identityInkscape::UI::SelectableControlPoint*, Equal = std::equal_toInkscape::UI::SelectableControlPoint*, H1 = std::tr1::hashInkscape::UI::SelectableControlPoint*, H2 = Internal::mod_range_hashing, H = Internal::default_ranged_hash, RehashPolicy = Internal::prime_rehash_policy, bool cache_hash_code = false, bool mutable_iterators = false, bool unique_keys = true]’: /usr/include/c++/4.0.0/tr1/unordered_set:56: instantiated from here /usr/include/c++/4.0.0/tr1/hashtable:1045: error: no matching function for call to ‘std::tr1::hashtable<Inkscape::UI::SelectableControlPoint*, Inkscape::UI::SelectableControlPoint*, std::allocatorInkscape::UI::SelectableControlPoint*, Internal::identityInkscape::UI::SelectableControlPoint*, std::equal_toInkscape::UI::SelectableControlPoint*, std::tr1::hashInkscape::UI::SelectableControlPoint*, Internal::mod_range_hashing, Internal::default_ranged_hash, Internal::prime_rehash_policy, false, false, true>::m_allocate_node(Internal::hash_node<Inkscape::UI::SelectableControlPoint*, false>*&)’ /usr/include/c++/4.0.0/tr1/hashtable:898: note: candidates are: typename std::tr1::hashtable<Key, Value, Allocator, ExtractKey, Equal, H1, H2, H, RehashPolicy, cache_hash_code, mutable_iterators, unique_keys>::node* std::tr1::hashtable<Key, Value, Allocator, ExtractKey, Equal, H1, H2, H, RehashPolicy, cache_hash_code, mutable_iterators, unique_keys>::m_allocate_node(const Value&) [with Key = Inkscape::UI::SelectableControlPoint*, Value = Inkscape::UI::SelectableControlPoint*, Allocator = std::allocatorInkscape::UI::SelectableControlPoint*, ExtractKey = Internal::identityInkscape::UI::SelectableControlPoint*, Equal = std::equal_toInkscape::UI::SelectableControlPoint*, H1 = std::tr1::hashInkscape::UI::SelectableControlPoint*, H2 = Internal::mod_range_hashing, H = Internal::default_ranged_hash, RehashPolicy = Internal::prime_rehash_policy, bool cache_hash_code = false, bool mutable_iterators = false, bool unique_keys = true] /usr/include/c++/4.0.0/tr1/hashtable:1046: error: request for member ‘copy_code_from’ in ‘* tail’, which is of non-class type ‘Internal::hash_node<Inkscape::UI::SelectableControlPoint*, false>*’ make[2]: *** [ui/tool/node.o] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2
------------------------------------------------------------------------
Any comments and proposals to improve the instructions would be very appreciated! Do you think an alternative way to get an updated version of the header file - download the gcc-4.0.4 source tar-ball and extract the newer version 'gcc-4.0.4/libstdc++-v3/include/tr1/hashtable' - should be mentioned as well?
~suv

W dniu 17 stycznia 2010 13:39 użytkownik ~suv <suv-sf@...58...> napisał:
Proposal: "instructions on how to fix the hashtable header"
The instructions look OK. Please add them to the compiling page.
I reverted to using std::tr1::unordered_set in the node tool and in libnrtype. I added some configure code that checks whether the header is usable. On error, a link to the CompilingMacOsX page on the wiki is displayed. This should be sufficient to prevent confusion.
Regards, Krzysztof

On 20/1/10 20:33, Krzysztof Kosiński wrote:
W dniu 17 stycznia 2010 13:39 użytkownik ~suv <suv-sf@...58...> napisał:
Proposal: "instructions on how to fix the hashtable header"
The instructions look OK. Please add them to the compiling page.
I will add the instructions to the wiki page about compiling Inkscape on OS X after testing the new build:
I reverted to using std::tr1::unordered_set in the node tool and in libnrtype. I added some configure code that checks whether the header is usable. On error, a link to the CompilingMacOsX page on the wiki is displayed. This should be sufficient to prevent confusion.
revision 9006 built ok on Mac OS X 10.5.8 with the replaced TR1 'hashtable' header file:
checking build system type... i386-apple-darwin9.8.0 checking host system type... i386-apple-darwin9.8.0
(...)
checking GNU compiler version... 4.0.1
(...)
checking for Mac OS X Carbon support... yes checking boost/concept_check.hpp usability... yes checking boost/concept_check.hpp presence... yes checking for boost/concept_check.hpp... yes checking for overzealous strict aliasing warnings... yes checking TR1 unordered_set usability... ok checking for CAIRO_PDF... yes
~suv
participants (4)
-
Jon Cruz
-
Krzysztof Kosiński
-
Niko Kiirala
-
~suv