Opened 11 years ago
Last modified 11 years ago
#40979 closed defect
asymptote: fatal error: 'ext/slist' file not found — at Version 15
Reported by: | ulrich.klauck@… | Owned by: | loshea@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | mavericks | Cc: | michaelbartz@…, papachoco@…, mschamschula@…, dcecchin@…, flx.ms@…, mojca@… |
Port: | asymptote |
Description (last modified by mojca (Mojca Miklavec))
Port does not install. Error message is:
/usr/bin/clang++ -Wall -DHAVE_CONFIG_H -D_FILE_OFFSET_BITS=64 -DUSEGC -D_THREAD_SAFE -pthread -DFFTWPP_SINGLE_THREAD -I/opt/local/include -pipe -Os -arch x86_64 -I . -I/opt/local/include/gc -I/usr/include/gc -o settings.o -c settings.cc In file included from picture.cc:10: In file included from ./picture.h:15: In file included from ./drawelement.h:19: In file included from ./prcfile.h:5: In file included from ./prc/oPRCFile.h:41: ./prc/writePRC.h:29:10: fatal error: 'ext/slist' file not found #include <ext/slist> ^
Change History (18)
Changed 11 years ago by ulrich.klauck@…
comment:1 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Keywords: | mavericks added |
Owner: | changed from macports-tickets@… to loshea@… |
Summary: | asymptote @2.16_2 +python27 darwin_13.x86_64 → asymptote @2.16_2 +python27: fatal error: 'ext/slist' file not found |
comment:2 Changed 11 years ago by michaelbartz@…
Cc: | michaelbartz@… added |
---|
comment:3 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | papachoco@… added |
---|
Has duplicate #41062.
comment:5 Changed 11 years ago by ulrich.klauck@…
Hi guys,
I solved the problem for me by building asymptote from the source. There have been 3 problems:
- Adding '-stdlib=libstdc++' to the CFLAGS solved the slist.h-problem. In Max OS X Apple obviously moved to the C++11 STL. This can be overriden with the above mentionned CFLAG.
- The other two problems concern the preprocessor macros HAVE_LIBREADLINE and HAVE_LIBSIGSEGV in config.h. The configure script should be called with the option so that both are not defined. Maybe this holds true only for my particular system configuration. Since I am not well schooled in the structure of config.in files and configure scripts, as a quick (but dirty) solution I simply changed config.h
After applying these changes asymptote builds perfectly.
comment:7 Changed 11 years ago by Schamschula (Marius Schamschula)
Just added the above mentioned CFLAGS to the Portfile and updated asymptote to version 2.25. Also had to add --disable-offscreen to configure.args as there is an issue with the MESA GLUT.
Changed 11 years ago by Schamschula (Marius Schamschula)
Attachment: | Portfile-asymptote.diff added |
---|
comment:8 Changed 11 years ago by flx.ms@…
Cc: | flx.ms@… added |
---|
Cc Me!
Thank you mschamschula! Your patch worked greatly out of the box for me: Asymptote compiled and installed without any errors and also passed some tests, I perforemd. OS X Mavericks 10.9.2 (13C64), Xcode 5.1.1 (5B1008). - Waited in vain for month for this update! (since I upgraded to Mavericks)
@Maintainer: How about creating an official update based on the proposed patch?
Cheers!
Changed 11 years ago by mojca (Mojca Miklavec)
Attachment: | Portfile-asymptote-2.28.diff added |
---|
Update asymptote to 2.28 + other patches
comment:10 follow-up: 11 Changed 11 years ago by mojca (Mojca Miklavec)
I think one can call this maintainer timeout. I'm ready to apply the patch, but the following line is weird:
configure.env CFLAGS="-stdlib=libstdc++"
I don't have 10.9, so I would like to ask for confirmation that this is still needed. If it's still needed, we need to ask the upstream author for a fix.
comment:11 Changed 11 years ago by Schamschula (Marius Schamschula)
Replying to mojca@…:
I think one can call this maintainer timeout. I'm ready to apply the patch, but the following line is weird:
configure.env CFLAGS="-stdlib=libstdc++"I don't have 10.9, so I would like to ask for confirmation that this is still needed. If it's still needed, we need to ask the upstream author for a fix.
If you are using Xcode 5.1.x on 10.8 or 10.9 you will have this issue. It is not a problem for 10.7 or below.
comment:12 Changed 11 years ago by mojca (Mojca Miklavec)
I committed the rest in r120000, but I would like to explore if there is another ("proper") way for to fix this stdlib
flag.
comment:13 Changed 11 years ago by mojca (Mojca Miklavec)
Can someone explain me why CFLAGS
instead of CXXFLAGS
?
I don't have 10.9 installed yet, but I'm curious to know whether the following blind fix would help. (Not a proper fix yet, but I want to know whether it works at all.)
-
prc/writePRC.h
old new 26 26 #include <deque> 27 27 #include <list> 28 28 #ifdef __GNUC__ 29 #include < ext/slist>29 #include <forward_list> 30 30 #endif 31 31 #include <map> 32 32 #include <iostream> … … class PRCAttribute : public PRCAttributeEntry 225 225 std::deque<PRCSingleAttribute> attribute_keys; 226 226 }; 227 227 #ifdef __GNUC__ 228 typedef __gnu_cxx::slist<PRCAttribute> PRCAttributeList;228 typedef std::forward_list<PRCAttribute> PRCAttributeList; 229 229 #else 230 230 typedef std::list<PRCAttribute> PRCAttributeList; 231 231 #endif
http://stackoverflow.com/questions/19758400/ext-slist-file-not-found-on-os-x-10-9
comment:14 Changed 11 years ago by mojca (Mojca Miklavec)
A note to myself: a fix might need to include something like the following (but that still won't be the proper solution).
#include <ciso646> #ifdef _LIBCPP_VERSION #include <forward_list> // libc++ #else #include <ext/slist> // libstdc++ #endif
comment:15 Changed 11 years ago by mojca (Mojca Miklavec)
Description: | modified (diff) |
---|---|
Summary: | asymptote @2.16_2 +python27: fatal error: 'ext/slist' file not found → asymptote: fatal error: 'ext/slist' file not found |
Version: | 2.2.1 |
Cc Me!