Compiling under Linux#2
Conversation
|
Fixing the proejct file name seems ok, and the clean-target is greate! But why needs SDK compiled before Compiler? This cannot work, because SDK needs the compiler already compiled, because JsClr needs it. What i found out: On first compilation, there is an error "v4.0.AssemblyAttribute.cs" is missing. When you recompile it, it will be successfull. But he "next" has then this problem. So when you repeate it 4 times, all is compiled. The "v4.0.AssemblyAttribute.cs" seems to be temporarly generated, but sharpkit compiler fill not find it. Strange issue. Maybe someone has an idea. When you switching the SDK/Compiler order to the original order, than i can pull your branch directly. |
|
I've changed back the SDK/Compiler order. But with this original order I have to run make 3 times for the compilation to work, compared to the other working the first time after a clean, though there might be other files affected not cleared by clean. I would still argue that since the SDK does compile on its own there should be no problem for it to be compiled before Compiler. In my case this is the order that makes "make clean && make" work in one go without errors. |
|
Fact is, the SDK requies the compiler (at least JsClr project). So why does this work in your case? When SKC cannot find the the compiler at Compiler/skc/bin/skc5.exe, the global one at $(MSBuildToolsPath)/SharpKit/5/skc5.exe will be used (check the common.targets file at SDK/Frameworks). It would still be interesting to find out why skc5.exe has a problem parsing the project file (withthe help of nrefactory), there is a mistiery "v4.0.AssemblyAttribute.cs" file. It seems this is a temporary file. I'm not sure if this is a bug and where is the bug exactly. |
Fixed project filename in CSharp.Tasks
Switched places between SDK and Compiler because it failed to compile for some unknown reason otherwise.
Added simple clean target