2014-04-06 23 views
7

Cosa può causare errori come questi? Ho aggiunto un progetto vuoto a Xcode, aggiunto/usr/local/lib nei Percorsi di ricerca dell'intestazione e aggiunto alcune librerie opencv. Costruzione ha dato questi errori:Errori in cstdint: nessun membro di nome xxx nello spazio dei nomi globale

UPDATE

Risulta stdint.h è infatti installato sul mio sistema. Sono in esecuzione su OS 10.9, quindi tipi come int_least16_t che xcode non riesce a trovare nello spazio dei nomi globale sembrano essere definiti.

typedef int16_t int_least16_t;.

find /Applications/Xcode.app -name stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/usr/include/c++/4.2.1/tr1/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/usr/include/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/include/c++/4.2.1/tr1/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/usr/include/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include/c++/4.2.1/tr1/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/include/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1/tr1/stdint.h 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/stdint.h 
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.1/include/stdint.h 
+0

Hai anche il supporto per C++ 11 abilitato? – lpapp

+0

Sì, la libreria standard C++ che sto usando è libC++ (libreria standard LLVM C++ con supporto C++ 11). Sto anche usando il linguaggio di programmazione C++ GNU ++ 11. Gli stessi errori si verificano quando si usa il dialetto, C++ 11. Mi sono assicurato che il compilatore che sto usando (Apple LLVM 5.1) stia effettivamente utilizzando queste opzioni. –

+0

Hai verificato che hai veramente 'stdint.h' installato nel tuo sistema e che quei tipi sono dichiarati al suo interno? – Amadeus

risposta

8

Grazie a @ N.m., Ho imparato che installare nulla direttamente sotto /usr/local è fondamentalmente rotto a causa della versione conseguente inferno. Probabilmente ho avuto qualche fonte di cattiveria in /usr/local/include, quindi quando ho sostituito usr/local/include con /usr/local/Cellar/opencv/2.4.8.2/include/opencv2 (perché ho installato opencv utilizzando brew) in Xcode > Build Settings > Header Search Paths (con True ricorsivo) tutto ha funzionato.

Problemi correlati