Opened 14 years ago
Closed 14 years ago
#25162 closed defect (duplicate)
qt4-mac-devel fails to build, error in storage/StorageEvent.h:38
Reported by: | macports@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.9.99 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt) | |
Port: | qt4-mac-devel |
Description
qt4-mac-devel fails to build, both on MacPorts 1.8.2 and 1.9.0-rc2.
:info:build In file included from storage/StorageEvent.cpp:27: :info:build storage/StorageEvent.h:38: error: expected class-name before '{' token :info:build storage/StorageEvent.h:41: error: expected ',' or '...' before '&' token :info:build storage/StorageEvent.h:41: error: ISO C++ forbids declaration of 'AtomicString' with no type :info:build storage/StorageEvent.h:49: error: expected ',' or '...' before '&' token :info:build storage/StorageEvent.h:49: error: ISO C++ forbids declaration of 'AtomicString' with no type :info:build storage/StorageEvent.h:58: error: expected ',' or '...' before '&' token :info:build storage/StorageEvent.h:58: error: ISO C++ forbids declaration of 'AtomicString' with no type :info:build storage/StorageEvent.cpp:44: error: expected ',' or '...' before '&' token :info:build storage/StorageEvent.cpp:44: error: ISO C++ forbids declaration of 'AtomicString' with no type :info:build storage/StorageEvent.cpp: In static member function 'static WTF::PassRefPtr<WebCore::StorageEvent> WebCore::StorageEvent::create(int)': :info:build storage/StorageEvent.cpp:46: error: 'type' was not declared in this scope ... :info:build ../JavaScriptCore/wtf/PassRefPtr.h: In function 'void WTF::derefIfNotNull(T*) [with T = WebCore::StorageEvent]': :info:build ../JavaScriptCore/wtf/PassRefPtr.h:66: instantiated from 'WTF::PassRefPtr<T>::~PassRefPtr() [with T = WebCore::StorageEvent]' :info:build storage/StorageEvent.cpp:37: instantiated from here :info:build ../JavaScriptCore/wtf/PassRefPtr.h:42: error: 'class WebCore::StorageEvent' has no member named 'deref' :info:build make[2]: *** [obj/debug/StorageEvent.o] Error 1 :info:build make[1]: *** [debug-all] Error 2
Attachments (1)
Change History (4)
Changed 14 years ago by macports@…
Attachment: | main.log.gz added |
---|
comment:1 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|---|
Milestone: | MacPorts 1.9.0 |
Please don't set the Milestone field for port tickets.
You should probably be using qt4-mac instead of qt4-mac-devel. They're both at the same version right now so it doesn't much matter, but unless you want to be using development versions of qt4-mac in the future, you'll be safer with qt4-mac (which tracks only stable versions).
Do you have any of the following ports installed: kdelibs3 kdelibs4 libevent xmlrpcxx
If so, deactivate them before trying to build qt4-mac (or qt4-mac-devel) (and clean qt4-mac (or qt4-mac-devel) before attempting to build again); they interfere with the build process.
comment:2 follow-up: 3 Changed 14 years ago by macports@…
Thanks, deactivating libevent did the trick. Maybe qt4-mac should conflict with those packages -- or at least display a helpful message after a failed build?
Also, thanks for the tip about qt4-mac vs qt4-mac-devel. I though I needed qt4-mac-devel to do QT development.
comment:3 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → duplicate |
---|---|
Status: | new → closed |
Replying to macports@…:
Thanks, deactivating libevent did the trick. Maybe qt4-mac should conflict with those packages -- or at least display a helpful message after a failed build?
qt4-mac is already marked as conflicting with libevent. The problem is that the conflicts keyword was not designed to model build-time conflicts like this. (It was designed to model activation-time conflicts.) MacPorts base needs to be given a new keyword to model build-time conflicts.
So this ticket is a duplicate of #20199.
Also, thanks for the tip about qt4-mac vs qt4-mac-devel. I though I needed qt4-mac-devel to do QT development.
MacPorts does not follow that naming convention. In other package managers, -dev or -devel packages contain the headers, while the regular port contains the libraries. In MacPorts, the -devel port (if any) contains the development version of the full software (headers and libraries), and the regular port contains the stable version of the full software (headers and libraries). See #14540.
Log file from build