# pkg-static: Unable to access file



## notarobot (Dec 25, 2020)

I have the exact same problem as in this thread but I can't find any line in the Makefile that points to the port being installed. the port's name is lmms and I can see the lmms binary file in /usr/local/bin. this is the error:

```
pkg-static: Unable to access file /usr/ports/audio/lmms/work/stage/usr/local/share/bash-completion/completions/lmms:No such file or directory
```

here's the Makefile: https://ghostbin.com/paste/s9zYc

This is the part that I think is relevant: 

```
post-patch:
    @${REINPLACE_CMD} 's|/usr|${LOCALBASE}|g' ${WRKSRC}/src/core/ConfigManager.cpp
    @${REINPLACE_CMD} 's|/usr/local|${LOCALBASE}|g' \
        ${WRKSRC}/src/core/LadspaManager.cpp
    @${REINPLACE_CMD} -e 's/lib64/lib/' \
        ${WRKSRC}/cmake/modules/DetectMachine.cmake
    @${REINPLACE_CMD} 's,share/man/,man/,g' ${WRKSRC}/src/CMakeLists.txt

post-patch-OSS-off:
    @${REINPLACE_CMD} \
        -e 's|SET(LMMS_HAVE_OSS TRUE)|SET(LMMS_HAVE_OSS FALSE)|; \
            s|SET(STATUS_OSS "OK")|SET(STATUS_OSS "<disabled>")|' \
        ${WRKSRC}/CMakeLists.txt

post-install:
    @${RLN} ${STAGEDIR}${DATADIR}/themes/default/icon.png \
        ${STAGEDIR}${PREFIX}/share/pixmaps/lmms.png
```


----------



## Alexander88207 (Dec 25, 2020)

In the pkg-plist the file is listed but in reality it does not exist. I do not know this port now, but the quick hammer method would be to remove the missing file from pkg-plist.


----------



## notarobot (Dec 25, 2020)

thanks for the reply, but like I said I can see the binary lmms file in /usr/ports/audio/lmms/work/stage/usr/local/bin/lmms and the guy from the other thread says the same thing about his port. Or is that not what he's referring to?


----------



## Alexander88207 (Dec 25, 2020)

What about to generate a new pkg-plist?

`make makeplist > pkg-plist`


----------



## notarobot (Dec 25, 2020)

That gives the same list. it starts with bin/lmms


----------



## Alexander88207 (Dec 25, 2020)

Strange. But if it sits in /usr/local/bin in the pkg-plist. How can you get /usr/local/share/bash-completion/completions/lmms:No such file or directory ?


----------



## SirDice (Dec 25, 2020)

These are bash completion files you can use with the executable when running it from the bash shell (so you can hit <TAB> and get the right options, etc.). Apparently those are optional and it looks like the pkg-plist expects them to be there. I suspect the upstream source looks if bash is installed or not. If it's installed it also creates these completion files. That's an error in the port. It should always create them or not, automatic detection shouldn't be relied on if you build packages from a clean environment because they can result in package errors like this.


----------

