我如何链接已配置为具有不同前缀的Libevent
How can do I link libevent that has been configured to have a different prefix?
我正在尝试使用g 链接libevent,但是由于我在配置时将libevent的安装目录设置为libevent的安装目录,因此遇到了麻烦。要安装libevent,我下载了最新的来源,将其提取并在目录中运行以下命令
./configure -prefix =/home/home/tom/local-可脱落&& make进行安装
运行这些命令后,libevent成功安装到/home/tom/local文件夹。现在,要测试我可以使用libevent,我已经下载了libevent的示例rot13服务器,可以在以下底部找到:http://www.wangafu.net/~nickm/~nickm/libevent-book/01_intro.html
编译我运行以下命令:
g -i =/home/tom/local/incluce rot13server.cpp -l/home/home/tom/local/lib
但是我得到以下汇编错误:
/tmp/cctwjy4k.o:在功能`alloc_fd_state(event_base*,int)':libevent.cc :(.text 0x9b):未定义的引用`event_new''libevent.cc :(.text 0xec):对`event_new'的未定义引用libevent.cc :(.Text 0x11a):未定义的引用`event_free'/tmp/cctwjy4k.o:在函数`free_fd_state(fd_state*)':libevent.cc :(.Text 0x1b6):未定义的引用`event_free'libevent.cc :(.text 0x1c9):未定义的引用`event_free'/tmp/cctwjy4k.o:在函数`do_read(int,short,void*)':libevent.cc :(.Text 0x310):未定义的引用`event_add'/tmp/cctwjy4k.o:在函数`do_write(int,short,void*)':libevent.cc :(.text 0x4da):未定义的引用`event_del'/tmp/cctwjy4k.o:在函数`do_accept(int,short,void*)':libevent.cc :(.Text 0x564):未定义的引用`evutil_make_socket_nonblocking'libevent.cc :(.text 0x5da):对`event_add'的未定义引用/tmp/cctwjy4k.o:在函数`run()'中:libevent.cc :(.Text 0x5f3):未定义的引用`event_base_new'libevent.cc :(.text 0x63f):未定义的引用`evutil_make_socket_nonblocking'libevent.cc :(.Text 0x6d2):未定义的引用`event_new'libevent.cc :(.Text 0x6e7):未定义的引用`event_add'libevent.cc :(.text 0x6f3):未定义的引用`event_base_dispatch'Collect2:错误:LD返回1个退出状态
似乎编译器正在找到包含文件,但没有找到对象文件。
我还尝试配置没有 - 可见共享选项的libevent,然后导出/home/tom/local/lib到ld_library_path,但我仍然会在compile命令中遇到相同的错误:
g -i =/home/tom/local/include rot13server.cpp谁能告诉我我做错了什么?
谢谢
谁能告诉我我做错了什么?
大约所有东西。
-I=/home/tom/local/include
告诉GCC在=/home/tom/local/include
目录中查看,这不太可能存在。
您想要:
g++ -I/home/tom/local/include rot13server.cpp -c
g++ -L/home/tom/local/lib rot13server.o -levent -o rot13server
相关文章:
- 编译器如何在前缀和 postix 运算符之间进行区分?
- 查找带有 Anaconda cmake 前缀的 boost-python3
- 迭代器类的重载前缀增量运算符会引发分段错误
- 如何在友元函数中使用静态成员而不添加前缀 [类名]::
- 生成前缀位掩码
- 定义宏以将前缀 0x 添加到十六进制字符串文本
- CMake 错误 - 目标 foo INTERFACE_SOURCES属性包含在源目录中以前缀为前缀的路径
- 如何在自定义对象的<<运算符中添加自定义前缀
- 高效的字符串截断算法,按顺序删除相等的前缀和后缀
- 以C++显示单词的所有前缀
- QXmlStreamWriter,命名空间和前缀
- 为什么 C++ 程序员更喜欢前缀 ++,而 Java 程序员更喜欢后缀 ++?
- 为什么 libclang 会错误解析带有 .h 前缀C++标头?
- 目标是找到两个 c 字符串之间的公共前缀(必须使用特定的函数标头)
- 我需要在C++的两个字符串之间找到共同的前缀
- 更新 Visual Studio 2017,现在出现编译错误 C7510:"回调":使用依赖模板名称必须以 'template' 为前缀
- 将单个字符转换为 std::string 前缀 \x01
- 如果我有很多具有相似前缀的字符串,是否有理由从该前缀创建一个子字符串?
- 有没有办法在不使用命名空间 std 或前缀 std:: 的情况下引用 cout?
- 我如何链接已配置为具有不同前缀的Libevent