We stand with Ukraine to help keep people safe. Join us
All Apps
Best AppsReviewsComparisonsHow-To
When you purchase through links on our site, we may earn an affiliate commission

PureBasic for Mac

Programming source code compiler.

$79.00
In English
3.9
Based on 5 user rates

PureBasic overview

Purebasic is a basic compiler available for Windows, Linux, Amiga, and now also for macOS. It is easy to create portable source code for all platforms. Purebasic creates native executables with high-speed execution and low resource consumption. Once bought you have a lifetime update guarantee.

Features
  • Huge set of internal commands (1600+) to quickly and easily build applications or games
  • Windows (x86 - x64), Linux (x86 - x64), OS X (x64, M1) and Raspberry (arm32, arm64) support
  • BASIC programming language based keywords
  • Very fast BASIC compiler which creates highly optimized executables
  • No external DLLs, runtime interpreter or anything else required when creating executables
  • Procedure and structure support for advanced programming
  • Full unicode support
  • Built-in containers like array, list and map
  • Strong types, strong syntax to avoid programming mistakes
  • Namespace support for easy code reuse
  • Access to full OS API for advanced programmers
  • Easy but very fast 2D game support through dedicated libraries (DirectX, OpenGL)
  • Easy and high quality 3D support based on OGRE
  • Optimal use of the available hardware by using highly optimized (assembly) commands
  • Source code is portable between Windows, MacOS X, Linux and Raspberry
  • Dedicated editor and development environment
  • Powerful integrated debugger and profiler to easily trace and analyze code

