UltraStar-Deluxe / USDX

The free and open source karaoke singing game UltraStar Deluxe, inspired by Sony SingStarâ„¢
https://usdx.eu
GNU General Public License v2.0
812 stars 160 forks source link

Can not build USDX on Ubuntu 14.04 #188

Open zeroel opened 7 years ago

zeroel commented 7 years ago

Hi, Please help! I'm trying to build your USDX on my Ubuntu 14.04. But got error:

/usr/bin/ld: /usr/local/lib/libavformat.a(matroskaenc.o): undefined reference to symbol 'fmod@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line

Please help me to fix them

basisbit commented 7 years ago

please provide output from configure script. most likely your system is using libav instead of ffmpeg and thus is not supported.

zeroel commented 7 years ago

Hi, This is my configure log:

checking whether make sets $(MAKE)... yes
checking whether ln -s works... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for a BSD-compatible install... /usr/bin/install -c
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for fpc... fpc
checking for fpcmake... fpcmake
checking version of fpc... [3.0.0]
checking whether the Free Pascal Compiler works... yes
checking whether the Free Pascal Compiler can link... yes
checking whether FPC supports -k"-z noexecstack"... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for ranlib... ranlib
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for libpng12... yes
checking version of libpng... [1.2.50]
checking for sdl2... yes (-L/usr/local/lib)
checking for SDL2_image... yes (-L/usr/local/lib)
checking for freetype2... yes
checking for sqlite3... yes
checking for lua5.3... no
checking for lua5.2... no
checking for lua5.1... yes
checking version of lua... [5.1.5]
checking for libavcodec... yes (-L/usr/local/lib)
checking version of libavcodec... [56.60.100]
checking for avcodec_decode_audio in -lavcodec... no
checking for avcodec_decode_audio2 in -lavcodec... no
checking for img_convert in -lavcodec... no
checking for libavformat... yes (-L/usr/local/lib)
checking version of libavformat... [56.40.101]
checking for libavutil... yes (-L/usr/local/lib)
checking version of libavutil... [54.31.100]
checking version of ffmpeg... [2.8]
checking for libswscale... yes (-L/usr/local/lib)
checking version of libswscale... [3.1.101]
checking for libprojectM >= 0.98... no
checking for portaudio-2.0... yes (-L/usr/local/lib)
checking version of portaudio... [19]
checking for libpcre... yes
checking version of libpcre... [8.31]
checking for portmixer... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating src/config-linux.inc
configure:

!!!
!!! Configuration of ultrastardx 1.1 done!

Please help!

AlexanderS commented 7 years ago

Seems like you build a custom ffmpeg version by yourself (it's in /usr/local). Are you sure, that you used the current libraries for this ffmpeg or did you build this version some time ago?

zeroel commented 7 years ago

Thank for your quick reply! Firstly, I've installed ffmpeg via apt-get: sudo apt-get install libav-tools (I'm on Ubuntu 14.04) But USDX required ffmpeg 2.8, got it from configuration's console Then, I tried to install ffmpeg by downloading: https://ffmpeg.org/releases/ffmpeg-2.8.10.tar.gz configure, make and make install.

AlexanderS commented 7 years ago

Did you specify custom LDFLAGS or something like this? -lm seems to be missing or at the wrong position in the flags. Can you please show the complete command line of your ./configure and make call for usdx and any relevant environment variables passed to make.

zeroel commented 7 years ago

Hi,

I tried to build USDX with no environment variables. Just ./configure sudo make and make install. The sudo make log in more detail:

/home/namna/Downloads/USDX/src/media/UAudioPlayback_SoftMixer.pas(1158,50) Warning: Constructing a class "TGenericVoiceStream" with abstract method "ReadData"
Compiling media/UAudioPlayback_SDL.pas
Compiling media/UAudioInput_Portaudio.pas
Compiling media/UAudioDecoder_FFmpeg.pas
/home/namna/Downloads/USDX/src/media/UAudioDecoder_FFmpeg.pas(283,3) Note: Local variable "TestFrame" not used
/home/namna/Downloads/USDX/src/media/UAudioDecoder_FFmpeg.pas(441,3) Note: Local variable "ThreadResult" not used
/home/namna/Downloads/USDX/src/media/UAudioDecoder_FFmpeg.pas(1026,27) Warning: Symbol "avcodec_decode_audio3" is deprecated
Compiling media/UMedia_dummy.pas
Compiling menu/UMenuStaticList.pas
Linking ../game/ultrastardx
/usr/bin/ld: warning: ../game/link.res contains output sections; did you forget -T?
/usr/bin/ld: /usr/local/lib/libavformat.a(matroskaenc.o): undefined reference to symbol 'fmod@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
Error: Error while linking
Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/local/bin/ppcx64 returned an error exitcode
make[1]: *** [../game/ultrastardx] Error 1
make[1]: Leaving directory `/home/namna/Downloads/USDX/src'
make: *** [all] Error 2

After that, I also tried to export LDFLAGS="-lm" but still get error:

/home/namna/Downloads/ffmpeg-2.8.10/libavformat/tee.c:112: undefined reference to `av_bitstream_filter_init'
/usr/local/lib/libavformat.a(tee.o): In function `close_slaves':
/home/namna/Downloads/ffmpeg-2.8.10/libavformat/tee.c:301: undefined reference to `av_bitstream_filter_close'
/usr/local/lib/libavformat.a(ac3dec.o): In function `ac3_eac3_probe':
/home/namna/Downloads/ffmpeg-2.8.10/libavformat/ac3dec.c:58: undefined reference to `avpriv_ac3_parse_header2'
/usr/local/lib/libavformat.a(adtsenc.o): In function `adts_decode_extradata':
/home/namna/Downloads/ffmpeg-2.8.10/libavformat/adtsenc.c:56: undefined reference to `avpriv_mpeg4audio_get_config'
/home/namna/Downloads/ffmpeg-2.8.10/libavformat/adtsenc.c:88: undefined reference to `avpriv_copy_pce_data'
Error: Error while linking
Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/local/bin/ppcx64 returned an error exitcode
make[1]: *** [../game/ultrastardx] Error 1
make[1]: Leaving directory `/home/namna/Downloads/USDX/src'
make: *** [all] Error 2
AlexanderS commented 7 years ago

