Opened 17 years ago
Closed 14 years ago
#15338 closed defect (worksforme)
openexr conflicts with but also depends on ilmbase
Reported by: | jannesbolten@… | Owned by: | waqar@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.6.0 |
Keywords: | Cc: | simon@… | |
Port: | openexr ilmbase |
Description
when i try to upgrade my openexr installation using MacPorts, I keep getting an error that relates to ilmbase. it seems that ilmbase is a dependency of openexr, so it needs to be activated. but when MacPorts tries to activate ilmbase, there is an error. MacPorts asks for openexr to be deactivated first. that's fine. deactivating openexr and subsequently activating ilmbase is no problem. but if i then try to upgrade openexr, there is this error:
---> Activating openexr 1.4.0_0 Error: Activating openexr 1.4.0_0 failed: Image error: /opt/local/include/OpenEXR/half.h is being used by the active ilmbase port. Please deactivate this port first, or use the -f flag to force the activation.
so this is a bit of a catch-22 situation.
for completeness' sake, here's what i see when i try to upgrade openexr with ilmbase deactivated:
---> Activating ilmbase 1.0.1_1 Error: Activating ilmbase 1.0.1_1 failed: Image error: /opt/local/include/OpenEXR/half.h is being used by the active openexr port. Please deactivate this port first, or use the -f flag to force the activation. ---> Building openexr with target all Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_OpenEXR/work/openexr-1.6.1" && make all " returned error 2 Command output: ./ImfIO.h:110: error: 'Int64' does not name a type ./ImfIO.h:118: error: 'Int64' has not been declared ./ImfIO.h:180: error: 'Int64' does not name a type ./ImfIO.h:188: error: 'Int64' has not been declared ./ImfXdr.h:162: error: 'Int64' has not been declared ./ImfXdr.h:245: error: 'Int64' has not been declared ./ImfXdr.h:499: error: 'Int64' has not been declared ./ImfXdr.h:499: error: redefinition of 'template<class S, class T> void Imf::Xdr::write(T&, int)' ./ImfXdr.h:387: error: 'template<class S, class T> void Imf::Xdr::write(T&, int)' previously declared here ./ImfXdr.h: In function 'void Imf::Xdr::write(T&, int)': ./ImfXdr.h:507: warning: right shift count >= width of type ./ImfXdr.h:508: warning: right shift count >= width of type ./ImfXdr.h:509: warning: right shift count >= width of type ./ImfXdr.h:510: warning: right shift count >= width of type ./ImfXdr.h: In function 'void Imf::Xdr::write(T&, double)': ./ImfXdr.h:540: error: 'Int64' does not name a type ./ImfXdr.h: At global scope: ./ImfXdr.h:781: error: 'Int64' has not been declared ./ImfXdr.h:781: error: redefinition of 'template<class S, class T> void Imf::Xdr::read(T&, int&)' ./ImfXdr.h:668: error: 'template<class S, class T> void Imf::Xdr::read(T&, int&)' previously declared here ./ImfXdr.h: In function 'void Imf::Xdr::read(T&, int&)': ./ImfXdr.h:787: error: 'Int64' was not declared in this scope ./ImfXdr.h:787: error: expected `)' before 'b' ./ImfXdr.h: In function 'void Imf::Xdr::read(T&, double&)': ./ImfXdr.h:827: error: 'Int64' does not name a type ./ImfXdr.h:829: error: 'Int64' was not declared in this scope ./ImfXdr.h:829: error: expected `)' before 'b' make[2]: *** [ImfAttribute.lo] Error 1 make[1]: *** [all] Error 2 make: *** [all-recursive] Error 1
Change History (8)
comment:1 Changed 17 years ago by jmroot (Joshua Root)
Owner: | changed from macports-tickets@… to waqar@… |
---|
comment:2 Changed 16 years ago by simon@…
Cc: | simon@… added |
---|
I had the same problem. I fixed it with the following steps.
port deactivate openexr port activate ilmbase port -f uninstall openexr port clean --all openexr port install openexr
Hope this helps,
Simon
comment:3 Changed 16 years ago by ryandesign (Ryan Carsten Schmidt)
Why "Activating openexr 1.4.0_0
"? openexr was updated to 1.6.1_0 in r35935. I don't have any problem with conflicting files when using the current version of openexr and ilmbase. Please sudo port selfupdate
and try again.
comment:4 Changed 16 years ago by ryandesign (Ryan Carsten Schmidt)
You may want to just remove your existing installed versions of openexr and ilmbase and reinstall.
sudo port uninstall openexr ilmbase sudo port selfupdate sudo port install openexr
comment:6 Changed 16 years ago by blb@…
Keywords: | openexr removed |
---|---|
Port: | openexr added |
Was the problem that a file in the older openexr was moved to ilmbase (and subsequently removed by the newer openexr)?
comment:7 Changed 16 years ago by jannesbolten@…
really, i don't remember. but thanks for looking into this...
comment:8 Changed 14 years ago by jmroot (Joshua Root)
Keywords: | ilmbase removed |
---|---|
Port: | ilmbase added |
Resolution: | → worksforme |
Status: | new → closed |
Summary: | openexr won't upgrade → openexr conflicts with but also depends on ilmbase |
Assigning to maintainer.