FreeBSD相当于unixodbc-dev

时间:2013-10-03 02:13:42

标签: erlang odbc freebsd unixodbc

我正在尝试在FreeBSD上编译Erlang,我想要包含odbc许可证。

在Ubuntu上,如果添加unixodbc-dev包,确保使用Erlang编译odbc,但是,我找不到与FreeBSD等效的包。

我已尝试安装unixODBC软件包,以及libodbc ++和libiodbc软件包。这些都不起作用。

我也尝试从unixodbc.org下载unixodbc并安装它,但无济于事。

所以,如果有一个我可以使用的软件包,或者我应该从源代码下载并编译,我到目前为止还没有找到解决方案。

有关需要安装哪些软件包或需要采取哪些步骤以确保ODBC使用Erlang进行编译的任何想法?

注意:这是使用FreeBSD 9.1-Release和Erlang R16B02

2 个答案:

答案 0 :(得分:0)

从查看包文件列表,unixODBC应该是正确的包。

从编译Erlang的位置查看lib/odbc/config.log内部。我说(在Debian上):

configure:4913: checking for odbc in standard locations
configure:4939: result: -L/usr/lib

“标准位置”为/usr/local/odbc /usr/local /usr/odbc /usr /opt/local/pgm/odbc /usr/local/pgm/odbc,配置脚本在其中一个目录下查找include/sql.h。如果您的安装在其他目录中,请尝试为配置脚本指定--with-odbc=/some/path

答案 1 :(得分:0)

Erlang可以使用unixODBC或libiodbc。

从端口安装Erlang时应该可以正常工作。首先,确保您的端口树是最新的,例如与portsnap

登录或su到root。然后转到/usr/ports/lang/erlang,然后运行make config。然后,您应该看到以下屏幕:

       ┌─────────────────────────── erlang-15.b.03.1_1,3 ─────────────────────────────┐              
       │ ┌──────────────────────────────────────────────────────────────────────────┐ │              
       │ │+[x] DOCS      Build and/or install documentation                         │ │              
       │ │+[ ] DTRACE    Enable DTrace support (experimental)                       │ │              
       │ │+[ ] GCC       Use current GCC                                            │ │              
       │ │+[ ] GS        Enable GS application (deprecated)                         │ │              
       │ │+[ ] HIPE      Build native HiPE compiler                                 │ │              
       │ │+[ ] JAVA      Java platform support                                      │ │              
       │ │+[x] KQUEUE    Enable Kernel Poll (kqueue) support                        │ │              
       │ │+[ ] ODBC      ODBC backend                                               │ │              
       │ │+[x] OPENSSL   SSL/TLS support via OpenSSL                                │ │              
       │ │+[x] SCTP      Enable SCTP support                                        │ │              
       │ │+[x] SMP       Enable SMP support                                         │ │              
       │ │+[x] THREADS   Threading support                                          │ │              
       │ │+[ ] WX        Enable WX application                                      │ │              
       │ │─────────────────────────────── ODBC backend ─────────────────────────────│ │              
       │ │+( ) IODBC     ODBC backend via iODBC                                     │ │              
       │ │+( ) UNIXODBC  ODBC backend via unixODBC                                  │ │              
       │ └──────────────────────────────────────────────────────────────────────────┘ │              
       ├──────────────────────────────────────────────────────────────────────────────┤              
       │                       <  OK  >            <Cancel>                           │              
       └──────────────────────────────────────────────────────────────────────────────┘              

选择IOBDC或UNIXODBC选项。然后以root身份运行命令make install clean。这应该构建和安装Erlang及其所有依赖项。

编辑:如果您不想使用端口,请确保在编译erlang之前安装了databases/unixODBCdatabases/libiodbc,然后使用{{1使用erlang的--with-odbc选项,它应该可以正常工作。这就是港口的作用。