First:

sudo make

You do not need sudo there (and you should only use it, if you really need it). Only for make install sudo might be necessary if you want to install the game into a system wide directory.

The problem with the second approach is, that if you set LDFLAGS you overwrite the detections made by configure and the compiler cannot find the ffmpeg libs anymore. Could you please try:

PFLAGS_EXTRA="-lm" ./configure
make
zeroel commented 7 years ago

Hi, I tried to configure and make as your help, but still error. Please help!

  1. Configuration log:
    
    namna@namna-H81M-DS2:~/Downloads/USDX$ PFLAGS_EXTRA="-lm" ./configure
    checking whether make sets $(MAKE)... yes
    checking whether ln -s works... yes
    checking for a thread-safe mkdir -p... /bin/mkdir -p
    checking for a BSD-compatible install... /usr/bin/install -c
    checking for a sed that does not truncate output... /bin/sed
    checking for grep that handles long lines and -e... /bin/grep
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking for fpc... fpc
    checking for fpcmake... fpcmake
    checking version of fpc... [3.0.0]
    checking whether the Free Pascal Compiler works... yes
    checking whether the Free Pascal Compiler can link... yes
    checking whether FPC supports -k"-z noexecstack"... yes
    checking for gcc... gcc
    checking whether the C compiler works... yes
    checking for C compiler default output file name... a.out
    checking for suffix of executables... 
    checking whether we are cross compiling... no
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether gcc accepts -g... yes
    checking for gcc option to accept ISO C89... none needed
    checking for g++... g++
    checking whether we are using the GNU C++ compiler... yes
    checking whether g++ accepts -g... yes
    checking for ranlib... ranlib
    checking for pkg-config... /usr/bin/pkg-config
    checking pkg-config is at least version 0.9.0... yes
    checking for libpng12... yes
    checking version of libpng... [1.2.50]
    checking for sdl2... yes (-L/usr/local/lib)
    checking for SDL2_image... yes (-L/usr/local/lib)
    checking for freetype2... yes
    checking for sqlite3... yes
    checking for lua5.3... no
    checking for lua5.2... no
    checking for lua5.1... yes
    checking version of lua... [5.1.5]
    checking for libavcodec... yes (-L/usr/local/lib)
    checking version of libavcodec... [56.60.100]
    checking for avcodec_decode_audio in -lavcodec... no
    checking for avcodec_decode_audio2 in -lavcodec... no
    checking for img_convert in -lavcodec... no
    checking for libavformat... yes (-L/usr/local/lib)
    checking version of libavformat... [56.40.101]
    checking for libavutil... yes (-L/usr/local/lib)
    checking version of libavutil... [54.31.100]
    checking version of ffmpeg... [2.8]
    checking for libswscale... yes (-L/usr/local/lib)
    checking version of libswscale... [3.1.101]
    checking for libprojectM >= 0.98... no
    checking for portaudio-2.0... yes (-L/usr/local/lib)
    checking version of portaudio... [19]
    checking for libpcre... yes
    checking version of libpcre... [8.31]
    checking for portmixer... no
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating src/Makefile
    config.status: creating src/config-linux.inc
    configure:

!!! !!! Configuration of ultrastardx 1.1 done! !!! !!! Type "make" to compile and !!! "make install" to install it afterwards. !!!

2. Make

