{"id":3938,"date":"2019-06-12T22:36:10","date_gmt":"2019-06-12T20:36:10","guid":{"rendered":"https:\/\/demdlx704as001.ad.harman.com\/?p=3938"},"modified":"2021-12-16T17:14:48","modified_gmt":"2021-12-16T16:14:48","slug":"xaf-workspace-in-visual-studio","status":"publish","type":"post","link":"https:\/\/audioworx.transfunnel.co\/old\/?p=3938","title":{"rendered":"xAF workspace in Visual Studio"},"content":{"rendered":"<p class=\"text\">The Visual Studio sln file, <span class=\"emph\">xAFVirtualAmp.sln<\/span>, is generated and built by Python using <a href=\"https:\/\/cmake.org\/install\/\">cmake<\/a>. Be sure you install <a href=\"https:\/\/www.python.org\/downloads\/\">Python 2.7<\/a> and add the installed location to the \u201cPaths\u201d environment variable under System Properties.<\/p>\n<p class=\"action-group\">Configure a Build<\/p>\n<p class=\"note\">By default, the solution virtual device wrapper is configured to work with one instance. If you would like to run multiple instances, you will need to modify the <span class=\"emph\"><em>cpp<\/em> <\/span>and <strong><em>WinProgram<\/em><\/strong><span class=\"emph\"><em>.h<\/em><\/span> files.<\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">Configure the build by enabling or disabling the audio objects in <strong>extendable-audio-framework\\build\\externalObjConfig.cmake<\/strong>.<\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">You can toggle the fields on and off by setting the macros above to one or zero.<\/p>\n<p>&nbsp;<\/p>\n<figure id=\"attachment_3939\" aria-describedby=\"caption-attachment-3939\" style=\"width: 626px\" class=\"wp-caption alignnone\"><img fetchpriority=\"high\" decoding=\"async\" class=\"wp-image-3939\" src=\"https:\/\/audioworx.transfunnel.co\/old\/wp-content\/uploads\/2019\/06\/003.jpg\" alt=\"\" width=\"626\" height=\"538\" \/><figcaption id=\"caption-attachment-3939\" class=\"wp-caption-text\">extendable-audio-framework\\build\\externalObjConfig.cmake<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p class=\"action-group\">Generate a Build<\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">Open the command window and navigate to the xAF repository base directory.<\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">To generate and build the Visual Studio project for the Win32 platform:<\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">For Release mode, type <strong>build.py &#8211;platform=WinPc &#8211;target=Win32 &#8211;profile=Release<\/strong><\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">For Debug mode, type <strong>build.py &#8211;platform=WinPc &#8211;target=Win32 &#8211;profile=Debug<\/strong><\/p>\n<p class=\"result\">xAF libraries and external objects libraries will be generated in the <strong><em>\\public\\lib\\win32\\Release<\/em><\/strong> folder for the Release mode and in the <strong><em>\\public\\lib\\win32\\Debug<\/em><\/strong> folder for the Debug mode.<\/p>\n<p class=\"note\">If you want to open the Visual Studio solution files, go to the <strong><em>output<\/em><\/strong><strong>\\<\/strong><strong><em>build_dir_Win32<\/em><\/strong> folder and open <span class=\"emph\"><em>xAFLibraries.sln <\/em><\/span>with administrator privileges.<\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">To generate and build a Visual Studio project for the Win64 platform:<\/p>\n<ol class=\"text\">\n<li>Release mode, type <strong>build.py &#8211;platform=WinPc &#8211;target=Win64 &#8211;profile=Release<\/strong><\/li>\n<li>Debug mode, type <strong>build.py &#8211;platform=WinPc &#8211;target=Win64 &#8211;profile=Debug<\/strong><\/li>\n<\/ol>\n<p class=\"result\">xAF libraries and external objects libraries will be generated in the <strong><em>\\public\\lib\\win64\\Release<\/em><\/strong> folder for the Release mode and in the <strong><em>\\public\\lib\\win64\\Debug<\/em><\/strong> folder for the Debug mode.<\/p>\n<p class=\"note\">If you want to open the Visual Studio solution files, go to the <strong><em>output<\/em><\/strong><strong><em>\\<\/em><\/strong><strong><em>build_dir_Win64<\/em><\/strong> folder and open <em>xAFLibraries.sln<\/em> with administrator privileges.<\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">To run the xAF unit test:<\/p>\n<ol class=\"text\">\n<li>Release mode, type <strong>build.py &#8211;platform=WinPc &#8211;target=Win32 &#8211;profile=Release &#8211;program=unitTest<\/strong><\/li>\n<li>Debug mode, type <strong>build.py &#8211;platform=WinPc &#8211;target=Win32 &#8211;profile=Debug &#8211;program=unitTest<\/strong><\/li>\n<\/ol>\n<p class=\"note\">Unit tests are not currently supported on the Win64 platform.<\/p>\n<p class=\"action-group\">To clean the build artifacts<\/p>\n<p class=\"actions\" style=\"margin-top: 0px; text-indent: 0.2cm;\">Type <strong>build.py &#8211;platform=WinPc \u2013clean<\/strong><\/p>\n<p class=\"note\">The xAF has tested the solution file using Microsoft Visual Studio 2015 Professional. Older versions may not work.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Visual Studio sln file, xAFVirtualAmp.sln, is generated and built by Python using cmake. Be sure you install Python 2.7 and add the installed location to the \u201cPaths\u201d environment variable under System Properties. Configure a Build By default, the solution virtual device wrapper is configured to work with one instance. If you would like to [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ocean_post_layout":"","ocean_both_sidebars_style":"","ocean_both_sidebars_content_width":0,"ocean_both_sidebars_sidebars_width":0,"ocean_sidebar":"0","ocean_second_sidebar":"0","ocean_disable_margins":"enable","ocean_add_body_class":"","ocean_shortcode_before_top_bar":"","ocean_shortcode_after_top_bar":"","ocean_shortcode_before_header":"","ocean_shortcode_after_header":"","ocean_has_shortcode":"","ocean_shortcode_after_title":"","ocean_shortcode_before_footer_widgets":"","ocean_shortcode_after_footer_widgets":"","ocean_shortcode_before_footer_bottom":"","ocean_shortcode_after_footer_bottom":"","ocean_display_top_bar":"default","ocean_display_header":"default","ocean_header_style":"","ocean_center_header_left_menu":"0","ocean_custom_header_template":"0","ocean_custom_logo":0,"ocean_custom_retina_logo":0,"ocean_custom_logo_max_width":0,"ocean_custom_logo_tablet_max_width":0,"ocean_custom_logo_mobile_max_width":0,"ocean_custom_logo_max_height":0,"ocean_custom_logo_tablet_max_height":0,"ocean_custom_logo_mobile_max_height":0,"ocean_header_custom_menu":"0","ocean_menu_typo_font_family":"0","ocean_menu_typo_font_subset":"","ocean_menu_typo_font_size":0,"ocean_menu_typo_font_size_tablet":0,"ocean_menu_typo_font_size_mobile":0,"ocean_menu_typo_font_size_unit":"px","ocean_menu_typo_font_weight":"","ocean_menu_typo_font_weight_tablet":"","ocean_menu_typo_font_weight_mobile":"","ocean_menu_typo_transform":"","ocean_menu_typo_transform_tablet":"","ocean_menu_typo_transform_mobile":"","ocean_menu_typo_line_height":0,"ocean_menu_typo_line_height_tablet":0,"ocean_menu_typo_line_height_mobile":0,"ocean_menu_typo_line_height_unit":"","ocean_menu_typo_spacing":0,"ocean_menu_typo_spacing_tablet":0,"ocean_menu_typo_spacing_mobile":0,"ocean_menu_typo_spacing_unit":"","ocean_menu_link_color":"","ocean_menu_link_color_hover":"","ocean_menu_link_color_active":"","ocean_menu_link_background":"","ocean_menu_link_hover_background":"","ocean_menu_link_active_background":"","ocean_menu_social_links_bg":"","ocean_menu_social_hover_links_bg":"","ocean_menu_social_links_color":"","ocean_menu_social_hover_links_color":"","ocean_disable_title":"default","ocean_disable_heading":"default","ocean_post_title":"","ocean_post_subheading":"","ocean_post_title_style":"","ocean_post_title_background_color":"","ocean_post_title_background":0,"ocean_post_title_bg_image_position":"","ocean_post_title_bg_image_attachment":"","ocean_post_title_bg_image_repeat":"","ocean_post_title_bg_image_size":"","ocean_post_title_height":0,"ocean_post_title_bg_overlay":0.5,"ocean_post_title_bg_overlay_color":"","ocean_disable_breadcrumbs":"default","ocean_breadcrumbs_color":"","ocean_breadcrumbs_separator_color":"","ocean_breadcrumbs_links_color":"","ocean_breadcrumbs_links_hover_color":"","ocean_display_footer_widgets":"default","ocean_display_footer_bottom":"default","ocean_custom_footer_template":"0","footnotes":"","ocean_post_oembed":"","ocean_post_self_hosted_media":"","ocean_post_video_embed":"","ocean_link_format":"","ocean_link_format_target":"self","ocean_quote_format":"","ocean_quote_format_link":"post","ocean_gallery_link_images":"off","ocean_gallery_id":[]},"categories":[54,10],"tags":[56],"coauthors":[165],"_links":{"self":[{"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=\/wp\/v2\/posts\/3938"}],"collection":[{"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3938"}],"version-history":[{"count":8,"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=\/wp\/v2\/posts\/3938\/revisions"}],"predecessor-version":[{"id":14401,"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=\/wp\/v2\/posts\/3938\/revisions\/14401"}],"wp:attachment":[{"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3938"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3938"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3938"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/audioworx.transfunnel.co\/old\/index.php?rest_route=%2Fwp%2Fv2%2Fcoauthors&post=3938"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}