我在一个小型的开源pc计时器项目上工作。我想让我的客户在OS X上工作,但我甚至可以让它推出!我用qtcreator安装了xcode和qt5 sdk。当我编译时,我得到以下警告,但二进制编译:
/Users/kylehall/Documents/Libki/main.cpp:25: In file included from ../Libki/main.cpp:25:
/Users/kylehall/Documents/Libki/timerwindow.h:20: warning: 'TIMERWINDOW_H' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
#ifndef TIMERWINDOW_H
^~~~~~~~~~~~~
/Users/kylehall/Documents/Libki/timerwindow.h:21: 'LOGINWINDOW_H' is defined here; did you mean 'TIMERWINDOW_H'?
#define LOGINWINDOW_H
^~~~~~~~~~~~~
TIMERWINDOW_H
/Users/kylehall/Documents/Libki/timerwindow.cpp:21: In file included from ../Libki/timerwindow.cpp:21:
/Users/kylehall/Documents/Libki/timerwindow.h:20: warning: 'TIMERWINDOW_H' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
#ifndef TIMERWINDOW_H
^~~~~~~~~~~~~
/Users/kylehall/Documents/Libki/timerwindow.h:21: 'LOGINWINDOW_H' is defined here; did you mean 'TIMERWINDOW_H'?
#define LOGINWINDOW_H
^~~~~~~~~~~~~
TIMERWINDOW_H
/Users/kylehall/Documents/build-Libki-Desktop_Qt_5_2_1_clang_64bit-Debug/moc_timerwindow.cpp:9: In file included from moc_timerwindow.cpp:9:
/Users/kylehall/Documents/Libki/timerwindow.h:20: warning: 'TIMERWINDOW_H' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
#ifndef TIMERWINDOW_H
^~~~~~~~~~~~~
/Users/kylehall/Documents/Libki/timerwindow.h:21: 'LOGINWINDOW_H' is defined here; did you mean 'TIMERWINDOW_H'?
#define LOGINWINDOW_H
^~~~~~~~~~~~~
TIMERWINDOW_H
当我尝试运行二进制文件时,我收到以下错误:
dyld: Library not loaded: /work/build/______________________________PADDING______________________________/lib/QtPositioning.framework/Versions/5/QtPositioning
Referenced from: /Users/kylehall/Documents/build-Libki-Desktop_Qt_5_2_1_clang_64bit-Debug/libkiclient.app/Contents/MacOS/libkiclient
Reason: image not found
Debugging has finished
此时我甚至不知道从哪里开始这样一个神秘的错误。任何建议都会很棒!您可以抓取代码并尝试从https://bitbucket.org/libki-kms/libki-client/src
自行编译答案 0 :(得分:2)
似乎很清楚:
警告:'TIMERWINDOW_H'在这里用作标题保护,然后是#define的另一个宏[-Wheader-guard]
所以你必须拥有:
#ifndef TIMERWINDOW_H
#define LOGINWINDOW_H
复制并粘贴错误,我会说......