namna@namna-H81M-DS2:~/Downloads/USDX$ make make -C ./src all make[1]: Entering directory `/home/namna/Downloads/USDX/src'

Changed files: ultrastardx.dpr switches.inc screens/UScreenOptionsRecord.pas screens/UScreenLoading.pas screens/controllers/UScreenSingController.pas screens/UScreenJukeboxPlaylist.pas screens/UScreenOptionsInput.pas screens/UScreenOptionsGame.pas screens/UScreenAbout.pas screens/UScreenPartyTournamentOptions.pas screens/UScreenPartyPlayer.pas screens/UScreenOptionsLyrics.pas screens/UScreenSongJumpto.pas screens/UScreenPartyTournamentPlayer.pas screens/UScreenOptionsThemes.pas screens/UScreenEditSub.pas screens/UScreenPartyNewRound.pas screens/UScreenStatMain.pas screens/UScreenOptions.pas screens/UScreenName.pas screens/UScreenStatDetail.pas screens/UScreenPartyRounds.pas screens/UScreenMain.pas screens/UScreenOptionsAdvanced.pas screens/UScreenEditConvert.pas screens/UScreenCredits.pas screens/UScreenJukeboxOptions.pas screens/UScreenSong.pas screens/UScreenPopup.pas screens/UScreenPartyTournamentWin.pas screens/UScreenTop5.pas screens/UScreenPartyTournamentRounds.pas screens/UScreenOptionsWebcam.pas screens/UScreenScore.pas screens/UScreenJukebox.pas screens/UScreenPartyOptions.pas screens/UScreenOptionsSound.pas screens/UScreenOptionsNetwork.pas screens/UScreenEditHeader.pas screens/UScreenOptionsGraphics.pas screens/UScreenSongMenu.pas screens/UScreenLevel.pas screens/UScreenPartyWin.pas screens/UScreenPartyScore.pas screens/UScreenEdit.pas screens/UScreenOpen.pas screens/views/UScreenSingView.pas screens/UScreenOptionsJukebox.pas media/UMedia_dummy.pas media/UAudioInput_Bass.pas media/UAudioPlayback_SoftMixer.pas media/UAudioCore_Bass.pas media/UAudioCore_Portaudio.pas media/UVisualizer.pas media/UAudioPlayback_Portaudio.pas media/UAudioPlayback_Bass.pas media/UMediaCore_SDL.pas media/UAudioConverter.pas media/UAudioPlaybackBase.pas media/UAudioInput_Portaudio.pas media/UAudioDecoder_FFmpeg.pas media/UVideo.pas media/UAudioPlayback_SDL.pas media/UAudioDecoder_Bass.pas media/UMediaCore_FFmpeg.pas config-win.inc lua/ULuaParty.pas lua/ULuaUsdx.pas lua/ULuaLog.pas lua/ULuaScreenSing.pas lua/ULuaUtils.pas lua/ULuaTexture.pas lua/ULuaCore.pas lua/ULuaGl.pas lua/UHookableEvent.pas lua/ULuaTextGL.pas config-darwin.inc base/USong.pas base/UCommon.pas base/UMusic.pas base/UParty.pas base/UGraphic.pas base/TextGL.pas base/UPartyTournament.pas base/UJoystick.pas base/UDraw.pas base/ULanguage.pas base/UPlatform.pas base/UFilesystem.pas base/ULyrics.pas base/UDLLManager.pas base/UTextEncoding.pas base/URingBuffer.pas base/UPlatformWindows.pas base/UFont.pas base/UTexture.pas base/UTime.pas base/UCatCovers.pas base/USingScores.pas base/USingNotes.pas base/UBeatTimer.pas base/UWebcam.pas base/USkins.pas base/UGraphicClasses.pas base/UCovers.pas base/USongs.pas base/UEditorLyrics.pas base/UConfig.pas base/UAvatars.pas base/UPath.pas base/UThemes.pas base/UPlaylist.pas base/UPathUtils.pas base/UXMLSong.pas base/UFiles.pas base/UPlatformMacOSX.pas base/UIni.pas base/UPlatformLinux.pas base/UCommandLine.pas base/UNote.pas base/ULog.pas base/UImage.pas base/URecord.pas base/UDataBase.pas base/uunicodestringhelper.pas base/UUnicodeUtils.pas base/UMain.pas menu/UMenu.pas menu/UMenuBackgroundNone.pas menu/UDisplay.pas menu/UMenuStaticList.pas menu/UMenuEqualizer.pas menu/UMenuBackgroundVideo.pas menu/UMenuBackgroundColor.pas menu/UMenuBackground.pas menu/UMenuStatic.pas menu/UMenuSelectSlide.pas menu/UMenuBackgroundTexture.pas menu/UMenuButton.pas menu/UMenuText.pas menu/UDrawTexture.pas menu/UMenuInteract.pas menu/UMenuBackgroundFade.pas menu/UMenuButtonCollection.pas config-linux.inc lib/FreeImage/FreeBitmap.pas lib/FreeImage/FreeImage.pas lib/Lua/ULua.pas lib/ffmpeg-2.5/libavutil/cpu.pas lib/ffmpeg-2.5/libavutil/pixfmt.pas lib/ffmpeg-2.5/libavutil/samplefmt.pas lib/ffmpeg-2.5/libavutil/dict.pas lib/ffmpeg-2.5/libavutil/log.pas lib/ffmpeg-2.5/libavutil/opt.pas lib/ffmpeg-2.5/libavutil/buffer.pas lib/ffmpeg-2.5/libavutil/frame.pas lib/ffmpeg-2.5/libavutil/mathematics.pas lib/ffmpeg-2.5/libavutil/mem.pas lib/ffmpeg-2.5/libavutil/error.pas lib/ffmpeg-2.5/avcodec.pas lib/ffmpeg-2.5/swscale.pas lib/ffmpeg-2.5/swresample.pas lib/ffmpeg-2.5/rational.pas lib/ffmpeg-2.5/avutil.pas lib/ffmpeg-2.5/avio.pas lib/ffmpeg-2.5/avformat.pas lib/ffmpeg-2.5/libavcodec/audioconvert.pas lib/ffmpeg-2.5/ff_api-defines.inc lib/dglOpenGL/dglOpenGL.pas lib/ffmpeg-1.1/libavutil/cpu.pas lib/ffmpeg-1.1/libavutil/pixfmt.pas lib/ffmpeg-1.1/libavutil/samplefmt.pas lib/ffmpeg-1.1/libavutil/dict.pas lib/ffmpeg-1.1/libavutil/log.pas lib/ffmpeg-1.1/libavutil/opt.pas lib/ffmpeg-1.1/libavutil/mathematics.pas lib/ffmpeg-1.1/libavutil/mem.pas lib/ffmpeg-1.1/libavutil/error.pas lib/ffmpeg-1.1/avcodec.pas lib/ffmpeg-1.1/swscale.pas lib/ffmpeg-1.1/rational.pas lib/ffmpeg-1.1/avutil.pas lib/ffmpeg-1.1/avio.pas lib/ffmpeg-1.1/avformat.pas lib/ffmpeg-1.1/libavcodec/audioconvert.pas lib/collections/CollLibrary.pas lib/collections/CollHash.pas lib/collections/CollList.pas lib/collections/CollArray.pas lib/collections/CollWrappers.pas lib/collections/CollPArray.pas lib/collections/Collections.pas lib/ffmpeg-2.1/libavutil/cpu.pas lib/ffmpeg-2.1/libavutil/pixfmt.pas lib/ffmpeg-2.1/libavutil/samplefmt.pas lib/ffmpeg-2.1/libavutil/dict.pas lib/ffmpeg-2.1/libavutil/log.pas lib/ffmpeg-2.1/libavutil/opt.pas lib/ffmpeg-2.1/libavutil/buffer.pas lib/ffmpeg-2.1/libavutil/frame.pas lib/ffmpeg-2.1/libavutil/mathematics.pas lib/ffmpeg-2.1/libavutil/mem.pas lib/ffmpeg-2.1/libavutil/error.pas lib/ffmpeg-2.1/avcodec.pas lib/ffmpeg-2.1/swscale.pas lib/ffmpeg-2.1/swresample.pas lib/ffmpeg-2.1/rational.pas lib/ffmpeg-2.1/avutil.pas lib/ffmpeg-2.1/avio.pas lib/ffmpeg-2.1/avformat.pas lib/ffmpeg-2.1/libavcodec/audioconvert.pas lib/fft/UFFT.pas lib/bass/delphi/bass.pas lib/ffmpeg-2.7/libavutil/cpu.pas lib/ffmpeg-2.7/libavutil/pixfmt.pas lib/ffmpeg-2.7/libavutil/samplefmt.pas lib/ffmpeg-2.7/libavutil/dict.pas lib/ffmpeg-2.7/libavutil/log.pas lib/ffmpeg-2.7/libavutil/opt.pas lib/ffmpeg-2.7/libavutil/buffer.pas lib/ffmpeg-2.7/libavutil/frame.pas lib/ffmpeg-2.7/libavutil/mathematics.pas lib/ffmpeg-2.7/libavutil/mem.pas lib/ffmpeg-2.7/libavutil/error.pas lib/ffmpeg-2.7/avcodec.pas lib/ffmpeg-2.7/swscale.pas lib/ffmpeg-2.7/swresample.pas lib/ffmpeg-2.7/rational.pas lib/ffmpeg-2.7/avutil.pas lib/ffmpeg-2.7/avio.pas lib/ffmpeg-2.7/avformat.pas lib/ffmpeg-2.7/libavcodec/audioconvert.pas lib/ffmpeg-2.7/ff_api-defines.inc lib/samplerate/samplerate.pas lib/ffmpeg-2.0/libavutil/cpu.pas lib/ffmpeg-2.0/libavutil/pixfmt.pas lib/ffmpeg-2.0/libavutil/samplefmt.pas lib/ffmpeg-2.0/libavutil/dict.pas lib/ffmpeg-2.0/libavutil/log.pas lib/ffmpeg-2.0/libavutil/opt.pas lib/ffmpeg-2.0/libavutil/mathematics.pas lib/ffmpeg-2.0/libavutil/mem.pas lib/ffmpeg-2.0/libavutil/error.pas lib/ffmpeg-2.0/avcodec.pas lib/ffmpeg-2.0/swscale.pas lib/ffmpeg-2.0/rational.pas lib/ffmpeg-2.0/avutil.pas lib/ffmpeg-2.0/avio.pas lib/ffmpeg-2.0/avformat.pas lib/ffmpeg-2.0/libavcodec/audioconvert.pas lib/portaudio/portaudio.pas lib/ffmpeg-0.9/libavutil/cpu.pas lib/ffmpeg-0.9/libavutil/pixfmt.pas lib/ffmpeg-0.9/libavutil/samplefmt.pas lib/ffmpeg-0.9/libavutil/dict.pas lib/ffmpeg-0.9/libavutil/log.pas lib/ffmpeg-0.9/libavutil/opt2.pas lib/ffmpeg-0.9/libavutil/opt1.pas lib/ffmpeg-0.9/libavutil/mathematics.pas lib/ffmpeg-0.9/libavutil/mem.pas lib/ffmpeg-0.9/libavutil/error.pas lib/ffmpeg-0.9/avcodec.pas lib/ffmpeg-0.9/swscale.pas lib/ffmpeg-0.9/rational.pas lib/ffmpeg-0.9/avutil.pas lib/ffmpeg-0.9/avio.pas lib/ffmpeg-0.9/avformat.pas lib/ffmpeg-0.9/libavcodec/audioconvert.pas lib/ffmpeg-0.10/libavutil/cpu.pas lib/ffmpeg-0.10/libavutil/pixfmt.pas lib/ffmpeg-0.10/libavutil/samplefmt.pas lib/ffmpeg-0.10/libavutil/dict.pas lib/ffmpeg-0.10/libavutil/log.pas lib/ffmpeg-0.10/libavutil/opt.pas lib/ffmpeg-0.10/libavutil/mathematics.pas lib/ffmpeg-0.10/libavutil/mem.pas lib/ffmpeg-0.10/libavutil/error.pas lib/ffmpeg-0.10/avcodec.pas lib/ffmpeg-0.10/swscale.pas lib/ffmpeg-0.10/rational.pas lib/ffmpeg-0.10/avutil.pas lib/ffmpeg-0.10/avio.pas lib/ffmpeg-0.10/avformat.pas lib/ffmpeg-0.10/libavcodec/audioconvert.pas lib/ffmpeg-3.0/libavutil/cpu.pas lib/ffmpeg-3.0/libavutil/pixfmt.pas lib/ffmpeg-3.0/libavutil/samplefmt.pas lib/ffmpeg-3.0/libavutil/dict.pas lib/ffmpeg-3.0/libavutil/log.pas lib/ffmpeg-3.0/libavutil/opt.pas lib/ffmpeg-3.0/libavutil/buffer.pas lib/ffmpeg-3.0/libavutil/frame.pas lib/ffmpeg-3.0/libavutil/mathematics.pas lib/ffmpeg-3.0/libavutil/mem.pas lib/ffmpeg-3.0/libavutil/error.pas lib/ffmpeg-3.0/avcodec.pas lib/ffmpeg-3.0/swscale.pas lib/ffmpeg-3.0/swresample.pas lib/ffmpeg-3.0/rational.pas lib/ffmpeg-3.0/avutil.pas lib/ffmpeg-3.0/avio.pas lib/ffmpeg-3.0/avformat.pas lib/ffmpeg-3.0/libavcodec/audioconvert.pas lib/ffmpeg-3.0/ff_api-defines.inc lib/bassmidi/bassmidi.pas lib/ffmpeg-2.2/libavutil/cpu.pas lib/ffmpeg-2.2/libavutil/pixfmt.pas lib/ffmpeg-2.2/libavutil/samplefmt.pas lib/ffmpeg-2.2/libavutil/dict.pas lib/ffmpeg-2.2/libavutil/log.pas lib/ffmpeg-2.2/libavutil/opt.pas lib/ffmpeg-2.2/libavutil/buffer.pas lib/ffmpeg-2.2/libavutil/frame.pas lib/ffmpeg-2.2/libavutil/mathematics.pas lib/ffmpeg-2.2/libavutil/mem.pas lib/ffmpeg-2.2/libavutil/error.pas lib/ffmpeg-2.2/avcodec.pas lib/ffmpeg-2.2/swscale.pas lib/ffmpeg-2.2/swresample.pas lib/ffmpeg-2.2/rational.pas lib/ffmpeg-2.2/avutil.pas lib/ffmpeg-2.2/avio.pas lib/ffmpeg-2.2/avformat.pas lib/ffmpeg-2.2/libavcodec/audioconvert.pas lib/ffmpeg-2.2/ff_api-defines.inc lib/ffmpeg-0.11/libavutil/cpu.pas lib/ffmpeg-0.11/libavutil/pixfmt.pas lib/ffmpeg-0.11/libavutil/samplefmt.pas lib/ffmpeg-0.11/libavutil/dict.pas lib/ffmpeg-0.11/libavutil/log.pas lib/ffmpeg-0.11/libavutil/opt.pas lib/ffmpeg-0.11/libavutil/mathematics.pas lib/ffmpeg-0.11/libavutil/mem.pas lib/ffmpeg-0.11/libavutil/error.pas lib/ffmpeg-0.11/avcodec.pas lib/ffmpeg-0.11/swscale.pas lib/ffmpeg-0.11/rational.pas lib/ffmpeg-0.11/avutil.pas lib/ffmpeg-0.11/avio.pas lib/ffmpeg-0.11/avformat.pas lib/ffmpeg-0.11/libavcodec/audioconvert.pas lib/ffmpeg-2.6/libavutil/cpu.pas lib/ffmpeg-2.6/libavutil/pixfmt.pas lib/ffmpeg-2.6/libavutil/samplefmt.pas lib/ffmpeg-2.6/libavutil/dict.pas lib/ffmpeg-2.6/libavutil/log.pas lib/ffmpeg-2.6/libavutil/opt.pas lib/ffmpeg-2.6/libavutil/buffer.pas lib/ffmpeg-2.6/libavutil/frame.pas lib/ffmpeg-2.6/libavutil/mathematics.pas lib/ffmpeg-2.6/libavutil/mem.pas lib/ffmpeg-2.6/libavutil/error.pas lib/ffmpeg-2.6/avcodec.pas lib/ffmpeg-2.6/swscale.pas lib/ffmpeg-2.6/swresample.pas lib/ffmpeg-2.6/rational.pas lib/ffmpeg-2.6/avutil.pas lib/ffmpeg-2.6/avio.pas lib/ffmpeg-2.6/avformat.pas lib/ffmpeg-2.6/libavcodec/audioconvert.pas lib/ffmpeg-2.6/ff_api-defines.inc lib/projectM/projectM.pas lib/projectM/projectM-1_0.inc lib/projectM/projectM-0_9.inc lib/midi/MidiScope.pas lib/midi/MidiOut.pas lib/midi/MidiIn.pas lib/midi/DelphiMcb.pas lib/midi/MidiCons.pas lib/midi/MidiType.pas lib/midi/CircBuf.pas lib/midi/MidiFile.pas lib/midi/MidiDefs.pas lib/other/WinAllocation.pas lib/ffmpeg/avcodec.pas lib/ffmpeg/swscale.pas lib/ffmpeg/rational.pas lib/ffmpeg/avutil.pas lib/ffmpeg/avio.pas lib/ffmpeg/avformat.pas lib/ffmpeg/opt.pas lib/ffmpeg/mathematics.pas lib/ffmpeg/error.pas lib/zlib/zlib.pas lib/bass_fx/bass_fx.pas lib/ffmpeg-2.8/libavutil/cpu.pas lib/ffmpeg-2.8/libavutil/pixfmt.pas lib/ffmpeg-2.8/libavutil/samplefmt.pas lib/ffmpeg-2.8/libavutil/dict.pas lib/ffmpeg-2.8/libavutil/log.pas lib/ffmpeg-2.8/libavutil/opt.pas lib/ffmpeg-2.8/libavutil/buffer.pas lib/ffmpeg-2.8/libavutil/frame.pas lib/ffmpeg-2.8/libavutil/mathematics.pas lib/ffmpeg-2.8/libavutil/mem.pas lib/ffmpeg-2.8/libavutil/error.pas lib/ffmpeg-2.8/avcodec.pas lib/ffmpeg-2.8/swscale.pas lib/ffmpeg-2.8/swresample.pas lib/ffmpeg-2.8/rational.pas lib/ffmpeg-2.8/avutil.pas lib/ffmpeg-2.8/avio.pas lib/ffmpeg-2.8/avformat.pas lib/ffmpeg-2.8/libavcodec/audioconvert.pas lib/ffmpeg-2.8/ff_api-defines.inc lib/ffmpeg-0.8/libavutil/cpu.pas lib/ffmpeg-0.8/libavutil/pixfmt.pas lib/ffmpeg-0.8/libavutil/samplefmt.pas lib/ffmpeg-0.8/libavutil/dict.pas lib/ffmpeg-0.8/libavutil/log.pas lib/ffmpeg-0.8/libavutil/opt.pas lib/ffmpeg-0.8/libavutil/mathematics.pas lib/ffmpeg-0.8/libavutil/mem.pas lib/ffmpeg-0.8/libavutil/error.pas lib/ffmpeg-0.8/avcodec.pas lib/ffmpeg-0.8/swscale.pas lib/ffmpeg-0.8/rational.pas lib/ffmpeg-0.8/avutil.pas lib/ffmpeg-0.8/avio.pas lib/ffmpeg-0.8/avformat.pas lib/ffmpeg-0.8/libavcodec/audioconvert.pas lib/pcre/pcre.pas lib/freetype/freetype.pas lib/freetype/ftstroke.inc lib/freetype/ftconfig.inc lib/freetype/demo/switches.inc lib/freetype/demo/nehe/UFreeType.pas lib/freetype/ftimage.inc lib/freetype/ftoutln.inc lib/freetype/ftglyph.inc lib/freetype/fttypes.inc lib/ffmpeg-0.7/libavutil/cpu.pas lib/ffmpeg-0.7/libavutil/pixfmt.pas lib/ffmpeg-0.7/libavutil/samplefmt.pas lib/ffmpeg-0.7/libavutil/dict.pas lib/ffmpeg-0.7/libavutil/log.pas lib/ffmpeg-0.7/libavutil/opt.pas lib/ffmpeg-0.7/libavutil/mathematics.pas lib/ffmpeg-0.7/libavutil/mem.pas lib/ffmpeg-0.7/libavutil/error.pas lib/ffmpeg-0.7/test.pp lib/ffmpeg-0.7/avcodec.pas lib/ffmpeg-0.7/swscale.pas lib/ffmpeg-0.7/rational.pas lib/ffmpeg-0.7/avutil.pas lib/ffmpeg-0.7/avio.pas lib/ffmpeg-0.7/avformat.pas lib/ffmpeg-0.7/libavcodec/audioconvert.pas lib/SQLite/SQLiteTable3.pas lib/SQLite/example/uTestSqlite.pas lib/SQLite/SQLite3.pas lib/ffmpeg-1.2/libavutil/cpu.pas lib/ffmpeg-1.2/libavutil/pixfmt.pas lib/ffmpeg-1.2/libavutil/samplefmt.pas lib/ffmpeg-1.2/libavutil/dict.pas lib/ffmpeg-1.2/libavutil/log.pas lib/ffmpeg-1.2/libavutil/opt.pas lib/ffmpeg-1.2/libavutil/mathematics.pas lib/ffmpeg-1.2/libavutil/mem.pas lib/ffmpeg-1.2/libavutil/error.pas lib/ffmpeg-1.2/avcodec.pas lib/ffmpeg-1.2/swscale.pas lib/ffmpeg-1.2/rational.pas lib/ffmpeg-1.2/avutil.pas lib/ffmpeg-1.2/avio.pas lib/ffmpeg-1.2/avformat.pas lib/ffmpeg-1.2/libavcodec/audioconvert.pas lib/ffmpeg-1.0/libavutil/cpu.pas lib/ffmpeg-1.0/libavutil/pixfmt.pas lib/ffmpeg-1.0/libavutil/samplefmt.pas lib/ffmpeg-1.0/libavutil/dict.pas lib/ffmpeg-1.0/libavutil/log.pas lib/ffmpeg-1.0/libavutil/opt.pas lib/ffmpeg-1.0/libavutil/mathematics.pas lib/ffmpeg-1.0/libavutil/mem.pas lib/ffmpeg-1.0/libavutil/error.pas lib/ffmpeg-1.0/avcodec.pas lib/ffmpeg-1.0/swscale.pas lib/ffmpeg-1.0/rational.pas lib/ffmpeg-1.0/avutil.pas lib/ffmpeg-1.0/avio.pas lib/ffmpeg-1.0/avformat.pas lib/ffmpeg-1.0/libavcodec/audioconvert.pas lib/ffmpeg-3.1/libavutil/cpu.pas lib/ffmpeg-3.1/libavutil/pixfmt.pas lib/ffmpeg-3.1/libavutil/samplefmt.pas lib/ffmpeg-3.1/libavutil/dict.pas lib/ffmpeg-3.1/libavutil/log.pas lib/ffmpeg-3.1/libavutil/opt.pas lib/ffmpeg-3.1/libavutil/buffer.pas lib/ffmpeg-3.1/libavutil/frame.pas lib/ffmpeg-3.1/libavutil/mathematics.pas lib/ffmpeg-3.1/libavutil/mem.pas lib/ffmpeg-3.1/libavutil/error.pas lib/ffmpeg-3.1/avcodec.pas lib/ffmpeg-3.1/swscale.pas lib/ffmpeg-3.1/swresample.pas lib/ffmpeg-3.1/rational.pas lib/ffmpeg-3.1/avutil.pas lib/ffmpeg-3.1/avio.pas lib/ffmpeg-3.1/avformat.pas lib/ffmpeg-3.1/libavcodec/audioconvert.pas lib/ffmpeg-3.1/ff_api-defines.inc lib/portmixer/portmixer.pas lib/SDL2/sdlclipboard.inc lib/SDL2/sdltimer.inc lib/SDL2/sdltouch.inc lib/SDL2/sdlthread.inc lib/SDL2/sdlrect.inc lib/SDL2/sdlhaptic.inc lib/SDL2/SDL2_gfx.pas lib/SDL2/SDL2_mixer.pas lib/SDL2/SDL2_image.pas lib/SDL2/sdlblendmode.inc lib/SDL2/sdlmutex.inc lib/SDL2/sdlaudio.inc lib/SDL2/sdlfilesystem.inc lib/SDL2/sdlmouse.inc lib/SDL2/jedi.inc lib/SDL2/sdlmessagebox.inc lib/SDL2/sdlrwops.inc lib/SDL2/sdlversion.inc lib/SDL2/sdlpower.inc lib/SDL2/sdlevents.inc lib/SDL2/sdlsyswm.inc lib/SDL2/sdlloadso.inc lib/SDL2/sdlpixels.inc lib/SDL2/sdl2.pas lib/SDL2/SDL2_net.pas lib/SDL2/sdlsurface.inc lib/SDL2/sdlrenderer.inc lib/SDL2/sdlvideo.inc lib/SDL2/sdltype.inc lib/SDL2/sdl.inc lib/SDL2/sdlscancode.inc lib/SDL2/sdlplatform.inc lib/SDL2/sdlerror.inc lib/SDL2/sdlgesture.inc lib/SDL2/sdllog.inc lib/SDL2/sdlhints.inc lib/SDL2/sdlcpuinfo.inc lib/SDL2/sdlgamecontroller.inc lib/SDL2/sdlsystem.inc lib/SDL2/SDL2_ttf.pas lib/SDL2/sdlkeyboard.inc lib/SDL2/sdlshape.inc lib/SDL2/sdljoystick.inc lib/ctypes/ctypes.pas lib/openCV/test/OpenCV.pas lib/openCV/test/Ipl.pas lib/openCV/opencv_highgui.pas lib/openCV/opencv_core.pas lib/openCV/opencv_types.pas lib/openCV/opencv_imgproc.pas lib/ffmpeg-2.4/libavutil/cpu.pas lib/ffmpeg-2.4/libavutil/pixfmt.pas lib/ffmpeg-2.4/libavutil/samplefmt.pas lib/ffmpeg-2.4/libavutil/dict.pas lib/ffmpeg-2.4/libavutil/log.pas lib/ffmpeg-2.4/libavutil/opt.pas lib/ffmpeg-2.4/libavutil/buffer.pas lib/ffmpeg-2.4/libavutil/frame.pas lib/ffmpeg-2.4/libavutil/mathematics.pas lib/ffmpeg-2.4/libavutil/mem.pas lib/ffmpeg-2.4/libavutil/error.pas lib/ffmpeg-2.4/avcodec.pas lib/ffmpeg-2.4/swscale.pas lib/ffmpeg-2.4/swresample.pas lib/ffmpeg-2.4/rational.pas lib/ffmpeg-2.4/avutil.pas lib/ffmpeg-2.4/avio.pas lib/ffmpeg-2.4/avformat.pas lib/ffmpeg-2.4/libavcodec/audioconvert.pas lib/ffmpeg-2.4/ffapi-defines.inc webSDK/dcpcrypt2-2009/DCPbase64.pas webSDK/dcpcrypt2-2009/Demos/FileHash/uMain.pas webSDK/dcpcrypt2-2009/Demos/FileEncrypt/uMain.pas webSDK/dcpcrypt2-2009/DCPcrypt2.pas webSDK/dcpcrypt2-2009/Ciphers/DCPrc2.inc webSDK/dcpcrypt2-2009/Ciphers/DCPgost.inc webSDK/dcpcrypt2-2009/Ciphers/DCPtwofish.pas webSDK/dcpcrypt2-2009/Ciphers/DCPice.pas webSDK/dcpcrypt2-2009/Ciphers/DCPrc4.pas webSDK/dcpcrypt2-2009/Ciphers/DCPmisty1.pas webSDK/dcpcrypt2-2009/Ciphers/DCPgost.pas webSDK/dcpcrypt2-2009/Ciphers/DCPrijndael.pas webSDK/dcpcrypt2-2009/Ciphers/DCPrc2.pas webSDK/dcpcrypt2-2009/Ciphers/DCPmisty1.inc webSDK/dcpcrypt2-2009/Ciphers/DCPmars.pas webSDK/dcpcrypt2-2009/Ciphers/DCPmars.inc webSDK/dcpcrypt2-2009/Ciphers/DCPblowfish.pas webSDK/dcpcrypt2-2009/Ciphers/DCPcast256.pas webSDK/dcpcrypt2-2009/Ciphers/DCPblowfish.inc webSDK/dcpcrypt2-2009/Ciphers/DCPserpent.pas webSDK/dcpcrypt2-2009/Ciphers/DCPcast128.inc webSDK/dcpcrypt2-2009/Ciphers/DCPrijndael.inc webSDK/dcpcrypt2-2009/Ciphers/DCPcast256.inc webSDK/dcpcrypt2-2009/Ciphers/DCPtwofish.inc webSDK/dcpcrypt2-2009/Ciphers/DCPrc5.pas webSDK/dcpcrypt2-2009/Ciphers/DCPidea.pas webSDK/dcpcrypt2-2009/Ciphers/DCPdes.inc webSDK/dcpcrypt2-2009/Ciphers/DCPrc6.pas webSDK/dcpcrypt2-2009/Ciphers/DCPcast128.pas webSDK/dcpcrypt2-2009/Ciphers/DCPdes.pas webSDK/dcpcrypt2-2009/Ciphers/DCPtea.pas webSDK/dcpcrypt2-2009/PHPEncryption/uMain.pas webSDK/dcpcrypt2-2009/DCPreg.pas webSDK/dcpcrypt2-2009/Hashes/DCPmd4.pas webSDK/dcpcrypt2-2009/Hashes/DCPripemd160.pas webSDK/dcpcrypt2-2009/Hashes/DCPhaval3.inc webSDK/dcpcrypt2-2009/Hashes/DCPtiger.inc webSDK/dcpcrypt2-2009/Hashes/DCPhaval4.inc webSDK/dcpcrypt2-2009/Hashes/DCPripemd128.pas webSDK/dcpcrypt2-2009/Hashes/DCPhaval5.inc webSDK/dcpcrypt2-2009/Hashes/DCPtiger.pas webSDK/dcpcrypt2-2009/Hashes/DCPsha512.pas webSDK/dcpcrypt2-2009/Hashes/DCPsha1.pas webSDK/dcpcrypt2-2009/Hashes/DCPmd5.pas webSDK/dcpcrypt2-2009/Hashes/DCPhaval.pas webSDK/dcpcrypt2-2009/Hashes/DCPsha256.pas webSDK/dcpcrypt2-2009/DCPconst.pas webSDK/dcpcrypt2-2009/DCPblockciphers.pas webSDK/UWebSDK.pas webSDK/encrypt/cDefines.inc webSDK/encrypt/UMD5.pas webSDK/encrypt/cHash.pas webSDK/cURL/demo/testpart.pas webSDK/cURL/demo/testver.pas webSDK/cURL/demo/testsave.pas webSDK/cURL/demo/testpost.pas webSDK/cURL/demo/testcook.pas webSDK/cURL/demo/testevnt.pas webSDK/cURL/demo/testtxcb.pas webSDK/cURL/demo/testinfo.pas webSDK/cURL/demo/testmpf1.pas webSDK/cURL/demo/testmthd.pas webSDK/cURL/demo/testmpf2.pas webSDK/cURL/demo/testput.pas webSDK/cURL/demo/testcb.pas webSDK/cURL/demo/simple.pas webSDK/cURL/demo/testmult.pas webSDK/cURL/demo/testmobj.pas webSDK/cURL/demo/curltest.inc webSDK/cURL/src/ocurlini.inc webSDK/cURL/src/ocurltyp.inc webSDK/cURL/src/ocurlcll.inc webSDK/cURL/src/ocurlacc.inc webSDK/cURL/src/curlpas.pas webSDK/cURL/src/ocurlprv.inc webSDK/cURL/src/ocurlcb2.inc webSDK/cURL/src/ocurlmlt.inc webSDK/cURL_/src/curlh.pas webSDK/cURL/src/ocurlset.inc webSDK/cURL/src/ocurlinf.inc webSDK/cURL/src/ocurluse.inc webSDK/cURL/src/lazcurl.pas webSDK/cURL/src/ocurlget.inc webSDK/cURL/src/ocurlthd.inc webSDK/cURL/src/ocurlcb.inc webSDK/cURL/src/ocurlprt.inc webSDK/cURL/src/ocurlpub.inc webSDK/cURL/src/curldbug.pas webSDK/cURL/src/curlobj.pas webSDK/cURL/src/ocurlver.inc webSDK/cURL/gui/curlform.pas macosx/PseudoThread.pas encoding/Auto.inc encoding/Locale.inc encoding/CP1250.inc encoding/UTF8.inc encoding/CP1252.inc


Clean old object data... make clean_obj make[2]: Entering directory /home/namna/Downloads/USDX/src' rm -f "../game/ultrastardx" rm -f -r "../build/fpc-x86_64-linux" make[2]: Leaving directory/home/namna/Downloads/USDX/src'

/bin/mkdir -p "../build/fpc-x86_64-linux" make create-pathinfo make[2]: Entering directory /home/namna/Downloads/USDX/src' echo "INSTALL_DATADIR = '/usr/local/share/ultrastardx';" > paths.inc make[2]: Leaving directory/home/namna/Downloads/USDX/src' fpc -Si -Sg- -Sc- -v0Binwe -Xs- -O2 -lm -k"-z noexecstack" -k" -L/usr/local/lib" -Fi../src/lib/JEDI-SDL/SDL/Pas -Fu. -FU../build/fpc-x86_64-linux -o../game/ultrastardx ultrastardx.dpr Error: Illegal parameter: -lm Error: /usr/local/bin/ppcx64 returned an error exitcode make[1]: [../game/ultrastardx] Error 1 make[1]: Leaving directory `/home/namna/Downloads/USDX/src' make: [all] Error 2

