我尝试搜索这个,但是搜索“Linux lts”显然没有给我我想要的结果。
我是个菜鸟,正在笨手笨脚地解决一个过于复杂的问题。对于那些好奇的人,我正在尝试让 Xbox360 控制器与 Wine/Steam 上的 Stick of Truth 配合使用。我发现 koku-xinput-wine 应该可以做到这一点,但需要使用此解决方案才能让它工作。因此,我尝试将 libSDL2 编译为 32 位版本,同时仍安装 64 位版本。我按照上面链接中的命令操作:
mkdir build_i386
cd build_i386
cd SDL2-2.0.2
CFLAGS=-m32 CXXFLAGS=-m32 LDFLAGS=-m32 ../configure --build=i386-linux
CFLAGS=-m32 CXXFLAGS=-m32 LDFLAGS=-m32 make
在尝试编译 libSDL2 时,我得到了一大堆链接各种文件的大文本块。下面是我得到的最后一个文本块以及错误:
libtool: link: gcc -shared -fPIC -DPIC build/.libs/SDL.o build/.libs/SDL_assert.o build/.libs/SDL_error.o build/.libs/SDL_hints.o build/.libs/SDL_log.o build/.libs/SDL_atomic.o build/.libs/SDL_spinlock.o build/.libs/SDL_audio.o build/.libs/SDL_audiocvt.o build/.libs/SDL_audiodev.o build/.libs/SDL_audiotypecvt.o build/.libs/SDL_mixer.o build/.libs/SDL_wave.o build/.libs/SDL_cpuinfo.o build/.libs/SDL_dynapi.o build/.libs/SDL_clipboardevents.o build/.libs/SDL_dropevents.o build/.libs/SDL_events.o build/.libs/SDL_gesture.o build/.libs/SDL_keyboard.o build/.libs/SDL_mouse.o build/.libs/SDL_quit.o build/.libs/SDL_touch.o build/.libs/SDL_windowevents.o build/.libs/SDL_rwops.o build/.libs/SDL_haptic.o build/.libs/SDL_gamecontroller.o build/.libs/SDL_joystick.o build/.libs/e_atan2.o build/.libs/e_log.o build/.libs/e_pow.o build/.libs/e_rem_pio2.o build/.libs/e_sqrt.o build/.libs/k_cos.o build/.libs/k_rem_pio2.o build/.libs/k_sin.o build/.libs/s_atan.o build/.libs/s_copysign.o build/.libs/s_cos.o build/.libs/s_fabs.o build/.libs/s_floor.o build/.libs/s_scalbn.o build/.libs/s_sin.o build/.libs/SDL_power.o build/.libs/SDL_render.o build/.libs/SDL_yuv_mmx.o build/.libs/SDL_yuv_sw.o build/.libs/SDL_render_d3d.o build/.libs/SDL_render_gl.o build/.libs/SDL_shaders_gl.o build/.libs/SDL_render_gles.o build/.libs/SDL_render_gles2.o build/.libs/SDL_shaders_gles2.o build/.libs/SDL_render_psp.o build/.libs/SDL_blendfillrect.o build/.libs/SDL_blendline.o build/.libs/SDL_blendpoint.o build/.libs/SDL_drawline.o build/.libs/SDL_drawpoint.o build/.libs/SDL_render_sw.o build/.libs/SDL_rotate.o build/.libs/SDL_getenv.o build/.libs/SDL_iconv.o build/.libs/SDL_malloc.o build/.libs/SDL_qsort.o build/.libs/SDL_stdlib.o build/.libs/SDL_string.o build/.libs/SDL_thread.o build/.libs/SDL_timer.o build/.libs/SDL_RLEaccel.o build/.libs/SDL_blit.o build/.libs/SDL_blit_0.o build/.libs/SDL_blit_1.o build/.libs/SDL_blit_A.o build/.libs/SDL_blit_N.o build/.libs/SDL_blit_auto.o build/.libs/SDL_blit_copy.o build/.libs/SDL_blit_slow.o build/.libs/SDL_bmp.o build/.libs/SDL_clipboard.o build/.libs/SDL_egl.o build/.libs/SDL_fillrect.o build/.libs/SDL_pixels.o build/.libs/SDL_rect.o build/.libs/SDL_shape.o build/.libs/SDL_stretch.o build/.libs/SDL_surface.o build/.libs/SDL_video.o build/.libs/SDL_nullevents.o build/.libs/SDL_nullframebuffer.o build/.libs/SDL_nullvideo.o build/.libs/SDL_diskaudio.o build/.libs/SDL_dummyaudio.o build/.libs/SDL_sysloadso.o build/.libs/SDL_dspaudio.o build/.libs/SDL_pulseaudio.o build/.libs/SDL_systhread.o build/.libs/SDL_syssem.o build/.libs/SDL_sysmutex.o build/.libs/SDL_syscond.o build/.libs/SDL_systls.o build/.libs/SDL_sysjoystick.o build/.libs/SDL_syshaptic.o build/.libs/SDL_syspower.o build/.libs/SDL_sysfilesystem.o build/.libs/SDL_systimer.o build/.libs/SDL_udev.o build/.libs/SDL_evdev.o -lm -ldl -lts -lpthread -lrt -m32 -Wl,--no-undefined -Wl,-soname -Wl,libSDL2-2.0.so.0 -o build/.libs/libSDL2-2.0.so.0.2.0
/usr/bin/ld: cannot find -lts
collect2: error: ld returned 1 exit status
make: *** [build/libSDL2.la] Error 1
我在尝试编译时遇到过几次“找不到...”的错误,通过安装缺少的库,我很容易就修复了它。但这次,我搞不清楚我缺少了什么。有人知道这个库在哪个包里吗?我不知道如何安装它。
答案1
当您将选项传递-lfoo
给链接器时,它查找的库是libfoo
,而不是liblfoo
。而且由于您正在构建某些东西,您可能还需要开发标头,因此:libts-dev
。
sudo apt install libts-dev