What’s new in version 6.10

  • Added: WebView library to easily create HTML/CSS based UI !
  • Added: Full rework of the date library to handle years from 1601 to 9999 !
  • Added: Skeleton library to create custom skeleton to a mesh !
  • Added: SvgVectorOutput() and PdfVectorOutput() for all OS
  • Added: DPI-Aware support for OS X
  • Added: ExamineDraggedItems(), NextDraggedItem() and DraggedItemIndex() for Drag'n'drop
  • Added: GetGadgetItemText() support for ExplorerTreeGadget()
  • Added: CompareStructure(), CompareArray(), CompareList() and CompareMap() functions
  • Added: CustomSortList() and CustomSortArray() functions to Sort library
  • Added: CatchPack(), PackEntryDate()
  • Added: CreatePasswordHash() and VerifyPasswordHash() functions (BCrypt algorithm)
  • Added: DeriveCipherKey() to create a cipher key from a password (PBKDF2 algorithm)
  • Added: DateUTC() to get the date in UTC time
  • Added: ConvertDate(Date, #PB_Date_LocalTime/#PB_Date_UTC) to convert the date between UTC and localtime
  • Added: ScaleEntityBone(), MeshDirectAdd() and #PB_Mesh_Direct mode support to CreateMesh()
  • Added: AddPackDirectory(#Packer, PackedDirectoryName$) for empty directory
  • Added: UseDialogWebGadget(), UseDialogOpenGLGadget(), UseDialogScintillaGadget() to avoid big lib dependency by default when using dialogs.
  • Added: NbMaxChannels parameter for InitSound(). Range from 1 to 254.
  • Added: 'Encoding' optional parameter to OpenPreference() to handle properly UTF-8 files without BOM
  • Added: Parent window support to all requesters
  • Added: WebGadget based on Edge component with the #PB_Web_Edge constant (Windows only)
  • Added: Localhost binding for InitFastCGI()
  • Added: SystrayIconMenu() to automatically display a menu when clicking on the icon
  • Added: ListIconGaget() column alignment support
  • Added: Runtime warning if CreateThread() is used without ThreadSafe mode
  • Added: GadgetItemID() support for PanelGadget() (Windows only)
  • Added: #PB_Preference_NoBOM flag for CreatePreference() to create UTF-8 preference files without BOM
  • Added: #PB_Cipher_HMAC flag to fingerprint functions
  • Added: #PB_2DDrawing_NativeText support for DrawingMode()
  • Added: #PB_PixelFormat_NoAlpha for DrawingBufferFormat()
  • Added: #PB_EventType_ColumnClick for ListIconGadget()
  • Added: #PB_String_EscapeJSON support to EscapeString() and UnescapeString().
  • Added: #PB_Menu_SysTrayLook support to have better looking popup menu when used with SysTray (Windows only)
  • Added: #PB_EventType_Refresh support for ExplorerListGadget() (Window only)
  • Added: Case-insensitive subsystem support on Linux
  • Added: --listfunctions/constants/interfaces and --querystructure support to Windows compiler.
  • Updated: Unicode filename support for Windows compiler
  • Updated: Libvlc instead of the old xine lib on Linux to play movies
  • Updated: Reworked the Sound and Music library to use MiniAudio on Windows, OS X and Linux (SDL dependency is no more requiered for sounds on Linux).
  • Updated: SQLite version to 3.45.0
  • Updated: Toolchain on Windows now use VisualStudio 2022 and new MSVCRT for faster PureBasic programs and easier external libs integration.
  • Updated: Minimum version for Linux x86 is now Debian 12
  • Updated: Minimum version for Raspberry is now Debian 12 based PI OS
  • Changed: TextWidth(), TextHeight(), DrawText() and DrawRotatedText() now use double for X, Y coordinates.
  • Changed: Scintilla is now linked statically on Windows (distributing the scintilla.dll along your executable isn't needed anymore)
  • Changed: the SysTray lib on Linux now use AppIndicator to support modern Linux distro in GTK3
  • Changed: deprecated DESFingerprint() function use the new CreatePasswordHash() instead.
  • Changed: ListSize() and MapSize() now properly return -1 if the list or map is freed.
  • Removed: --listpath on Linux/OSX (use --output to specify the output file)
  • Removed: Windows XP support. Minimum supported Windows version for created executables is now Windows Vista.
  • Removed: Some very old deprecated functions.
  • Fixed: A lot of libraries bugs (fixed bug list)
View older PureBasic versions

PureBasic for Mac

$79.00
In English
Version 6.10
Write a detailed review about PureBasic

Write your thoughts in our old-fashioned comment

MacUpdate Comment Policy. We strongly recommend leaving comments, however comments with abusive words, bullying, personal attacks of any type will be moderated.
3.9

(9 Reviews of PureBasic)

  • Comments

  • User Ratings

Sparrowhawk
Sparrowhawk
Feb 4 2019
5.22 LTS
4.5
Feb 4 2019
4.5
Version: 5.22 LTS
@macupdate: 5.70 LTS out a month ago. (2 January 2019) https://www.purebasic.com/news85.php Highlight features are: Much improved Http functions and it finally has native MySQL support (rather than having to use ODBC).
Sparrowhawk
Sparrowhawk
Sep 2 2016
5.22 LTS
4.5
Sep 2 2016
4.5
Version: 5.22 LTS
@MacUpdate admins, Purebasic 5.50 has been available since July 2016 (http://www.purebasic.com/news76.php)

Also, the web version, SpiderBasic, is now at 1.40 (https://www.spiderbasic.com) - I notice there is no entry for it at macUpdate

Having had a chance to play with PB a bit now, I can say that it is a lot more powerful than might be expected. It's chock-full of functionality and yet still generates small and fast executables across three platforms. It's more like C with a Basic syntax than old school Basics. Pointers, structures, modules, events, etc etc make this a useful addition to your dev toolbox.

Although some of the functionality can be a little clunky, such as the JSON commands, the decent Help and helpful online community makes getting solutions to probems quite easy to achieve.

My one tip would be to avoid the built in form editor and use the new XML-based dialog library which is far more flexible.

As mentioned, there is a web version available, SpiderBasic (sold seperately) which I have used to build new user interfaces to our business APIs -works a charm.
Sparrowhawk
Sparrowhawk
Oct 19 2015
5.22 LTS
4.5
Oct 19 2015
4.5
Version: 5.22 LTS
@MacUpdate admins - v5.40 LTS was released a couple of days ago. The MU version number (5.22) is very out of date now. I'm really enjoying getting to know PB more and more. It is incredibly feature rich and far, far from the BASICs of the 1980s whilst retaining familiar syntax.
Sparrowhawk
Sparrowhawk
Feb 27 2015
5.22 LTS
4.5
Feb 27 2015
4.5
Version: 5.22 LTS
Note for MacUpdate admins: PureBasic is currently at version 5.31 with an LTS version at 5.24 (from October 2014).
PoseMotion
PoseMotion
May 8 2014
5.22 LTS
5.0
May 8 2014
5.0
Version: 5.22 LTS
I've been using PureBasic since 2001. I don't understand these bad reviews on here. The developer has done a great job at making this one of the best cross platform programming languages ever. I've used it on Windows, Linux and OS X. If you're like me and don't like the bulky Xcode app and want to create small and fast apps, look no further then PureBasic.
Ervins Strauhmanis
Ervins Strauhmanis
Sep 20 2018
5.0
Sep 20 2018
5.0
Version: null
Sparrowhawk
Sparrowhawk
Sep 2 2016
4.5
Sep 2 2016
4.5
Version: null
PoseMotion
PoseMotion
May 8 2014
5.0
May 8 2014
5.0
Version: null
Frigginjoe
Frigginjoe
Dec 2 2010
4.0
Dec 2 2010
4.0
Version: null
Shotgunweddings
Shotgunweddings
Jun 21 2008
1.0
Jun 21 2008
1.0
Version: null