AlexanderS commented 7 years ago

Ok. seems like the fpc does not accept the linker arguments. I do not know what's wrong with your setup. I will try to replicate it and report back.

zeroel commented 7 years ago

Yes, thank you!

sanderr commented 7 years ago

I am on Debian Jessie and I'm experiencing the same issue. I have purged fpc2.8 and ffmpeg3, installed fpc3.0.0 from the repositories and ffmpeg version n2.7.7 from source, much like zeroel it seems. I have tried running the configure script both with and without setting the PFLAGS_EXTRA="-lm" variable. I have attached the output for all those commands below.

configure.txt configure-lm.txt make.txt make-lm.txt

pheppy commented 7 years ago

Same thing Ubuntu 14.04. I've installed ffmpeg-2.8.6, same result.

Redox15 commented 7 years ago

I'm getting:

./configure: line 3636: syntax error near unexpected token `libpng,'
./configure: line 3636: `PKG_HAVE(libpng, libpng12, no)'
frapit commented 7 years ago

I just tried to compile USDX from source and got the exact same error as everyone else in this post. I compiled ffmpeg 2.8 from source. The system is running Debian Jessie. Did anyone found a solution yet?

sanderr commented 7 years ago

Not yet, alas. I have temporarily made a seperate partition running arch linux and got it working easily there. I'm planning on trying to run it from Debian in a VM or chroot, but I haven't figured that quite out yet. It's definitely not ideal, but it at least allows you to play.

cRaZy-bisCuiT commented 6 years ago

The FPC version seems broken. I can only compile with fpc 3.0.2

s09bQ5 commented 6 years ago

The problem is that most of you compiled FFmpeg only as static libraries. This currently does not work because:

So to fix the error listed in the first post, we can add -lm to LIBS since libm is most likely a shared library. But if you do so , you will be greeted with lots of other undefined symbols and in the end you will notice that you have to tell the linker to link the code to -lavcodec after -lavformat (not before). Then you start cursing Free Pascal and consider rebuilding FFmpeg as shared library.

@Redox15, I don't know what went wrong there, but the current version no longer checks for libpng.