Code: Select all
[user]~/Desktop>cd ~/Desktop/
[user]~/Desktop>mkdir pb_github/
[user]~/Desktop>cd pb_github/
[user]~/Desktop/pb_github>git clone https://github.com/fantaisie-software/purebasic
Cloning into 'purebasic'...
remote: Enumerating objects: 633, done.
remote: Counting objects: 100% (633/633), done.
remote: Compressing objects: 100% (554/554), done.
remote: Total 633 (delta 72), reused 629 (delta 72), pack-reused 0
Receiving objects: 100% (633/633), 3.48 MiB | 4.93 MiB/s, done.
Resolving deltas: 100% (72/72), done.
[user]~/Desktop/pb_github>cd purebasic
[user]~/Desktop/pb_github/purebasic>gedit Linux.sh
(purebasic_570_lts_PBGITHUB is a copy of a normal pb 570 installation)
Code: Select all
#!/bin/bash
#:: Set the PureBasic home directory to a real x64 PureBasic installation (warning:
#:: when compilig, the IDE will be overwriten with the new one.
export PUREBASIC_HOME=/home/user/purebasic_570_lts_PBGITHUB
#set PB_VS8=C:/Program Files (x86)/Microsoft Visual Studio 12.0
#set PB_PLATEFORM_SDK=C:/Program Files/Microsoft SDKs/Windows/v7.0
#set PB_DIRECTX7_SDK=C:/Program Files (x86)/Microsoft DirectX 9.0 SDK (December 2004)
#set PB_DIRECTX9_SDK=C:/Program Files (x86)/Microsoft DirectX SDK (August 2009)
export PB_LIBRARIES=$PWD/Libraries
export PB_BUILDTARGET=$PWD/Build/x64
#set PATH=%PB_VS8%/VC/bin;%PATH%
#set PATH=%PB_VS8%/VC/bin/x86_amd64;%PATH%
#set PATH=C:/Program Files (x86)/Microsoft DirectX SDK (August 2009)/Utilities/bin/x86;C:\Program Files\TortoiseSVN\bin;%PATH%
export PB_PROCESSOR=X64
export PATH=$PUREBASIC_HOME/compilers:$PATH
#set PB_VC8_ANSI=cl.exe -I"%PB_VS8%/VC/include" -I"%PB_LIBRARIES%" -DWINDOWS -DVISUALC -DX64 -DPB_64 -D_USING_V110_SDK71_ -I"%PB_PLATEFORM_SDK%/Include" -I"%PB_PLATEFORM_SDK%/Include/crt" -I. -I"%PB_DIRECTX9_SDK%/Include" -I"%PB_DIRECTX7_SDK%/Include" /nologo /GS- /D_CRT_NOFORCE_MANIFEST
#set PB_VC8=%PB_VC8_ANSI% -DUNICODE
#set PB_NASM=nasm.exe -DWINDOWS -fwin64 -O3
#set PB_LINKER=link /LIBPATH:"%PB_PLATEFORM_SDK%/Lib/x64" /LIBPATH:"%PB_VS8%/VC/Lib/amd64"
#set PB_LIBRARIAN=lib /nologo
#set PB_LIBRARYMAKER="%PUREBASIC_HOME%/SDK/LibraryMaker.exe" /NOLOG /COMPRESSED /CONSTANT WINDOWS /CONSTANT %PB_PROCESSOR%
#set PB_IOFIX=
#set PB_OGREFLAGS=/MT /O2
#set PB_OGRELIBRARIAN=lib /NOLOGO
export PB_WINDOWS=0
export PB_OBJ=o
export PB_LIB=a
export PB_GCC_ANSI="g++ -I$PB_LIBRARIES"
export PB_OPT_SPEED=
#:: set a default subsystem
#set PB_SUBSYSTEM=purelibraries/
#echo Setting environment for PureBasic %PB_PROCESSOR%
#echo.
#:: If we don't specify any args, we want to open a CMD. Else we can use this script to setup an env for batching
#IF [%1]==[] GOTO opencmd
#
#GOTO end
#
#:opencmd
#
#cmd
#
#:end
Code: Select all
[user]~/Desktop/pb_github/purebasic>chmod +x Linux.sh
[user]~/Desktop/pb_github/purebasic>source ./Linux.sh
[user]~/Desktop/pb_github/purebasic>mkdir Build/
[user]~/Desktop/pb_github/purebasic>mkdir Build/x64
[user]~/Desktop/pb_github/purebasic>cd PureBasicIDE/
[user]~/Desktop/pb_github/purebasic/PureBasicIDE>cd PureBasicIDE/
bash: cd: PureBasicIDE/: No such file or directory
[user]~/Desktop/pb_github/purebasic/PureBasicIDE>make ide
cp -f data/ColorTable.xml /home/user/purebasic_570_lts_PBGITHUB/catalogs/ColorTable.xml
mkdir "/home/user/Desktop/pb_github/purebasic/Build/x64/ide"
touch /home/user/Desktop/pb_github/purebasic/Build/x64/ide/dummy
cp data/ToolsPanelRight.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/ToolsPanelRight.png
cp data/ToolsPanelLeft.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/ToolsPanelLeft.png
cp data/CloseButton.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/CloseButton.png
pbcompiler -q tools/pbpack.pb -e /home/user/Desktop/pb_github/purebasic/Build/x64/ide/pbpack
/home/user/Desktop/pb_github/purebasic/Build/x64/ide/pbpack -q -l4 /home/user/Desktop/pb_github/purebasic/Build/x64/ide/images.pak data/startuplogo.png data/purebasiclogo.bmp /home/user/Desktop/pb_github/purebasic/Build/x64/ide/ToolsPanelRight.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/ToolsPanelLeft.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/CloseButton.png data/EmptySpace.png data/MissingIcon.png
make --directory ../DialogManager
make[1]: Entering directory '/home/user/Desktop/pb_github/purebasic/DialogManager'
mkdir "/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler"
touch /home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dummy
/home/user/purebasic_570_lts_PBGITHUB/compilers/pbcompiler -q DialogCompiler.pb -e /home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler
make[1]: Leaving directory '/home/user/Desktop/pb_github/purebasic/DialogManager'
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Find.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Find.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Grep.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Grep.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Goto.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Goto.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/CompilerOptions.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/CompilerOptions.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/AddTools.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/AddTools.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/About.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/About.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Preferences.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Preferences.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Templates.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Templates.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/StructureViewer.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/StructureViewer.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Projects.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Projects.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Build.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Build.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Diff.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Diff.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/FileMonitor.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/FileMonitor.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/History.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/History.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/HistoryShutdown.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/HistoryShutdown.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/CreateApp.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/CreateApp.pb
/home/user/Desktop/pb_github/purebasic/Build/x64/dialogcompiler/dialogcompiler dialogs/Updates.xml /home/user/Desktop/pb_github/purebasic/Build/x64/ide/Updates.pb
cp ../PureBasicDebugger/Data/arrow.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/arrow.png
cp ../PureBasicDebugger/Data/select.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/select.png
cp ../PureBasicDebugger/Data/zoomin.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/zoomin.png
cp ../PureBasicDebugger/Data/zoomout.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/zoomout.png
cp ../PureBasicDebugger/Data/zoomall.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/zoomall.png
cp ../PureBasicDebugger/Data/cross.png /home/user/Desktop/pb_github/purebasic/Build/x64/ide/cross.png
rm -f /home/user/Desktop/pb_github/purebasic/Build/x64/ide/DefaultTheme.zip
zip -jq /home/user/Desktop/pb_github/purebasic/Build/x64/ide/DefaultTheme.zip data/DefaultTheme/*
mkdir "/home/user/purebasic_570_lts_PBGITHUB/themes"
mkdir: cannot create directory ‘/home/user/purebasic_570_lts_PBGITHUB/themes’: File exists
Makefile:247: recipe for target '/home/user/purebasic_570_lts_PBGITHUB/themes/SilkTheme.zip' failed
make: [/home/user/purebasic_570_lts_PBGITHUB/themes/SilkTheme.zip] Error 1 (ignored)
rm -f /home/user/purebasic_570_lts_PBGITHUB/themes/SilkTheme.zip
zip -jq /home/user/purebasic_570_lts_PBGITHUB/themes/SilkTheme.zip data/SilkTheme/*
pbcompiler -q tools/makebuildinfo.pb -e /home/user/Desktop/pb_github/purebasic/Build/x64/ide/makebuildinfo
g++ -I/home/user/Desktop/pb_github/purebasic/Libraries -c ../PureBasicDebugger/NetworkSupport.c -o /home/user/Desktop/pb_github/purebasic/Build/x64/ide/NetworkSupport.o
In file included from /home/user/Desktop/pb_github/purebasic/Libraries/Debugger/DebuggerInternal.h:33:0,
from ../PureBasicDebugger/NetworkSupport.c:30:
/home/user/Desktop/pb_github/purebasic/Libraries/PureLibrary.h:687:24: error: expected constructor, destructor, or type conversion before ‘SYS_UTF8ToAsciiLength’
M_SYSFUNCTION(integer) SYS_UTF8ToAsciiLength(const unsigned char* in, integer inlen);
^~~~~~~~~~~~~~~~~~~~~
/home/user/Desktop/pb_github/purebasic/Libraries/PureLibrary.h:688:24: error: expected constructor, destructor, or type conversion before ‘SYS_UTF8LengthToBytes’
M_SYSFUNCTION(integer) SYS_UTF8LengthToBytes(const unsigned char* in, integer NbCharacters);
^~~~~~~~~~~~~~~~~~~~~
/home/user/Desktop/pb_github/purebasic/Libraries/PureLibrary.h:696:30: error: ‘WCHAR’ does not name a type; did you mean ‘_T_WCHAR’?
char *SYS_UTF16ToUTF8(const WCHAR *String);
^~~~~
_T_WCHAR
/home/user/Desktop/pb_github/purebasic/Libraries/PureLibrary.h:697:1: error: ‘WCHAR’ does not name a type; did you mean ‘_T_WCHAR’?
WCHAR *SYS_UTF8ToUTF16(const char *String);
^~~~~
_T_WCHAR
In file included from /home/user/Desktop/pb_github/purebasic/Libraries/Debugger/DebuggerInternal.h:33:0,
from ../PureBasicDebugger/NetworkSupport.c:30:
/home/user/Desktop/pb_github/purebasic/Libraries/PureLibrary.h:699:45: error: expected constructor, destructor, or type conversion before ‘SYS_StringToAscii’
#define SYS_StringToAscii M_UnicodeFunction(SYS_StringToAscii)
[...]
[snip]
These are the flags used on windows:
Code: Select all
set
PB_VC8_ANSI=
cl.exe
-I"%PB_VS8%/VC/include"
-I"%PB_LIBRARIES%"
-DWINDOWS
-DVISUALC
-DX64
-DPB_64
-D_USING_V110_SDK71_
-I"%PB_PLATEFORM_SDK%/Include"
-I"%PB_PLATEFORM_SDK%/Include/crt"
-I.
-I"%PB_DIRECTX9_SDK%/Include"
-I"%PB_DIRECTX7_SDK%/Include"
/nologo
/GS-
/D_CRT_NOFORCE_MANIFEST