Nightly R4375 build broken
Win 7 32bit. The nightly R4375 build is broken. Compilation error around 73% in omrview.cpp (and style.h).
[ 73%] Building CXX object omr/CMakeFiles/omr.dir/omrview.cpp.obj
D:\MSSOURCE\trunk\mscore\omr\omrview.cpp: In member function 'void OmrView::setOmr(Omr*)':
D:\MSSOURCE\trunk\mscore\omr\omrview.cpp:73: error: invalid use of incomplete type 'struct PageFormat'
D:\MSSOURCE\trunk\mscore\libmscore/style.h:29: error: forward declaration of 'struct PageFormat'
D:\MSSOURCE\trunk\mscore\omr\omrview.cpp: In member function 'virtual void OmrView::paintEvent(QPaintEvent*)':
D:\MSSOURCE\trunk\mscore\omr\omrview.cpp:163: error: invalid use of incomplete type 'const struct PageFormat'
D:\MSSOURCE\trunk\mscore\libmscore/style.h:29: error: forward declaration of 'const struct PageFormat'
mingw32-make[3]: *** [omr/CMakeFiles/omr.dir/omrview.cpp.obj] Error 1
Comments
As stated by Werner on the mailing list :
"The latest revision in the MuseScore svn suppository contains some big
changes. In order to better modularize the code i startet separating the gui
independent parts into the new library "libmscore".
This is work in progress and until finished some functionality is commented
out.
/Werner"
In reply to As stated by Werner on the by [DELETED] 5
I am somewhat aware of the coding changes going on, as I watch the enormous code re-alignment when doing an SVN update. But I am quite sure that Werner would not intentionally leave the trunk code in a broken state unless necessary.
My attempts to re-checkout the code (and even updating last night) in order to do a clean compile are mostly failing as something seem to be very wrong with Sourceforge right now.
It compiles for me. I tried with a clean checkout. Also looking at omrview.cpp: struct PageFormat is defined in the included page.h file.
In reply to svn should at least compile by [DELETED] 3
I am attempting a clean checkout to a new folder, but Sourceforge must be having a problem, at least connecting from my area of Canada. Communications last night and still this morning to the SVN server is intermittent. I keep getting "could not connecto to server..." from SVN. Even the MS project page (http://sourceforge.net/projects/mscore/develop) is having troubles.
But even with a clean checkout, I still suspect the 4375 had an issue under Windows. I've not had "SVN Update" fail yet. Now we are up to 4377, so I'm hoping the checkout will complete, compile OK, and I can test some more.
In reply to Checkout by schepers
I finally managed to checkout new source folders for both the branch and trunk (now at 4377), but the trunk compilation still fails as outlined in my first post. Win7 32 bit, Qt 4.7.3. The branch compiles OK.
In reply to svn should at least compile by [DELETED] 3
Well, I've tried everything I could think of to remedy the failing compile (now at R4382), but I doubt the problem is on my end. My setup didn't change suddenly overnight, and only failed when I SVN'd 4377+. I've tried many different things to fix this:
1. Admin and standard user rights for the CMD prompt to launch the compile (no script)
2. Running my Win build script with/without admin rights
3. Putting the app paths directly into my PATH variable rather than added through the script
4. Using Qt 4.7.0
and variations thereof. I have no idea why the nightly that Dave provides compiled OK because the r4377 download is available. The error, what little I know of C++, seems to indicate something to do with forward declarations, but I only know C and I really don't understand OOP yet so troubleshooting this is out of my league.
Any ideas?
In reply to Still won't compile R4382 by schepers
You could change line 43 in
mscore/CMakeLists.txt
toset(OMR FALSE)
. It compiles for me with this flag. My guess is that the compiler on windows is more strict than on linux.In reply to You could change line 43 in by [DELETED] 5
I will try that, but you also had/have problems without changing that line? I still wonder how Dave managed to compile as I doubt he has Qt 4.8 and I tried the two common versions of Qt to eliminate that as a possibility.
In reply to OMR by schepers
Yes. It compiles without OMR and it's possible that David disabled it. I compiled with Qt4.7. Giving the error, it's a problem with the compiler... I didn't take the time to debug it yet. MuseScore 1.1 is my priority.
In reply to Still won't compile R4382 by schepers
This is the failure I'm getting on a MacBook Pro running OS X 10.6.7:
The following build commands failed:
mscore:
CompileC /Users/dev/musescore/mscore/build/mscore/mscore.build/Release/mscore.build/Objects-normal/i386/exportmp3.o /Users/dev/musescore/mscore/mscore/mscore/exportmp3.cpp normal i386 c++ com.apple.compilers.gcc.4_2
(1 failure)
make: *** [release] Error 1
Is this related to OMR?
In reply to R4382 won't compile by cwhysall
this looks like you didn't include the lame.h file. But I can't read the entire error either.
In reply to No, by schepers
The whole error is shown there unless you want the preceding lines. What would I have to do to include the lame.h file? Shouldn't that be picked up automatically in the build?
In reply to lame.h by cwhysall
on my part as I am only familiar with the Windows build. I looked over the Mac build docs and there's no mention of any Lame components so I have no idea. Did this error just come up after a specific SVN update?
In reply to lame.h by cwhysall
The build instruction for Mac are not up to date.... You do need lame.h. You can get it with
port install lame
I guess.In reply to The build instruction for Mac by [DELETED] 5
Thank you, Nicholas, that was it. Built correctly once lame installed. Had to bring all my ports up-to-date though!