c++ - Docker内的FreeTds抛出未知符号异常
问题描述
我正在尝试在 docker 中运行 CGI 网站。该软件是用 C++ 编写的,使用 FreeTDS-dev 包连接到 mssql 数据库。到目前为止,它应该唯一的问题是:如果我尝试在 docker 内部编译或运行它,我会收到以下异常:
undefined symbol: dbprcollen
现在我知道确切的代码行在哪里,并且我也知道这个特定的函数应该在 freetds-dev 包中。所以我已经将这个包包含在 dockerfile 中,但它仍然无法工作。有谁知道我错过了什么?
这是我的码头文件:
FROM php:apache
COPY ./html/ /var/www/html/
COPY ./work.cgi /var/www/html/work.cgi
RUN chmod +x /var/www/html/work.cgi
RUN a2enmod rewrite
RUN echo "<Directory /var/www/html/>\n\
AllowOverride all\n\
Options +ExecCGI\n\
AddHandler cgi-script .cgi\n\
</Directory>" >> /etc/apache2/apache2.conf
RUN ln -s /etc/apache2/mods-available/cgi.load /etc/apache2/mods-enabled/cgi.load
RUN apt update -y
RUN apt upgrade -y
RUN apt install build-essential -y
RUN apt install binutils -y
RUN apt install libcgicc-dev -y
RUN apt install freetds-bin -y
RUN apt install freetds-dev -y
RUN apt update --fix-missing -y
RUN apt upgrade -y
解决方案
推荐阅读
- c# - 如何在路径中创建每个不存在的文件夹?
- python-3.x - 如何正确配置教练预设
- android - 如何使用 ScrollView 设置布局?
- firebase - 以“用户名”作为提供者的 Firebase 身份验证
- vb.net - 无法编译此 Visual Basic 程序
- python - DateTimeIndex.to_period 为许多偏移别名引发 ValueError 异常
- android - Android自定义通知声音不适用于Redmi和Vivo等中国手机
- java - 线程。停止服务器
- java - Kurento 生成的 MP4 文件无法在 Safari 浏览器上播放
- java - 来自 maven 依赖项的 ClassNotFoundException 但类存在并且在类路径中