ilia3101 / MLV-App

All in one MLV processing app.
https://mlv.app/
GNU General Public License v3.0
283 stars 29 forks source link

Need some help to compile on OSX 10.6.8 #76

Closed masc4ii closed 6 years ago

masc4ii commented 6 years ago

I try to compile MLV App for OSX 10.6.8 Snow Leopard using Qt 5.1.1... there are many incompatibilies. Many I can comment out (with feature loss) for now, but here I have a problem now: Compiler tells in many files, e.g. dualIso.c, dng.c, llrawproc.c,...: struct raw_info has no member named active_area Do you have an idea why?!

bouncyball-git commented 6 years ago

I'll take a look looks like something in raw.h

masc4ii commented 6 years ago

e.g. raw_info.pitch is known, but raw_info.active_area.x1 is not. Even the editor draws active_area black instead of darkred... no problem on my normal system.

bouncyball-git commented 6 years ago

`

int32_t black_level;            // autodetected
int32_t white_level;            // somewhere around 13000 - 16000, varies with camera, settings etc
                                // would be best to autodetect it, but we can't do this reliably yet
union                           // DNG JPEG info
{
    struct
    {
        int32_t x, y;           // DNG JPEG top left corner
        int32_t width, height;  // DNG JPEG size
    } jpeg;
    struct
    {
        int32_t origin[2];
        int32_t size[2];
    } crop;
};
union                       // DNG active sensor area (Y1, X1, Y2, X2)
{
    struct
    {
        int32_t y1, x1, y2, x2;
    } active_area;
    int32_t dng_active_area[4];
};
int32_t exposure_bias[2];       // DNG Exposure Bias (idk what's that)
int32_t cfa_pattern;            // stick to 0x02010100 (RGBG) if you can
int32_t calibration_illuminant1;
int32_t color_matrix1[18];      // DNG Color Matrix
int32_t dynamic_range;          // EV x100, from analyzing black level and noise (very close to DxO)

}; `

bouncyball-git commented 6 years ago

second union defines:

struct
    {
        int32_t y1, x1, y2, x2;
    } active_area;

or int32_t dng_active_area[4];

bouncyball-git commented 6 years ago

Looks like clang version issue?

bouncyball-git commented 6 years ago

Maybe that union or/or weirdness misleads it :)

masc4ii commented 6 years ago

Clang on 10.9+ has no problem. It seems Qt on 10.6.8 uses GCC only. Maybe here is the problem... So what could I do to avoid? Delete the union? Does someone use dng_active_area?

bouncyball-git commented 6 years ago

Try to delete dng_activ_area. In dng.c only active_area is used.

masc4ii commented 6 years ago

Yes that works. But now I get the same problem with crop/jpeg union in raw_info. Why does this compiler not understand an union?!

masc4ii commented 6 years ago

When I search in the net, I think I need a different compiler... nice :-(

bouncyball-git commented 6 years ago

As I predicted ;)

Edit: are you talking about GCC or CLANG?

masc4ii commented 6 years ago

Normaly I use Clang, here I have to use GCC. But I think I'll let it be. Would be nice to have the old MacBook in the next holiday and not the newer one... but that is too much work ;-)

bouncyball-git commented 6 years ago

I'm just curious - what version of GCC is that, which does not understand unions in the struct?

masc4ii commented 6 years ago

This version is included in XCode 3.2.6.

bouncyball-git commented 6 years ago

Try: xcrun gcc -v

It have to be gcc 4.2 or something like this.

masc4ii commented 6 years ago

gcc version 4.2.1 (Apple Inc. build 5666) (dot 3)