[ODBC-330] MSI not created when connectors is built from source - Windows Created: 2021-08-02 Updated: 2021-08-04 Resolved: 2021-08-04 |
|
| Status: | Closed |
| Project: | MariaDB Connector/ODBC |
| Component/s: | General |
| Affects Version/s: | 3.1.13 |
| Fix Version/s: | 3.1.14 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Anel Husakovic | Assignee: | Lawrin Novitsky |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Windows 10 |
||
| Description |
|
When following documentation https://mariadb.com/kb/en/building-mariadb-connectorodbc-from-source/
We are ending with no ".msi" files created.
Also when you add CONC_WITH_MSI=ON the same happens. When you run with cmake --build . --target MSI the error si:
Note you can create the logs to inspect with following command (note example is used for ".msi.vcxproj"project file , since there is no msi created() which doesn't make sense, but just as demo example how to create the logs) :
|
| Comments |
| Comment by Lawrin Novitsky [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
Do you have WiX Toolset installed? | ||||||||||||||||||||||||||
| Comment by Anel Husakovic [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
No I hadn't.
Can you share your way of creating msi packages? | ||||||||||||||||||||||||||
| Comment by Lawrin Novitsky [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
Is C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\WiX\v3.x where WiX binaries are located? | ||||||||||||||||||||||||||
| Comment by Lawrin Novitsky [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
I've added WiX Toolset as prerequisite to BUILD.md, and added look up of WiX binaries in given location. No error is still returned even if they are not found, but better messages and targets generation is skipped. Possibly error would be better. I'll give it another consideration. But so far I am closing the ticket. Feel free to re-open, if you think it's needed. | ||||||||||||||||||||||||||
| Comment by Anel Husakovic [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
It was extension for Visual Studio. Now I have installed the same as you did, so
Build : cmake --build . --config RelWithDebInfo
And stil no msi packages created. When I use env variable the result is the same:
| ||||||||||||||||||||||||||
| Comment by Anel Husakovic [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
Still even with new patch,I don't get msi package in wininstall. The patch silently remove error found from Wix candle, but not creating the package needed for installation. | ||||||||||||||||||||||||||
| Comment by Anel Husakovic [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
Can you please try yourself and let me know exact steps and where are msi located?
| ||||||||||||||||||||||||||
| Comment by Lawrin Novitsky [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
anel, add slash to the end of WIX_DIR after bin. Apparently that is expected - can be seen in the error message. Even though it's probably wrong. I'll fix that, amend the commit, and then clsose the ticket. | ||||||||||||||||||||||||||
| Comment by Lawrin Novitsky [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
Btw, didn't Wix installer added WIX to environment? I kinda guess, that installer does it. Not sure though | ||||||||||||||||||||||||||
| Comment by Anel Husakovic [ 2021-08-02 ] | ||||||||||||||||||||||||||
|
No it doesn't work for out of source builds:
Yes, WIX is adding system env variable (haven't noted that).
However escaping the slash at the end works:
And I finally got msi package:
Lawrin thanks for looking, it can be closed now and also I would recommend not to silently remove the error of wix. | ||||||||||||||||||||||||||
| Comment by Lawrin Novitsky [ 2021-08-04 ] | ||||||||||||||||||||||||||
|
Basically, -DWIX_DIR=... is not required, if WIX env variable is set Changed, that if WIX_DIR is specified, and wix is not found there, then cmake exits with error, otherwise, if wix binaries are not found, msi targets are not created. |