Skip to content

ODBC Linux rpm installer support - #171

Merged
alinaliBQ merged 2 commits into
apache-odbcfrom
linux-rpm-installer
Apr 17, 2026
Merged

ODBC Linux rpm installer support#171
alinaliBQ merged 2 commits into
apache-odbcfrom
linux-rpm-installer

Conversation

@alinaliBQ

@alinaliBQ alinaliBQ commented Apr 15, 2026

Copy link
Copy Markdown

Add support for Linux ODBC .rpm installer.
In install_odbc.sh, changed to use awk on unix platforms as sed doesn't work well on Linux.
Add installer readme section.
Add ARROW_FLIGHT_SQL_ODBC_INSTALLER option.

The .rpm installer installs:

root@84db9b9349a5:/usr/lib64/arrow-odbc# tree
.
|-- doc
|   |-- Connection-Options.md
|   `-- LICENSE.txt
`-- lib
    |-- libarrow_flight_sql_odbc.so -> libarrow_flight_sql_odbc.so.2400
    |-- libarrow_flight_sql_odbc.so.2400 -> libarrow_flight_sql_odbc.so.2400.0.0
    `-- libarrow_flight_sql_odbc.so.2400.0.0

3 directories, 5 files

if ! grep -q "^${DRIVER_NAME}=" "$USER_ODBCINST_FILE"; then
if ! grep -q "^${DRIVER_NAME}=" "$SYSTEM_ODBCINST_FILE"; then
# Driver entry does not exist, add under [ODBC Drivers]
sed -i '' "/^\[ODBC Drivers\]/a\\

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sed doesn't work well on Linux, changed to awk which works on Linux and macOS. awk is also already used by install_odbc_ini.sh script.

@alinaliBQ
alinaliBQ marked this pull request as ready for review April 16, 2026 18:48
@alinaliBQ
alinaliBQ force-pushed the linux-rpm-installer branch 2 times, most recently from ab8c39e to c74a7b2 Compare April 17, 2026 21:40
Revert "TEMP - Disable non-ODBC items"

This reverts commit efa8d84.

fix formatting

Remove todos

ODBC rpm Installer wrap up

* installing `rpm` package fixed the `cpack` command issue
* Fix cpack command on CI

(merge into last commit when ready) Change to use `awk` so script works on both platforms

Comment out `find` and `tree` steps

Change build path to be under /arrow

Since docker is mounted, changing build path to be in `/arrow` will allow host machine to access docker build contents

TEMP - Disable non-ODBC items

Add commands to find build folder

Attempt to build RPM installer

* not sure if `/build/cpp` can be accessed outside of docker. Hopefully it should.
* add `rpm` dependency install

Indicate RPM in workflow run

Add rpm `postinstall` (not tested)

Remove merge conflict code
@alinaliBQ
alinaliBQ force-pushed the linux-rpm-installer branch from c74a7b2 to 88e6a82 Compare April 17, 2026 22:47
@alinaliBQ
alinaliBQ merged commit b6073c6 into apache-odbc Apr 17, 2026
12 of 25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants